Skip to content

Commit c91ba50

Browse files
committed
fix: use NamespacedName instead of ObjectReference
1 parent e528f66 commit c91ba50

8 files changed

Lines changed: 25 additions & 28 deletions

internal/scheduling/lib/weigher.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ import (
99
"fmt"
1010

1111
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
12-
corev1 "k8s.io/api/core/v1"
1312
"k8s.io/apimachinery/pkg/api/meta"
13+
"k8s.io/apimachinery/pkg/types"
1414
"sigs.k8s.io/controller-runtime/pkg/client"
1515
)
1616

@@ -34,16 +34,13 @@ func (s *BaseWeigher[RequestType, Opts]) Init(ctx context.Context, client client
3434
}
3535

3636
// Check if all knowledges are ready, and if not, return an error indicating why not.
37-
func (d *BaseFilterWeigherPipelineStep[RequestType, Opts]) CheckKnowledges(ctx context.Context, kns ...corev1.ObjectReference) error {
37+
func (d *BaseFilterWeigherPipelineStep[RequestType, Opts]) CheckKnowledges(ctx context.Context, kns ...types.NamespacedName) error {
3838
if d.Client == nil {
3939
return errors.New("kubernetes client not initialized")
4040
}
4141
for _, objRef := range kns {
4242
knowledge := &v1alpha1.Knowledge{}
43-
if err := d.Client.Get(ctx, client.ObjectKey{
44-
Name: objRef.Name,
45-
Namespace: objRef.Namespace,
46-
}, knowledge); err != nil {
43+
if err := d.Client.Get(ctx, objRef, knowledge); err != nil {
4744
return fmt.Errorf("failed to get knowledge %s: %w", objRef.Name, err)
4845
}
4946
// Check if the knowledge status conditions indicate an error.

internal/scheduling/lib/weigher_test.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import (
99
"testing"
1010

1111
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
12-
corev1 "k8s.io/api/core/v1"
1312
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1413
"k8s.io/apimachinery/pkg/runtime"
14+
"k8s.io/apimachinery/pkg/types"
1515
"sigs.k8s.io/controller-runtime/pkg/client"
1616
"sigs.k8s.io/controller-runtime/pkg/client/fake"
1717
)
@@ -106,7 +106,7 @@ func TestBaseFilterWeigherPipelineStep_CheckKnowledges(t *testing.T) {
106106
tests := []struct {
107107
name string
108108
knowledges []v1alpha1.Knowledge
109-
refs []corev1.ObjectReference
109+
refs []types.NamespacedName
110110
expectError bool
111111
errorMsg string
112112
}{
@@ -129,15 +129,15 @@ func TestBaseFilterWeigherPipelineStep_CheckKnowledges(t *testing.T) {
129129
},
130130
},
131131
},
132-
refs: []corev1.ObjectReference{
132+
refs: []types.NamespacedName{
133133
{Name: "knowledge1", Namespace: "default"},
134134
},
135135
expectError: false,
136136
},
137137
{
138138
name: "knowledge not found",
139139
knowledges: []v1alpha1.Knowledge{},
140-
refs: []corev1.ObjectReference{
140+
refs: []types.NamespacedName{
141141
{Name: "missing-knowledge", Namespace: "default"},
142142
},
143143
expectError: true,
@@ -162,7 +162,7 @@ func TestBaseFilterWeigherPipelineStep_CheckKnowledges(t *testing.T) {
162162
},
163163
},
164164
},
165-
refs: []corev1.ObjectReference{
165+
refs: []types.NamespacedName{
166166
{Name: "knowledge1", Namespace: "default"},
167167
},
168168
expectError: true,
@@ -187,7 +187,7 @@ func TestBaseFilterWeigherPipelineStep_CheckKnowledges(t *testing.T) {
187187
},
188188
},
189189
},
190-
refs: []corev1.ObjectReference{
190+
refs: []types.NamespacedName{
191191
{Name: "knowledge1", Namespace: "default"},
192192
},
193193
expectError: true,
@@ -196,7 +196,7 @@ func TestBaseFilterWeigherPipelineStep_CheckKnowledges(t *testing.T) {
196196
{
197197
name: "empty knowledge list",
198198
knowledges: []v1alpha1.Knowledge{},
199-
refs: []corev1.ObjectReference{},
199+
refs: []types.NamespacedName{},
200200
expectError: false,
201201
},
202202
}
@@ -235,7 +235,7 @@ func TestBaseFilterWeigherPipelineStep_CheckKnowledges_NilClient(t *testing.T) {
235235
Client: nil,
236236
}
237237

238-
err := step.CheckKnowledges(t.Context(), corev1.ObjectReference{Name: "test", Namespace: "default"})
238+
err := step.CheckKnowledges(t.Context(), types.NamespacedName{Name: "test", Namespace: "default"})
239239

240240
if err == nil {
241241
t.Error("expected error for nil client but got nil")

internal/scheduling/manila/plugins/weighers/netapp_cpu_usage_balancing.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
1313
"github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/storage"
1414
"github.com/cobaltcore-dev/cortex/internal/scheduling/lib"
15-
corev1 "k8s.io/api/core/v1"
15+
"k8s.io/apimachinery/pkg/types"
1616
"sigs.k8s.io/controller-runtime/pkg/client"
1717
)
1818

@@ -54,7 +54,7 @@ func (s *NetappCPUUsageBalancingStep) Init(ctx context.Context, client client.Cl
5454
if err := s.BaseWeigher.Init(ctx, client, weigher); err != nil {
5555
return err
5656
}
57-
if err := s.CheckKnowledges(ctx, corev1.ObjectReference{Name: "netapp-storage-pool-cpu-usage-manila"}); err != nil {
57+
if err := s.CheckKnowledges(ctx, types.NamespacedName{Name: "netapp-storage-pool-cpu-usage-manila"}); err != nil {
5858
return err
5959
}
6060
return nil

internal/scheduling/nova/plugins/weighers/vmware_anti_affinity_noisy_projects.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
1313
"github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute"
1414
"github.com/cobaltcore-dev/cortex/internal/scheduling/lib"
15-
corev1 "k8s.io/api/core/v1"
15+
"k8s.io/apimachinery/pkg/types"
1616
"sigs.k8s.io/controller-runtime/pkg/client"
1717
)
1818

@@ -45,7 +45,7 @@ func (s *VMwareAntiAffinityNoisyProjectsStep) Init(ctx context.Context, client c
4545
if err := s.BaseWeigher.Init(ctx, client, weigher); err != nil {
4646
return err
4747
}
48-
if err := s.CheckKnowledges(ctx, corev1.ObjectReference{Name: "vmware-project-noisiness"}); err != nil {
48+
if err := s.CheckKnowledges(ctx, types.NamespacedName{Name: "vmware-project-noisiness"}); err != nil {
4949
return err
5050
}
5151
return nil

internal/scheduling/nova/plugins/weighers/vmware_avoid_long_term_contended_hosts.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
1313
"github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute"
1414
"github.com/cobaltcore-dev/cortex/internal/scheduling/lib"
15-
corev1 "k8s.io/api/core/v1"
15+
"k8s.io/apimachinery/pkg/types"
1616
"sigs.k8s.io/controller-runtime/pkg/client"
1717
)
1818

@@ -54,7 +54,7 @@ func (s *VMwareAvoidLongTermContendedHostsStep) Init(ctx context.Context, client
5454
if err := s.BaseWeigher.Init(ctx, client, weigher); err != nil {
5555
return err
5656
}
57-
if err := s.CheckKnowledges(ctx, corev1.ObjectReference{Name: "vmware-long-term-contended-hosts"}); err != nil {
57+
if err := s.CheckKnowledges(ctx, types.NamespacedName{Name: "vmware-long-term-contended-hosts"}); err != nil {
5858
return err
5959
}
6060
return nil

internal/scheduling/nova/plugins/weighers/vmware_avoid_short_term_contended_hosts.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
1313
"github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute"
1414
"github.com/cobaltcore-dev/cortex/internal/scheduling/lib"
15-
corev1 "k8s.io/api/core/v1"
15+
"k8s.io/apimachinery/pkg/types"
1616
"sigs.k8s.io/controller-runtime/pkg/client"
1717
)
1818

@@ -54,7 +54,7 @@ func (s *VMwareAvoidShortTermContendedHostsStep) Init(ctx context.Context, clien
5454
if err := s.BaseWeigher.Init(ctx, client, weigher); err != nil {
5555
return err
5656
}
57-
if err := s.CheckKnowledges(ctx, corev1.ObjectReference{Name: "vmware-short-term-contended-hosts"}); err != nil {
57+
if err := s.CheckKnowledges(ctx, types.NamespacedName{Name: "vmware-short-term-contended-hosts"}); err != nil {
5858
return err
5959
}
6060
return nil

internal/scheduling/nova/plugins/weighers/vmware_general_purpose_balancing.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import (
1313
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
1414
"github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute"
1515
"github.com/cobaltcore-dev/cortex/internal/scheduling/lib"
16-
corev1 "k8s.io/api/core/v1"
16+
"k8s.io/apimachinery/pkg/types"
1717
"sigs.k8s.io/controller-runtime/pkg/client"
1818
)
1919

@@ -45,8 +45,8 @@ func (s *VMwareGeneralPurposeBalancingStep) Init(ctx context.Context, client cli
4545
return err
4646
}
4747
if err := s.CheckKnowledges(ctx,
48-
corev1.ObjectReference{Name: "host-utilization"},
49-
corev1.ObjectReference{Name: "host-capabilities"},
48+
types.NamespacedName{Name: "host-utilization"},
49+
types.NamespacedName{Name: "host-capabilities"},
5050
); err != nil {
5151
return err
5252
}

internal/scheduling/nova/plugins/weighers/vmware_hana_binpacking.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import (
1313
"github.com/cobaltcore-dev/cortex/api/v1alpha1"
1414
"github.com/cobaltcore-dev/cortex/internal/knowledge/extractor/plugins/compute"
1515
"github.com/cobaltcore-dev/cortex/internal/scheduling/lib"
16-
corev1 "k8s.io/api/core/v1"
16+
"k8s.io/apimachinery/pkg/types"
1717
"sigs.k8s.io/controller-runtime/pkg/client"
1818
)
1919

@@ -45,8 +45,8 @@ func (s *VMwareHanaBinpackingStep) Init(ctx context.Context, client client.Clien
4545
return err
4646
}
4747
if err := s.CheckKnowledges(ctx,
48-
corev1.ObjectReference{Name: "host-utilization"},
49-
corev1.ObjectReference{Name: "host-capabilities"},
48+
types.NamespacedName{Name: "host-utilization"},
49+
types.NamespacedName{Name: "host-capabilities"},
5050
); err != nil {
5151
return err
5252
}

0 commit comments

Comments
 (0)