diff --git a/automation/vars/uni07eta-adoption.yaml b/automation/vars/uni07eta-adoption.yaml new file mode 100644 index 000000000..9d20c60ca --- /dev/null +++ b/automation/vars/uni07eta-adoption.yaml @@ -0,0 +1,26 @@ +--- +vas: + uni07eta-adoption: + stages: + - path: examples/dt/uni07eta/control-plane/networking/nncp + wait_conditions: + - >- + oc -n openstack wait nncp + -l osp/nncm-config-type=standard + --for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured + --timeout=5m + values: + - name: network-values + src_file: values.yaml + build_output: nncp.yaml + + - path: examples/dt/uni07eta/control-plane/networking + wait_conditions: + - >- + oc -n metallb-system wait pod + -l app=metallb -l component=speaker + --for condition=Ready + values: + - name: network-values + src_file: nncp/values.yaml + build_output: networking.yaml diff --git a/automation/vars/uni07eta.yaml b/automation/vars/uni07eta.yaml index a6eab5c70..1a36a034a 100644 --- a/automation/vars/uni07eta.yaml +++ b/automation/vars/uni07eta.yaml @@ -2,7 +2,7 @@ vas: uni07eta: stages: - - path: examples/dt/uni07eta/control-plane/nncp + - path: examples/dt/uni07eta/control-plane/networking/nncp wait_conditions: - >- oc -n openstack wait nncp @@ -14,6 +14,18 @@ vas: src_file: values.yaml build_output: nncp.yaml + - path: examples/dt/uni07eta/control-plane/networking + wait_conditions: + - >- + oc -n metallb-system wait pod + -l app=metallb -l component=speaker + --for condition=Ready + --timeout=5m + values: + - name: network-values + src_file: nncp/values.yaml + build_output: networking.yaml + - path: examples/dt/uni07eta/control-plane wait_conditions: - >- @@ -23,7 +35,7 @@ vas: --timeout=60m values: - name: network-values - src_file: nncp/values.yaml + src_file: networking/nncp/values.yaml - name: service-values src_file: service-values.yaml build_output: control-plane.yaml diff --git a/dt/uni07eta/kustomization.yaml b/dt/uni07eta/kustomization.yaml index 02edcaa3f..6dda7054a 100644 --- a/dt/uni07eta/kustomization.yaml +++ b/dt/uni07eta/kustomization.yaml @@ -24,14 +24,10 @@ transformers: create: true components: - - ../../lib/networking/metallb - - ../../lib/networking/netconfig - - ../../lib/networking/nad - ../../lib/control-plane resources: - cinder-volume-ontap-secrets.yaml - - ocp-networks-octavia-netattach.yaml replacements: # Cinder @@ -344,13 +340,14 @@ replacements: options: create: true - - source: - kind: ConfigMap - name: network-values - fieldPath: data.octavia.net-attach-def - targets: - - select: - kind: NetworkAttachmentDefinition - name: octavia - fieldPaths: - - spec.config +# # TODO: check this again +# - source: +# kind: ConfigMap +# name: network-values +# fieldPath: data.octavia.net-attach-def +# targets: +# - select: +# kind: NetworkAttachmentDefinition +# name: octavia +# fieldPaths: +# - spec.config diff --git a/dt/uni07eta/networking/kustomization.yaml b/dt/uni07eta/networking/kustomization.yaml new file mode 100644 index 000000000..e033dd372 --- /dev/null +++ b/dt/uni07eta/networking/kustomization.yaml @@ -0,0 +1,38 @@ +--- +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 + +resources: + - ocp-networks-octavia-netattach.yaml + + +replacements: + - source: + kind: ConfigMap + name: network-values + fieldPath: data.octavia.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: octavia + fieldPaths: + - spec.config diff --git a/dt/uni07eta/ocp-networks-octavia-netattach.yaml b/dt/uni07eta/networking/ocp-networks-octavia-netattach.yaml similarity index 100% rename from dt/uni07eta/ocp-networks-octavia-netattach.yaml rename to dt/uni07eta/networking/ocp-networks-octavia-netattach.yaml diff --git a/dt/uni07eta/nncp/kustomization.yaml b/dt/uni07eta/nncp/kustomization.yaml index da4d82899..c8a3f0c79 100644 --- a/dt/uni07eta/nncp/kustomization.yaml +++ b/dt/uni07eta/nncp/kustomization.yaml @@ -185,3 +185,14 @@ replacements: name: master-2 fieldPaths: - spec.desiredState.interfaces.[name=octavia].vlan.id + + - source: + kind: ConfigMap + name: network-values + fieldPath: data.octavia.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: octavia + fieldPaths: + - spec.config diff --git a/examples/dt/uni07eta/control-plane.md b/examples/dt/uni07eta/control-plane.md index 18c159d73..7d1e02cc9 100644 --- a/examples/dt/uni07eta/control-plane.md +++ b/examples/dt/uni07eta/control-plane.md @@ -28,12 +28,12 @@ cd architecture/examples/dt/uni07eta ``` Edit [control-plane/service-values.yaml](control-plane/service-values.yaml) and -[control-plane/nncp/values.yaml](control-plane/nncp/values.yaml). +[control-plane/networking/nncp/values.yaml](control-plane/networking/nncp/values.yaml). Apply node network configuration ```bash -pushd control-plane/nncp +pushd control-plane/networking/nncp kustomize build > nncp.yaml oc apply -f nncp.yaml oc wait nncp \ @@ -43,6 +43,18 @@ oc wait nncp \ popd ``` +## Apply remaining networking configuration + +Generate the reminaing networking configuration +``` +kustomize build control-plane/networking > networking.yaml +``` +Apply the networking CRs +``` +oc apply -f networking.yaml +``` + + Generate the control-plane and networking CRs. ```bash diff --git a/examples/dt/uni07eta/control-plane/kustomization.yaml b/examples/dt/uni07eta/control-plane/kustomization.yaml index cfa6d12b6..d73deeed7 100644 --- a/examples/dt/uni07eta/control-plane/kustomization.yaml +++ b/examples/dt/uni07eta/control-plane/kustomization.yaml @@ -6,5 +6,5 @@ components: - ../../../../dt/uni07eta resources: - - nncp/values.yaml + - networking/nncp/values.yaml - service-values.yaml diff --git a/examples/dt/uni07eta/control-plane/networking/kustomization.yaml b/examples/dt/uni07eta/control-plane/networking/kustomization.yaml new file mode 100644 index 000000000..87cd4f772 --- /dev/null +++ b/examples/dt/uni07eta/control-plane/networking/kustomization.yaml @@ -0,0 +1,9 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +components: + - ../../../../../dt/uni07eta/networking + +resources: + - nncp/values.yaml diff --git a/examples/dt/uni07eta/control-plane/nncp/kustomization.yaml b/examples/dt/uni07eta/control-plane/networking/nncp/kustomization.yaml similarity index 73% rename from examples/dt/uni07eta/control-plane/nncp/kustomization.yaml rename to examples/dt/uni07eta/control-plane/networking/nncp/kustomization.yaml index 91a24756c..4c1856cb3 100644 --- a/examples/dt/uni07eta/control-plane/nncp/kustomization.yaml +++ b/examples/dt/uni07eta/control-plane/networking/nncp/kustomization.yaml @@ -3,7 +3,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization components: - - ../../../../../dt/uni07eta/nncp + - ../../../../../../dt/uni07eta/nncp resources: - values.yaml diff --git a/examples/dt/uni07eta/control-plane/nncp/values.yaml b/examples/dt/uni07eta/control-plane/networking/nncp/values.yaml similarity index 100% rename from examples/dt/uni07eta/control-plane/nncp/values.yaml rename to examples/dt/uni07eta/control-plane/networking/nncp/values.yaml diff --git a/examples/dt/uni07eta/kustomization.yaml b/examples/dt/uni07eta/kustomization.yaml index 116846013..3d3dc82b8 100644 --- a/examples/dt/uni07eta/kustomization.yaml +++ b/examples/dt/uni07eta/kustomization.yaml @@ -6,4 +6,5 @@ components: - ../../../dt/uni07eta/edpm resources: + - control-plane/networking/nncp/values.yaml - values.yaml diff --git a/zuul.d/projects.yaml b/zuul.d/projects.yaml index 7c295b8ed..d3ac75646 100644 --- a/zuul.d/projects.yaml +++ b/zuul.d/projects.yaml @@ -26,6 +26,7 @@ - rhoso-architecture-validate-uni05epsilon - rhoso-architecture-validate-uni06zeta - rhoso-architecture-validate-uni07eta + - rhoso-architecture-validate-uni07eta-adoption github-experimental-trigger: jobs: - architecture-downstream-va-hci-trigger-job diff --git a/zuul.d/validations.yaml b/zuul.d/validations.yaml index e1ef368d0..462253f47 100644 --- a/zuul.d/validations.yaml +++ b/zuul.d/validations.yaml @@ -312,7 +312,8 @@ - dt/uni07eta - examples/dt/uni07eta - examples/dt/uni07eta/control-plane - - examples/dt/uni07eta/control-plane/nncp + - examples/dt/uni07eta/control-plane/networking + - examples/dt/uni07eta/control-plane/networking/nncp - examples/dt/uni07eta/edpm - examples/dt/uni07eta/networker - examples/dt/uni07eta/networker/nodeset @@ -322,3 +323,12 @@ vars: cifmw_architecture_scenario: uni07eta cifmw_networking_env_def_file: automation/net-env/uni07eta.yaml +- job: + files: + - examples/dt/uni07eta/control-plane/networking + - examples/dt/uni07eta/control-plane/networking/nncp + - lib + name: rhoso-architecture-validate-uni07eta-adoption + parent: rhoso-architecture-base-job + vars: + cifmw_architecture_scenario: uni07eta-adoption