Skip to content

Commit 35f1adc

Browse files
committed
make ResourceGraphDefinition cluster-scoped
Make `ResourceGraphDefinition` a cluster-scoped resource instead of namespace-scoped: - Add `scope=Cluster` to RGD kubebuilder resource marker - Regenerate CRD - Remove namespace field and related code from tests and generators - Update test cases to use non namespacde resource names
1 parent 26fe7c1 commit 35f1adc

File tree

18 files changed

+34
-89
lines changed

18 files changed

+34
-89
lines changed

api/v1alpha1/types.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ type Dependency struct {
141141
// +kubebuilder:printcolumn:name="STATE",type=string,priority=0,JSONPath=`.status.state`
142142
// +kubebuilder:printcolumn:name="TOPOLOGICALORDER",type=string,priority=1,JSONPath=`.status.topologicalOrder`
143143
// +kubebuilder:printcolumn:name="AGE",type="date",priority=0,JSONPath=".metadata.creationTimestamp"
144-
// +kubebuilder:resource:shortName=rgd
144+
// +kubebuilder:resource:shortName=rgd,scope=Cluster
145145

146146
// ResourceGraphDefinition is the Schema for the resourcegraphdefinitions API
147147
type ResourceGraphDefinition struct {

api/v1alpha1/zz_generated.deepcopy.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

config/crd/bases/kro.run_resourcegraphdefinitions.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ spec:
1414
shortNames:
1515
- rgd
1616
singular: resourcegraphdefinition
17-
scope: Namespaced
17+
scope: Cluster
1818
versions:
1919
- additionalPrinterColumns:
2020
- jsonPath: .spec.schema.apiVersion

helm/crds/kro.run_resourcegraphdefinitions.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ spec:
1414
shortNames:
1515
- rgd
1616
singular: resourcegraphdefinition
17-
scope: Namespaced
17+
scope: Cluster
1818
versions:
1919
- additionalPrinterColumns:
2020
- jsonPath: .spec.schema.apiVersion

pkg/testutil/generator/resourcegraphdefinition.go

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,6 @@ func NewResourceGraphDefinition(name string, opts ...ResourceGraphDefinitionOpti
4040
return rgd
4141
}
4242

43-
// WithNamespace sets the namespace of the ResourceGraphDefinition
44-
func WithNamespace(namespace string) ResourceGraphDefinitionOption {
45-
return func(rgd *krov1alpha1.ResourceGraphDefinition) {
46-
rgd.Namespace = namespace
47-
}
48-
}
49-
5043
// WithSchema sets the definition and status of the ResourceGraphDefinition
5144
func WithSchema(kind, version string, spec, status map[string]interface{}) ResourceGraphDefinitionOption {
5245
rawSpec, err := json.Marshal(spec)

test/integration/suites/ackekscluster/generator.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ func eksCluster(
2828
func(namespace, name, version string) *unstructured.Unstructured,
2929
) {
3030
resourcegraphdefinition := generator.NewResourceGraphDefinition(name,
31-
generator.WithNamespace(namespace),
3231
generator.WithSchema(
3332
"EKSCluster", "v1alpha1",
3433
map[string]interface{}{

test/integration/suites/core/conditional_test.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ var _ = Describe("Conditions", func() {
5353

5454
It("should not create deployment, service, and configmap due to condition deploymentEnabled == false", func() {
5555
rgd := generator.NewResourceGraphDefinition("test-conditions",
56-
generator.WithNamespace(namespace),
5756
generator.WithSchema(
5857
"TestConditions", "v1alpha1",
5958
map[string]interface{}{
@@ -202,8 +201,7 @@ var _ = Describe("Conditions", func() {
202201
createdRGD := &krov1alpha1.ResourceGraphDefinition{}
203202
Eventually(func(g Gomega) {
204203
err := env.Client.Get(ctx, types.NamespacedName{
205-
Name: rgd.Name,
206-
Namespace: namespace,
204+
Name: rgd.Name,
207205
}, createdRGD)
208206
g.Expect(err).ToNot(HaveOccurred())
209207

@@ -354,8 +352,7 @@ var _ = Describe("Conditions", func() {
354352
// Verify ResourceGraphDefinition is deleted
355353
Eventually(func() bool {
356354
err := env.Client.Get(ctx, types.NamespacedName{
357-
Name: rgd.Name,
358-
Namespace: namespace,
355+
Name: rgd.Name,
359356
}, &krov1alpha1.ResourceGraphDefinition{})
360357
return errors.IsNotFound(err)
361358
}, 20*time.Second, time.Second).Should(BeTrue())

test/integration/suites/core/crd_test.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ var _ = Describe("CRD", func() {
5050
It("should create CRD when ResourceGraphDefinition is created", func() {
5151
// Create a simple ResourceGraphDefinition
5252
rgd := generator.NewResourceGraphDefinition("test-crd",
53-
generator.WithNamespace(namespace),
5453
generator.WithSchema(
5554
"TestResource", "v1alpha1",
5655
map[string]interface{}{
@@ -100,7 +99,6 @@ var _ = Describe("CRD", func() {
10099
It("should update CRD when ResourceGraphDefinition is updated", func() {
101100
// Create initial ResourceGraphDefinition
102101
rgd := generator.NewResourceGraphDefinition("test-crd-update",
103-
generator.WithNamespace(namespace),
104102
generator.WithSchema(
105103
"TestUpdate", "v1alpha1",
106104
map[string]interface{}{
@@ -123,8 +121,7 @@ var _ = Describe("CRD", func() {
123121
// Update ResourceGraphDefinition with new fields
124122
Eventually(func(g Gomega) {
125123
err := env.Client.Get(ctx, types.NamespacedName{
126-
Name: rgd.Name,
127-
Namespace: namespace,
124+
Name: rgd.Name,
128125
}, rgd)
129126
g.Expect(err).ToNot(HaveOccurred())
130127

@@ -154,7 +151,6 @@ var _ = Describe("CRD", func() {
154151
It("should delete CRD when ResourceGraphDefinition is deleted", func() {
155152
// Create ResourceGraphDefinition
156153
rgd := generator.NewResourceGraphDefinition("test-crd-delete",
157-
generator.WithNamespace(namespace),
158154
generator.WithSchema(
159155
"TestDelete", "v1alpha1",
160156
map[string]interface{}{

test/integration/suites/core/lifecycle_test.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ var _ = Describe("Update", func() {
4747

4848
// Create ResourceGraphDefinition for a simple deployment service
4949
rgd := generator.NewResourceGraphDefinition("test-update",
50-
generator.WithNamespace(namespace),
5150
generator.WithSchema(
5251
"TestUpdate", "v1alpha1",
5352
map[string]interface{}{
@@ -100,8 +99,7 @@ var _ = Describe("Update", func() {
10099
createdRGD := &krov1alpha1.ResourceGraphDefinition{}
101100
Eventually(func(g Gomega) {
102101
err := env.Client.Get(ctx, types.NamespacedName{
103-
Name: rgd.Name,
104-
Namespace: namespace,
102+
Name: rgd.Name,
105103
}, createdRGD)
106104
g.Expect(err).ToNot(HaveOccurred())
107105
g.Expect(createdRGD.Status.State).To(Equal(krov1alpha1.ResourceGraphDefinitionStateActive))

test/integration/suites/core/readiness_test.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ var _ = Describe("Readiness", func() {
5454
It(`should wait for deployment to have deployment.spec.replicas
5555
== deployment.status.availableReplicas before creating service`, func() {
5656
rgd := generator.NewResourceGraphDefinition("test-readiness",
57-
generator.WithNamespace(namespace),
5857
generator.WithSchema(
5958
"TestReadiness", "v1alpha1",
6059
map[string]interface{}{
@@ -143,8 +142,7 @@ var _ = Describe("Readiness", func() {
143142
createdRGD := &krov1alpha1.ResourceGraphDefinition{}
144143
Eventually(func(g Gomega) {
145144
err := env.Client.Get(ctx, types.NamespacedName{
146-
Name: rgd.Name,
147-
Namespace: namespace,
145+
Name: rgd.Name,
148146
}, createdRGD)
149147
g.Expect(err).ToNot(HaveOccurred())
150148

@@ -286,8 +284,7 @@ var _ = Describe("Readiness", func() {
286284
// Verify ResourceGraphDefinition is deleted
287285
Eventually(func() bool {
288286
err := env.Client.Get(ctx, types.NamespacedName{
289-
Name: rgd.Name,
290-
Namespace: namespace,
287+
Name: rgd.Name,
291288
}, &krov1alpha1.ResourceGraphDefinition{})
292289
return errors.IsNotFound(err)
293290
}, 20*time.Second, time.Second).Should(BeTrue())

0 commit comments

Comments
 (0)