Skip to content

Commit

Permalink
Add kep for LQ defauling
Browse files Browse the repository at this point in the history
  • Loading branch information
yaroslava-serdiuk committed Nov 27, 2024
1 parent 4bbddce commit dbbc994
Show file tree
Hide file tree
Showing 2 changed files with 97 additions and 0 deletions.
65 changes: 65 additions & 0 deletions keps/2936-local-queue-defaulting/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# KEP-2936: LocalQueue defaulting

<!-- toc -->
- [Summary](#summary)
- [Motivation](#motivation)
- [Goals](#goals)
- [Non-Goals](#non-goals)
- [Proposal](#proposal)
- [User Stories](#user-stories)
- [Story 1](#story-1)
- [Notes/Constraints/Caveats (Optional)](#notesconstraintscaveats-optional)
- [Risks and Mitigations](#risks-and-mitigations)
- [Design Details](#design-details)
- [Test Plan](#test-plan)
<!-- /toc -->

## Summary

This KEP introduces a defaulting LocalQueue mechanism for the jobs that don't have
LocalQueue name label specified.

## Motivation

Simplify user experience with Kueue.

### Goals

- default LocalQueue for jobs that don't specify LocalQueue name label.

### Non-Goals

- create a default LocalQueue.

## Proposal

If the Job doesn't have label for LocalQueue in its Spec and the LocalQueue
with name `default` is present in Job's namespace and KueueDefaulting feature gate
is enabled, the `kueue.x-k8s.io/queue-name:default` anotation will be added to the Job.

The `default` LocalQueue itself should be created manually by administrator.

### User Stories

#### Story 1

Administrator createds a single `default` LocalQueue per namespace. Users doesn't need to specify
the LocalQueue label in order for workload to be scheduled.

### Notes/Constraints/Caveats (Optional)

manageJobsWithoutQueueName doesn't work with this feature, since Kueue add the LocalQueue
label.

### Risks and Mitigations

## Design Details

Update defautling webhook for all types of job to add `kueue.x-k8s.io/queue-name:default`
label if the label is not present and the feature gate is enabled.

### Test Plan

[x] I/we understand the owners of the involved components may require updates to
existing tests to make this code solid enough prior to committing the changes
necessary to implement this enhancement.
32 changes: 32 additions & 0 deletions keps/2936-local-queue-defaulting/kep.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
title: LocalQueue defaulting
kep-number: 2936
authors:
- "@yaroslava-serdiuk"
status: implementable
creation-date: 2024-11-25
reviewers:
- "@pbundyra"
- "@mwielgus"
- "@mimowo"
approvers:
- "@mimowo"

# The target maturity stage in the current dev cycle for this KEP.
stage: alpha

# The most recent milestone for which work toward delivery of this KEP has been
# done. This can be the current (upcoming) milestone, if it is being actively
# worked on.
latest-milestone: "v0.9"

# The milestone at which this feature was, or is targeted to be, at each stage.
milestone:
alpha: "v0.9"
beta:
stable:

# The following PRR answers are required at alpha release
# List the feature gate name and the components for which it must be enabled
feature-gates:
- name: KueueDefaulting
disable-supported: true

0 comments on commit dbbc994

Please sign in to comment.