Skip to content

Commit 0aff8c7

Browse files
committed
Rename nova-operator to workloads-operator and add cleanup logic
Update openstack-operator to deploy and manage workloads-operator instead of nova-operator. The nova-operator has been renamed to workloads-operator to reflect its expanded scope managing multiple OpenStack workload services (Nova, Placement, and Cyborg). Changes include: - Added cleanupNovaOperator() function to remove old nova-operator resources during upgrade (deployment, service account, RBAC, certificates) - Renamed bindata/services from nova-operator-services.yaml to workloads-operator-services.yaml - Updated all K8s resource names from nova-operator to workloads-operator (deployments, services, roles, rolebindings, certificates, issuers) - Renamed RELATED_IMAGE_NOVA_OPERATOR_MANAGER_IMAGE_URL to RELATED_IMAGE_WORKLOADS_OPERATOR_MANAGER_IMAGE_URL - Updated CRD documentation comments to reference workloads-operator - Updated internal comments to reference workloads-operator The cleanup logic follows the same pattern used for placement-operator migration, removing only namespaced resources while leaving cluster-scoped RBAC intact to avoid breaking user-installed operators in other namespaces. Signed-off-by: Amartya Sinha <amsinha@redhat.com> Assisted-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 84322c7 commit 0aff8c7

30 files changed

Lines changed: 122 additions & 57 deletions

api/bases/operator.openstack.org_openstacks.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ spec:
136136
- manila
137137
- mariadb
138138
- neutron
139-
- nova
139+
- workloads
140140
- octavia
141141
- openstack-baremetal
142142
- ovn

api/go.mod

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ require (
119119
sigs.k8s.io/yaml v1.6.0 // indirect
120120
)
121121

122+
// Temporarily point to fork for testing nova->workloads rename
123+
replace github.com/openstack-k8s-operators/nova-operator/api => github.com/amartyasinha/nova-operator/api v0.0.0-20260825092843-bc74868a5955
124+
122125
// mschuppert: map to latest commit from release-4.20 tag
123126
// must consistent within modules and service operators
124127
replace github.com/openshift/api => github.com/openshift/api v0.0.0-20260710141509-36dec0bfafe4 //allow-merging

api/go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0=
22
github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
3+
github.com/amartyasinha/nova-operator/api v0.0.0-20260825092843-bc74868a5955 h1:pUUZKKpF2++ySLK89oL3+fvhwbFIsEbM/ZLvAGCZNlM=
4+
github.com/amartyasinha/nova-operator/api v0.0.0-20260825092843-bc74868a5955/go.mod h1:6Kk+XtByMkeQj7cKrRQxHsWFCHCyq1o0i4ls/niFBW4=
35
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
46
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
57
github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
@@ -164,8 +166,6 @@ github.com/openstack-k8s-operators/mariadb-operator/api v0.6.1-0.20260815095432-
164166
github.com/openstack-k8s-operators/mariadb-operator/api v0.6.1-0.20260815095432-ee0e4a46015e/go.mod h1:f3KPR3QM0jPbWGhXougv1BxnW+Bnc2vLE4TvBlYTLdo=
165167
github.com/openstack-k8s-operators/neutron-operator/api v0.6.1-0.20260815100037-cd2ac3283266 h1:JlEZxQLMck1GrXbYSX7BCZVWe2JGWVpLftG0/BX0DmM=
166168
github.com/openstack-k8s-operators/neutron-operator/api v0.6.1-0.20260815100037-cd2ac3283266/go.mod h1:MqaSkvkEeMCLR3/tVAPg8jlB7nJw2pHymfGJ9mNgjHg=
167-
github.com/openstack-k8s-operators/nova-operator/api v0.6.1-0.20260814001024-80a63d2d555f h1:p71R2Iji6NPJHlJ9S0DeVqo58n+9GFgojheYIP/fYS4=
168-
github.com/openstack-k8s-operators/nova-operator/api v0.6.1-0.20260814001024-80a63d2d555f/go.mod h1:/xrb6NvHRgj38XXz5RJjtqsrLBEgkaZ+6WTPpL5X3Rw=
169169
github.com/openstack-k8s-operators/octavia-operator/api v0.6.1-0.20260815074607-ebcbe88dc375 h1:A+BwSwm/oSOvBEbPz3tQwhi4ucvRceSBepk3tZ91STU=
170170
github.com/openstack-k8s-operators/octavia-operator/api v0.6.1-0.20260815074607-ebcbe88dc375/go.mod h1:BtUafbYGalxauqo4tRJRSDeas7OXWsPQgZLKR1JrXhc=
171171
github.com/openstack-k8s-operators/openstack-baremetal-operator/api v0.6.1-0.20260815053044-b1de07d3dec3 h1:Mrx9sDELzfO8JJEeeSbMdCWqdpG3SfY9ZTVlDLBklJ8=

api/operator/v1beta1/openstack_types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ const (
3939
ManilaOperatorName = "manila"
4040
MariaDBOperatorName = "mariadb"
4141
NeutronOperatorName = "neutron"
42-
NovaOperatorName = "nova"
42+
NovaOperatorName = "workloads"
4343
OctaviaOperatorName = "octavia"
4444
OpenStackBaremetalOperatorName = "openstack-baremetal"
4545
OvnOperatorName = "ovn"
@@ -184,7 +184,7 @@ type OpenStackSpec struct {
184184
type OperatorSpec struct {
185185
// +kubebuilder:validation:Required
186186
// +kubebuilder:validation:MinLength=1
187-
// +kubebuilder:validation:Enum:=openstack;barbican;cinder;designate;glance;heat;horizon;infra;ironic;keystone;manila;mariadb;neutron;nova;octavia;openstack-baremetal;ovn;swift;telemetry;test;watcher
187+
// +kubebuilder:validation:Enum:=openstack;barbican;cinder;designate;glance;heat;horizon;infra;ironic;keystone;manila;mariadb;neutron;workloads;octavia;openstack-baremetal;ovn;swift;telemetry;test;watcher
188188
// Name of the service operators.
189189
Name string `json:"name"`
190190

bindata/crds/nova.openstack.org_novaapis.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,7 @@ spec:
508508
description: |-
509509
Secret is the name of the Secret instance containing password
510510
information for the nova-api service. This secret is expected to be
511-
generated by the nova-operator based on the information passed to the
511+
generated by the workloads-operator based on the information passed to the
512512
Nova CR.
513513
type: string
514514
serviceAccount:

bindata/crds/nova.openstack.org_novacells.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1562,7 +1562,7 @@ spec:
15621562
description: |-
15631563
Secret is the name of the Secret instance containing password
15641564
information for the nova cell. This secret is expected to be
1565-
generated by the nova-operator based on the information passed to the
1565+
generated by the workloads-operator based on the information passed to the
15661566
Nova CR.
15671567
type: string
15681568
serviceAccount:

bindata/crds/nova.openstack.org_novacomputes.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ spec:
321321
description: |-
322322
Secret is the name of the Secret instance containing password
323323
information for the NovaCompute service. This secret is expected to be
324-
generated by the nova-operator based on the information passed to the
324+
generated by the workloads-operator based on the information passed to the
325325
Nova CR.
326326
type: string
327327
serviceAccount:

bindata/crds/nova.openstack.org_novaconductors.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ spec:
363363
description: |-
364364
Secret is the name of the Secret instance containing password
365365
information for the nova-conductor service. This secret is expected to
366-
be generated by the nova-operator based on the information passed to the
366+
be generated by the workloads-operator based on the information passed to the
367367
Nova CR.
368368
type: string
369369
serviceAccount:

bindata/crds/nova.openstack.org_novametadata.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -504,7 +504,7 @@ spec:
504504
description: |-
505505
Secret is the name of the Secret instance containing password
506506
information for the nova-conductor service. This secret is expected to
507-
be generated by the nova-operator based on the information passed to the
507+
be generated by the workloads-operator based on the information passed to the
508508
Nova CR.
509509
type: string
510510
serviceAccount:

bindata/crds/nova.openstack.org_novanovncproxies.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -469,7 +469,7 @@ spec:
469469
description: |-
470470
Secret is the name of the Secret instance containing password
471471
information for the nova-novncproxy service. This secret is expected to
472-
be generated by the nova-operator based on the information passed to the
472+
be generated by the workloads-operator based on the information passed to the
473473
Nova CR.
474474
type: string
475475
serviceAccount:

0 commit comments

Comments
 (0)