Skip to content

Commit 42cf2b8

Browse files
authored
Changed queue-label-key default to kai.scheduler/queue in Queue Controller deployment (#243)
1 parent ffda8e2 commit 42cf2b8

File tree

7 files changed

+34
-33
lines changed

7 files changed

+34
-33
lines changed

cmd/queuecontroller/app/app.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ package app
66
import (
77
"flag"
88

9-
enginev2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
10-
kubeAiSchedulerv2alpha2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
119
"go.uber.org/zap/zapcore"
1210

11+
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
12+
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
13+
1314
// Import all Kubernetes client auth plugins (e.g. Azure, GCP, OIDC, etc.)
1415
// to ensure that exec-entrypoint and run can make use of them.
1516
_ "k8s.io/client-go/plugin/pkg/client/auth"
@@ -35,8 +36,8 @@ var (
3536
func init() {
3637
utilruntime.Must(clientgoscheme.AddToScheme(scheme))
3738

38-
utilruntime.Must(enginev2.AddToScheme(scheme))
39-
utilruntime.Must(kubeAiSchedulerv2alpha2.AddToScheme(scheme))
39+
utilruntime.Must(v2.AddToScheme(scheme))
40+
utilruntime.Must(v2alpha2.AddToScheme(scheme))
4041
// +kubebuilder:scaffold:scheme
4142
}
4243

@@ -59,7 +60,7 @@ func Run() error {
5960
return nil
6061
}
6162

62-
if err = (&enginev2.Queue{}).SetupWebhookWithManager(mgr); err != nil {
63+
if err = (&v2.Queue{}).SetupWebhookWithManager(mgr); err != nil {
6364
setupLog.Error(err, "unable to create webhook for queue v2", "webhook", "Queue")
6465
return nil
6566
}

cmd/queuecontroller/app/options.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ type Options struct {
1414

1515
func (o *Options) AddFlags(fs *flag.FlagSet) {
1616
fs.BoolVar(&o.EnableLeaderElection, "leader-elect", false, "Enable leader election for controller manager. Enabling this will ensure there is only one active controller manager.")
17-
fs.StringVar(&o.SchedulingQueueLabelKey, "queue-label-key", "runai/queue", "Scheduling queue label key name")
17+
fs.StringVar(&o.SchedulingQueueLabelKey, "queue-label-key", "kai.scheduler/queue", "Scheduling queue label key name")
1818
}

pkg/queuecontroller/controllers/childqueues_updater/childqueues_updater.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ import (
77
"context"
88
"fmt"
99

10+
"sigs.k8s.io/controller-runtime/pkg/client"
11+
1012
v2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
1113
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/common"
12-
"sigs.k8s.io/controller-runtime/pkg/client"
1314
)
1415

1516
type ChildQueuesUpdater struct {

pkg/queuecontroller/controllers/childqueues_updater/childqueues_updater_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,13 @@ import (
77
"context"
88
"testing"
99

10-
v2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
1110
"github.com/stretchr/testify/assert"
1211
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1312
"k8s.io/apimachinery/pkg/runtime"
1413
"sigs.k8s.io/controller-runtime/pkg/client"
1514
"sigs.k8s.io/controller-runtime/pkg/client/fake"
15+
16+
v2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
1617
)
1718

1819
func TestUpdateQueueChildren(t *testing.T) {

pkg/queuecontroller/controllers/queue_controller.go

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,19 @@ import (
77
"context"
88
"fmt"
99

10-
enginev2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
11-
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
12-
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/common"
13-
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/controllers/childqueues_updater"
14-
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/controllers/resource_updater"
1510
"k8s.io/apimachinery/pkg/runtime"
1611
"k8s.io/apimachinery/pkg/types"
1712
ctrl "sigs.k8s.io/controller-runtime"
1813
"sigs.k8s.io/controller-runtime/pkg/client"
1914
"sigs.k8s.io/controller-runtime/pkg/handler"
2015
"sigs.k8s.io/controller-runtime/pkg/log"
2116
"sigs.k8s.io/controller-runtime/pkg/reconcile"
17+
18+
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
19+
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
20+
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/common"
21+
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/controllers/childqueues_updater"
22+
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/controllers/resource_updater"
2223
)
2324

2425
// QueueReconciler reconciles a Queue object
@@ -50,7 +51,7 @@ func (r *QueueReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl
5051

5152
logger.V(1).Info("Reconcile for queue", "queue name", req.Name)
5253

53-
queue := &enginev2.Queue{}
54+
queue := &v2.Queue{}
5455
err := r.Get(ctx, req.NamespacedName, queue)
5556
if err != nil {
5657
return ctrl.Result{}, err
@@ -77,7 +78,7 @@ func (r *QueueReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl
7778

7879
// SetupWithManager sets up the controller with the Manager.
7980
func (r *QueueReconciler) SetupWithManager(mgr ctrl.Manager, queueLabelKey string) error {
80-
err := mgr.GetFieldIndexer().IndexField(context.Background(), &enginev2.Queue{}, common.ParentQueueIndexName,
81+
err := mgr.GetFieldIndexer().IndexField(context.Background(), &v2.Queue{}, common.ParentQueueIndexName,
8182
indexQueueByParent)
8283
if err != nil {
8384
return fmt.Errorf("failed to setup queue parent indexer: %v", err)
@@ -92,24 +93,24 @@ func (r *QueueReconciler) SetupWithManager(mgr ctrl.Manager, queueLabelKey strin
9293
}
9394

9495
return ctrl.NewControllerManagedBy(mgr).
95-
For(&enginev2.Queue{}).
96-
Watches(&enginev2.Queue{},
96+
For(&v2.Queue{}).
97+
Watches(&v2.Queue{},
9798
handler.EnqueueRequestsFromMapFunc(enqueueQueue)).
9899
Watches(&v2alpha2.PodGroup{},
99100
handler.EnqueueRequestsFromMapFunc(enqueuePodGroup)).
100101
Complete(r)
101102
}
102103

103104
func indexQueueByParent(object client.Object) []string {
104-
queue := object.(*enginev2.Queue)
105+
queue := object.(*v2.Queue)
105106
if queue.Spec.ParentQueue == "" {
106107
return []string{}
107108
}
108109
return []string{queue.Spec.ParentQueue}
109110
}
110111

111112
func enqueueQueue(_ context.Context, q client.Object) []reconcile.Request {
112-
queue, ok := q.(*enginev2.Queue)
113+
queue, ok := q.(*v2.Queue)
113114
if !ok {
114115
return []reconcile.Request{}
115116
}

pkg/queuecontroller/controllers/resource_updater/resource_updater.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,15 @@ import (
77
"context"
88
"fmt"
99

10+
v1 "k8s.io/api/core/v1"
11+
"sigs.k8s.io/controller-runtime/pkg/client"
12+
1013
v2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
1114
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
1215
"github.com/NVIDIA/KAI-scheduler/pkg/common/resources"
1316
"github.com/NVIDIA/KAI-scheduler/pkg/queuecontroller/common"
14-
v1 "k8s.io/api/core/v1"
15-
"sigs.k8s.io/controller-runtime/pkg/client"
1617
)
1718

18-
// +kubebuilder:rbac:groups=scheduling.run.ai,resources=queues,verbs=get;list;watch
19-
// +kubebuilder:rbac:groups=scheduling.run.ai,resources=queues/status,verbs=get;update;patch
20-
// +kubebuilder:rbac:groups=scheduling.run.ai,resources=podgroups,verbs=get;list
21-
2219
type ResourceUpdater struct {
2320
client.Client
2421
QueueLabelKey string

pkg/queuecontroller/controllers/resource_updater/resource_udpater_test.go renamed to pkg/queuecontroller/controllers/resource_updater/resource_updater_test.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,16 @@ import (
77
"context"
88
"testing"
99

10-
v2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
11-
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
1210
"github.com/stretchr/testify/assert"
13-
v12 "k8s.io/apimachinery/pkg/apis/meta/v1"
14-
"k8s.io/apimachinery/pkg/runtime"
15-
1611
v1 "k8s.io/api/core/v1"
1712
"k8s.io/apimachinery/pkg/api/resource"
13+
v12 "k8s.io/apimachinery/pkg/apis/meta/v1"
14+
"k8s.io/apimachinery/pkg/runtime"
1815
"sigs.k8s.io/controller-runtime/pkg/client"
1916
"sigs.k8s.io/controller-runtime/pkg/client/fake"
17+
18+
v2 "github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2"
19+
"github.com/NVIDIA/KAI-scheduler/pkg/apis/scheduling/v2alpha2"
2020
)
2121

2222
const (
@@ -28,7 +28,7 @@ func TestUpdateQueue_PodGroupsOnly(t *testing.T) {
2828
&v2alpha2.PodGroup{
2929
ObjectMeta: v12.ObjectMeta{
3030
Name: "podgroup1",
31-
Namespace: "runai-proj-1",
31+
Namespace: "proj-1",
3232
Labels: map[string]string{
3333
queueLabelName: "queue-name",
3434
},
@@ -56,7 +56,7 @@ func TestUpdateQueue_PodGroupsOnly(t *testing.T) {
5656
&v2alpha2.PodGroup{
5757
ObjectMeta: v12.ObjectMeta{
5858
Name: "podgroup2",
59-
Namespace: "runai-proj-1",
59+
Namespace: "proj-1",
6060
Labels: map[string]string{
6161
queueLabelName: "queue-name",
6262
},
@@ -81,7 +81,7 @@ func TestUpdateQueue_PodGroupsOnly(t *testing.T) {
8181
&v2alpha2.PodGroup{
8282
ObjectMeta: v12.ObjectMeta{
8383
Name: "podgroup3",
84-
Namespace: "runai-proj-1",
84+
Namespace: "proj-1",
8585
Labels: map[string]string{
8686
queueLabelName: "not-queue-name",
8787
},

0 commit comments

Comments
 (0)