From 305d79fcd337b57b3b9c4b203134232dee98a8c7 Mon Sep 17 00:00:00 2001 From: Olivier Tardieu Date: Sun, 19 May 2024 12:54:00 -0400 Subject: [PATCH] Add option to inject queue name if missing --- internal/webhook/appwrapper_webhook.go | 7 +++++++ pkg/config/config.go | 1 + 2 files changed, 8 insertions(+) diff --git a/internal/webhook/appwrapper_webhook.go b/internal/webhook/appwrapper_webhook.go index a96a645..41e9668 100644 --- a/internal/webhook/appwrapper_webhook.go +++ b/internal/webhook/appwrapper_webhook.go @@ -48,6 +48,7 @@ import ( const ( AppWrapperUsernameLabel = "workload.codeflare.dev/user" AppWrapperUserIDLabel = "workload.codeflare.dev/userid" + QueueNameLabel = "kueue.x-k8s.io/queue-name" ) type AppWrapperWebhook struct { @@ -81,6 +82,12 @@ func (w *AppWrapperWebhook) Default(ctx context.Context, obj runtime.Object) err userInfo := request.UserInfo username := utils.SanitizeLabel(userInfo.Username) aw.Labels = utilmaps.MergeKeepFirst(map[string]string{AppWrapperUsernameLabel: username, AppWrapperUserIDLabel: userInfo.UID}, aw.Labels) + + // inject default queue name if missing from appwrapper and configured on controller + if w.Config.QueueName != "" && aw.Annotations[QueueNameLabel] == "" && aw.Labels[QueueNameLabel] == "" { + aw.Labels[QueueNameLabel] = w.Config.QueueName + } + return nil } diff --git a/pkg/config/config.go b/pkg/config/config.go index b540d24..27e1fb5 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -35,6 +35,7 @@ type AppWrapperConfig struct { UserRBACAdmissionCheck bool `json:"userRBACAdmissionCheck,omitempty"` FaultTolerance *FaultToleranceConfig `json:"faultTolerance,omitempty"` SchedulerName string `json:"schedulerName,omitempty"` + QueueName string `json:"queueName,omitempty"` } type FaultToleranceConfig struct {