Skip to content

Commit

Permalink
Merge pull request openstack-k8s-operators#401 from jamepark4/add_mul…
Browse files Browse the repository at this point in the history
…ticell_dt

Add nova 3 cell DT

Standard deployments currently deploy cell0 and cell1.  Create a DT that deploys cell0, cell1, and cell2.
Depends-On: openstack-k8s-operators/ci-framework#2423

Reviewed-by: Harald <[email protected]>
Reviewed-by: jamepark4 <[email protected]>
Reviewed-by: Balazs Gibizer <[email protected]>
Reviewed-by: Bogdan Dobrelya
Reviewed-by: Andrew Bays <[email protected]>
  • Loading branch information
softwarefactory-project-zuul[bot] authored Dec 16, 2024
2 parents 2da816a + 191d2bf commit b945fba
Show file tree
Hide file tree
Showing 23 changed files with 1,239 additions and 0 deletions.
60 changes: 60 additions & 0 deletions automation/vars/nova-three-cells.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
vas:
nova-three-cells:
stages:
- path: examples/dt/nova/nova-three-cells/control-plane/nncp
wait_conditions:
- >-
oc -n openstack wait nncp
-l osp/nncm-config-type=standard
--for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured
--timeout=60s
values:
- name: network-values
src_file: values.yaml
build_output: nncp.yaml

- path: examples/dt/nova/nova-three-cells/control-plane
wait_conditions:
- >-
oc -n openstack wait osctlplane controlplane --for condition=Ready
--timeout=1800s
values:
- name: network-values
src_file: nncp/values.yaml
- name: service-values
src_file: service-values.yaml
build_output: control-plane.yaml

- path: examples/dt/nova/nova-three-cells/edpm/nodeset
wait_conditions:
- >-
oc -n openstack wait
osdpns openstack-edpm --for condition=SetupReady
--timeout=60m
values:
- name: edpm-nodeset-values
src_file: values.yaml
build_output: nodeset.yaml

- path: examples/dt/nova/nova-three-cells/edpm/nodeset2
wait_conditions:
- >-
oc -n openstack wait
osdpns openstack-edpm-2 --for condition=SetupReady
--timeout=60m
values:
- name: edpm-nodeset2-values
src_file: values.yaml
build_output: nodeset2.yaml

- path: examples/dt/nova/nova-three-cells/edpm/deployment
wait_conditions:
- >-
oc -n openstack wait openstackdataplanedeployment
edpm-deployment --for condition=Ready
--timeout=60m
values:
- name: edpm-deployment-values
src_file: values.yaml
build_output: deployment.yaml
12 changes: 12 additions & 0 deletions dt/nova/nova-three-cells/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Deployed Topology - Nova/Three Cells

If you are looking for information on how to deploy the multiplecells based DT, then
please see the
[README](../../../examples/dt/nova/nova-three-cells/README.md) in the examples
directory.

This directory ,`dt/nova/nova-three-cells/`, exists so that the
[kustomization.yaml](../../../examples/dt/nova/nova-three-cells/control-plane/kustomization.yaml)
in the examples directory of nova-three-cells topology, reference it by path as a
component. It's contents are likely uninteresting unless you want to understand
how kustomize was implemented in this repository.
21 changes: 21 additions & 0 deletions dt/nova/nova-three-cells/edpm/deployment/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true
components:
- ../../../../../lib/dataplane/deployment
20 changes: 20 additions & 0 deletions dt/nova/nova-three-cells/edpm/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true
components:
- ../../../lib/dataplane
20 changes: 20 additions & 0 deletions dt/nova/nova-three-cells/edpm/nodeset/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true
components:
- ../../../../../lib/dataplane/nodeset
135 changes: 135 additions & 0 deletions dt/nova/nova-three-cells/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true
components:
- ../../../lib/networking/metallb
- ../../../lib/networking/netconfig
- ../../../lib/networking/nad
- ../../../lib/control-plane

replacements:
- source:
kind: ConfigMap
name: service-values
fieldPath: data.galera.templates.openstack-cell2
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.galera.templates.openstack-cell2
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.glance.customServiceConfig
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.glance.template.customServiceConfig
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.glance.default.replicas
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.glance.template.glanceAPIs.default.replicas
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.swift.enabled
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.swift.enabled
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.telemetry.enabled
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.telemetry.enabled
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.telemetry.template.ceilometer.enabled
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.telemetry.template.ceilometer.enabled
options:
create: true
- source:
kind: ConfigMap
name: network-values
fieldPath: data.rabbitmq-cell2.endpoint_annotations
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.rabbitmq.templates.rabbitmq-cell2.override.service.metadata.annotations
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.rabbitmq.templates.rabbitmq-cell2.replicas
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.rabbitmq.templates.rabbitmq-cell2.replicas
options:
create: true
- source:
kind: ConfigMap
name: network-values
fieldPath: data.lbServiceType
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.rabbitmq.templates.rabbitmq-cell2.override.service.spec.type
options:
create: true
- source:
kind: ConfigMap
name: service-values
fieldPath: data.nova.template.cellTemplates.cell2
targets:
- select:
kind: OpenStackControlPlane
fieldPaths:
- spec.nova.template.cellTemplates.cell2
options:
create: true
12 changes: 12 additions & 0 deletions dt/nova/nova-three-cells/namespace.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true
Loading

0 comments on commit b945fba

Please sign in to comment.