From e283614543512e6105621c2083271e99612efc1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Jeanneret?= Date: Wed, 3 Apr 2024 10:02:21 +0200 Subject: [PATCH 1/2] Add new workflow: yamllint This should ensure some consistency within the various YAML files. --- .github/workflows/linter.yaml | 28 ++++++++++++++++++++++++++++ .yamllint.yml | 9 +++++++++ 2 files changed, 37 insertions(+) create mode 100644 .github/workflows/linter.yaml create mode 100644 .yamllint.yml diff --git a/.github/workflows/linter.yaml b/.github/workflows/linter.yaml new file mode 100644 index 000000000..7e7974d76 --- /dev/null +++ b/.github/workflows/linter.yaml @@ -0,0 +1,28 @@ +--- +name: Run yaml-lint +on: # yamllint disable-line rule:truthy + pull_request: + branches: + - main + - stable + paths: + - "**.yaml" + - "**.yml" + +jobs: + yaml-lint: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup python + uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: Install yaml-lint + run: pip install yamllint + + - name: Run yaml-lint + run: yamllint -c .yamllint.yml -s . diff --git a/.yamllint.yml b/.yamllint.yml new file mode 100644 index 000000000..e1b420d68 --- /dev/null +++ b/.yamllint.yml @@ -0,0 +1,9 @@ +--- +extends: default +ignore: + - '*.md' + +rules: + line-length: + max: 100 + level: warning From ad99343dc104ca19381a9b0ad29b86b6ce61face Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Jeanneret?= Date: Wed, 3 Apr 2024 11:15:51 +0200 Subject: [PATCH 2/2] Mighty patch to follow yamllint practices --- .github/workflows/docs.yaml | 6 +- examples/common/metallb/kustomization.yaml | 1 + examples/common/nmstate/kustomization.yaml | 1 + examples/common/olm/kustomization.yaml | 1 + examples/common/olm/values.yaml | 1 + .../va/hci/control-plane/kustomization.yaml | 1 + .../hci/control-plane/nncp/kustomization.yaml | 28 +- .../va/hci/control-plane/nncp/values.yaml | 17 +- .../va/hci/edpm-pre-ceph/kustomization.yaml | 1 + examples/va/hci/edpm-pre-ceph/values.yaml | 99 +- examples/va/hci/kustomization.yaml | 1 + examples/va/hci/service-values.yaml | 2 +- examples/va/hci/values.yaml | 11 +- .../ovs-dpdk-sriov/edpm/kustomization.yaml | 5 +- .../va/nfv/ovs-dpdk-sriov/edpm/values.yaml | 68 +- .../va/nfv/ovs-dpdk-sriov/kustomization.yaml | 1 + .../ovs-dpdk-sriov/nncp/kustomization.yaml | 27 +- .../va/nfv/ovs-dpdk-sriov/nncp/values.yaml | 17 +- .../va/nfv/ovs-dpdk-sriov/service-values.yaml | 5 +- .../va/nfv/ovs-dpdk/edpm/kustomization.yaml | 1 + examples/va/nfv/ovs-dpdk/edpm/values.yaml | 51 +- examples/va/nfv/ovs-dpdk/kustomization.yaml | 1 + .../va/nfv/ovs-dpdk/nncp/kustomization.yaml | 27 +- examples/va/nfv/ovs-dpdk/nncp/values.yaml | 17 +- examples/va/nfv/ovs-dpdk/service-values.yaml | 4 +- examples/va/nfv/sriov/edpm/kustomization.yaml | 1 + examples/va/nfv/sriov/edpm/values.yaml | 42 +- examples/va/nfv/sriov/kustomization.yaml | 1 + examples/va/nfv/sriov/nncp/kustomization.yaml | 28 +- examples/va/nfv/sriov/nncp/values.yaml | 17 +- examples/va/nfv/sriov/service-values.yaml | 3 +- lib/control-plane/kustomization.yaml | 227 ++--- lib/control-plane/openstackcontrolplane.yaml | 1 + lib/dataplane/dataplane-ssh-secret.yaml | 1 + lib/dataplane/kustomization.yaml | 221 ++--- lib/dataplane/nova-migration-ssh-secret.yaml | 1 + .../openstackdataplanedeployment.yaml | 3 +- lib/dataplane/openstackdataplanenodeset.yaml | 1 + lib/metallb/kustomization.yaml | 3 +- lib/metallb/metallb_deploy.yaml | 1 + lib/networking/kustomization.yaml | 687 +++++++------- lib/networking/metallb_l2advertisement.yaml | 16 +- lib/networking/netconfig.yaml | 1 + lib/networking/ocp_ip_pool_template.yaml | 1 + lib/networking/ocp_network_template.yaml | 1 + lib/nmstate/kustomization.yaml | 3 +- lib/nmstate/nmstate_deploy.yaml | 1 + lib/nncp/kustomization.yaml | 855 +++++++++--------- lib/nncp/ocp_node_template.yaml | 153 ++-- lib/olm-deps/cert_manager_namespace.yaml | 9 +- lib/olm-deps/cert_manager_operatorgroup.yaml | 4 +- lib/olm-deps/cert_manager_subscription.yaml | 1 + lib/olm-deps/kustomization.yaml | 19 +- lib/olm-deps/metallb_namespace.yaml | 9 +- lib/olm-deps/metallb_operatorgroup.yaml | 1 + lib/olm-deps/metallb_subscription.yaml | 1 + lib/olm-deps/nmstate_namespace.yaml | 9 +- lib/olm-deps/nmstate_operatorgroup.yaml | 3 +- lib/olm-deps/nmstate_subscription.yaml | 1 + lib/olm-openstack/catalogsource.yaml | 1 + lib/olm-openstack/kustomization.yaml | 27 +- lib/olm-openstack/namespaces.yaml | 17 +- lib/olm-openstack/operatorgroup.yaml | 1 + lib/olm-openstack/subscription.yaml | 1 + mkdocs.yml | 14 +- va/hci/edpm-post-ceph/kustomization.yaml | 336 +++---- va/hci/edpm-pre-ceph/kustomization.yaml | 43 +- va/hci/kustomization.yaml | 117 +-- va/hci/namespace.yaml | 7 +- .../edpm/baremetalset-password-secret.yaml | 1 + va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml | 153 ++-- va/nfv/ovs-dpdk-sriov/kustomization.yaml | 189 ++-- va/nfv/ovs-dpdk-sriov/namespace.yaml | 7 +- .../edpm/baremetalset-password-secret.yaml | 1 + va/nfv/ovs-dpdk/edpm/kustomization.yaml | 129 +-- va/nfv/ovs-dpdk/kustomization.yaml | 189 ++-- va/nfv/ovs-dpdk/namespace.yaml | 7 +- .../edpm/baremetalset-password-secret.yaml | 1 + va/nfv/sriov/edpm/kustomization.yaml | 153 ++-- va/nfv/sriov/kustomization.yaml | 145 +-- va/nfv/sriov/namespace.yaml | 7 +- 81 files changed, 2177 insertions(+), 2089 deletions(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 2d369559f..78316e8a6 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -1,5 +1,6 @@ +--- name: Build Docs -on: +on: # yamllint disable-line rule:truthy workflow_dispatch: push: branches: @@ -10,7 +11,8 @@ jobs: steps: - uses: actions/checkout@v2 with: - # this fetches all branches. Needed because we need gh-pages branch for deploy to work + # this fetches all branches. Needed because we need + # gh-pages branch for deploy to work fetch-depth: 0 - uses: actions/setup-python@v2 with: diff --git a/examples/common/metallb/kustomization.yaml b/examples/common/metallb/kustomization.yaml index 3309b53f8..c543ac2c6 100644 --- a/examples/common/metallb/kustomization.yaml +++ b/examples/common/metallb/kustomization.yaml @@ -1,2 +1,3 @@ +--- components: - ../../../lib/metallb diff --git a/examples/common/nmstate/kustomization.yaml b/examples/common/nmstate/kustomization.yaml index 12530cc0c..bf0d5de19 100644 --- a/examples/common/nmstate/kustomization.yaml +++ b/examples/common/nmstate/kustomization.yaml @@ -1,2 +1,3 @@ +--- components: - ../../../lib/nmstate diff --git a/examples/common/olm/kustomization.yaml b/examples/common/olm/kustomization.yaml index ed9484041..dff3ec42b 100644 --- a/examples/common/olm/kustomization.yaml +++ b/examples/common/olm/kustomization.yaml @@ -1,3 +1,4 @@ +--- components: - ../../../lib/olm-deps - ../../../lib/olm-openstack diff --git a/examples/common/olm/values.yaml b/examples/common/olm/values.yaml index c5400c30f..de051ee41 100644 --- a/examples/common/olm/values.yaml +++ b/examples/common/olm/values.yaml @@ -1,4 +1,5 @@ # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: diff --git a/examples/va/hci/control-plane/kustomization.yaml b/examples/va/hci/control-plane/kustomization.yaml index 20dd77b0f..f172a15af 100644 --- a/examples/va/hci/control-plane/kustomization.yaml +++ b/examples/va/hci/control-plane/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/hci/control-plane/nncp/kustomization.yaml b/examples/va/hci/control-plane/nncp/kustomization.yaml index eed010de4..c92bc55fa 100644 --- a/examples/va/hci/control-plane/nncp/kustomization.yaml +++ b/examples/va/hci/control-plane/nncp/kustomization.yaml @@ -1,24 +1,24 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization 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 + # 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/nncp resources: - values.yaml - diff --git a/examples/va/hci/control-plane/nncp/values.yaml b/examples/va/hci/control-plane/nncp/values.yaml index 3657297fa..187494d2a 100644 --- a/examples/va/hci/control-plane/nncp/values.yaml +++ b/examples/va/hci/control-plane/nncp/values.yaml @@ -1,4 +1,5 @@ # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -42,7 +43,7 @@ data: iface: enp6s0 mtu: 9000 lb_addresses: - - 192.168.122.80-192.168.122.90 + - 192.168.122.80-192.168.122.90 endpoint_annotations: metallb.universe.tf/address-pool: ctlplane metallb.universe.tf/allow-shared-ip: ctlplane @@ -75,12 +76,12 @@ data: vlan: 20 base_iface: enp6s0 lb_addresses: - - 172.17.0.80-172.17.0.90 + - 172.17.0.80-172.17.0.90 endpoint_annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.80 - net-attach-def: | + net-attach-def: | { "cniVersion": "0.3.1", "name": "internalapi", @@ -108,7 +109,7 @@ data: vlan: 21 base_iface: enp6s0 lb_addresses: - - 172.18.0.80-172.18.0.90 + - 172.18.0.80-172.18.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -147,7 +148,7 @@ data: vlan: 22 base_iface: enp6s0 lb_addresses: - - 172.19.0.80-172.19.0.90 + - 172.19.0.80-172.19.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -193,9 +194,9 @@ data: routes: config: - - destination: 0.0.0.0/0 - next-hop-address: 192.168.122.1 - next-hop-interface: enp6s0 + - destination: 0.0.0.0/0 + next-hop-address: 192.168.122.1 + next-hop-interface: enp6s0 rabbitmq: endpoint_annotations: diff --git a/examples/va/hci/edpm-pre-ceph/kustomization.yaml b/examples/va/hci/edpm-pre-ceph/kustomization.yaml index db570724b..7f615766e 100644 --- a/examples/va/hci/edpm-pre-ceph/kustomization.yaml +++ b/examples/va/hci/edpm-pre-ceph/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/hci/edpm-pre-ceph/values.yaml b/examples/va/hci/edpm-pre-ceph/values.yaml index 30ca0c002..1dc135e55 100644 --- a/examples/va/hci/edpm-pre-ceph/values.yaml +++ b/examples/va/hci/edpm-pre-ceph/values.yaml @@ -1,4 +1,6 @@ +# yamllint disable rule:line-length # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -22,18 +24,19 @@ data: - hostname: clock.redhat.com # CHANGEME -- see https://access.redhat.com/solutions/253273 # edpm_bootstrap_command: | - # subscription-manager register --username --password + # subscription-manager register --username \ + # --password # podman login -u -p registry.redhat.io edpm_iscsid_image: '{{ registry_url }}/openstack-iscsid:{{ image_tag }}' edpm_logrotate_crond_image: '{{ registry_url }}/openstack-cron:{{ image_tag }}' edpm_network_config_hide_sensitive_logs: false edpm_network_config_os_net_config_mappings: edpm-compute-0: - nic2: 6a:fe:54:3f:8a:02 # CHANGEME + nic2: 6a:fe:54:3f:8a:02 # CHANGEME edpm-compute-1: - nic2: 6b:fe:54:3f:8a:02 # CHANGEME + nic2: 6b:fe:54:3f:8a:02 # CHANGEME edpm-compute-2: - nic2: 6c:fe:54:3f:8a:02 # CHANGEME + nic2: 6c:fe:54:3f:8a:02 # CHANGEME edpm_network_config_template: | --- {% set mtu_list = [ctlplane_mtu] %} @@ -116,61 +119,61 @@ data: ansibleHost: 192.168.122.100 hostName: edpm-compute-0 networks: - - defaultRoute: true - fixedIP: 192.168.122.100 - name: CtlPlane - subnetName: subnet1 - - name: InternalApi - subnetName: subnet1 - - name: Storage - subnetName: subnet1 - - name: StorageMgmt - subnetName: subnet1 - - name: Tenant - subnetName: subnet1 + - defaultRoute: true + fixedIP: 192.168.122.100 + name: CtlPlane + subnetName: subnet1 + - name: InternalApi + subnetName: subnet1 + - name: Storage + subnetName: subnet1 + - name: StorageMgmt + subnetName: subnet1 + - name: Tenant + subnetName: subnet1 edpm-compute-1: ansible: ansibleHost: 192.168.122.101 hostName: edpm-compute-1 networks: - - defaultRoute: true - fixedIP: 192.168.122.101 - name: CtlPlane - subnetName: subnet1 - - name: InternalApi - subnetName: subnet1 - - name: Storage - subnetName: subnet1 - - name: StorageMgmt - subnetName: subnet1 - - name: Tenant - subnetName: subnet1 + - defaultRoute: true + fixedIP: 192.168.122.101 + name: CtlPlane + subnetName: subnet1 + - name: InternalApi + subnetName: subnet1 + - name: Storage + subnetName: subnet1 + - name: StorageMgmt + subnetName: subnet1 + - name: Tenant + subnetName: subnet1 edpm-compute-2: ansible: ansibleHost: 192.168.122.102 hostName: edpm-compute-2 networks: - - defaultRoute: true - fixedIP: 192.168.122.102 - name: CtlPlane - subnetName: subnet1 - - name: InternalApi - subnetName: subnet1 - - name: Storage - subnetName: subnet1 - - name: StorageMgmt - subnetName: subnet1 - - name: Tenant - subnetName: subnet1 + - defaultRoute: true + fixedIP: 192.168.122.102 + name: CtlPlane + subnetName: subnet1 + - name: InternalApi + subnetName: subnet1 + - name: Storage + subnetName: subnet1 + - name: StorageMgmt + subnetName: subnet1 + - name: Tenant + subnetName: subnet1 services: - - bootstrap - - configure-network - - validate-network - - install-os - - ceph-hci-pre - - configure-os - - run-os - - reboot-os + - bootstrap + - configure-network + - validate-network + - install-os + - ceph-hci-pre + - configure-os + - run-os + - reboot-os nova: migration: ssh_keys: diff --git a/examples/va/hci/kustomization.yaml b/examples/va/hci/kustomization.yaml index f4d32c9de..9123585b7 100644 --- a/examples/va/hci/kustomization.yaml +++ b/examples/va/hci/kustomization.yaml @@ -1,4 +1,5 @@ # This is the kustomization for the FINAL step, edpm-post-ceph +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/hci/service-values.yaml b/examples/va/hci/service-values.yaml index 358eceeb5..780d33286 100644 --- a/examples/va/hci/service-values.yaml +++ b/examples/va/hci/service-values.yaml @@ -1,4 +1,5 @@ # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -80,4 +81,3 @@ data: - name: ceph mountPath: /etc/ceph readOnly: true - diff --git a/examples/va/hci/values.yaml b/examples/va/hci/values.yaml index ae63ae8e8..14ec8ee0d 100644 --- a/examples/va/hci/values.yaml +++ b/examples/va/hci/values.yaml @@ -1,4 +1,5 @@ # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -8,11 +9,11 @@ metadata: data: nodeset: services: - - ceph-client - - ovn - - neutron-metadata - - libvirt - - nova-custom-ceph + - ceph-client + - ovn + - neutron-metadata + - libvirt + - nova-custom-ceph ceph: conf: CHANGEME_CEPH_CONF keyring: CHANGEME_CEPH_KEYRING diff --git a/examples/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml b/examples/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml index 5a10eef44..1f5082533 100644 --- a/examples/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml +++ b/examples/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml @@ -1,11 +1,12 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization components: - ../../../../../va/nfv/ovs-dpdk-sriov/edpm/ # - https://github.com/openstack-k8s-operators/architecture/va/nfv/ovs-dpdk-sriov/edpm/?ref=main - ## It's possible to replace ../../../../../va/nfv/ovs-dpdk-sriov/edpm/ with a git checkout URL as per: - ## https://github.com/kubernetes-sigs/kustomize/blob/master/examples/remoteBuild.md + ## It's possible to replace ../../../../../va/nfv/ovs-dpdk-sriov/edpm/ with a git checkout URL + ## as per: https://github.com/kubernetes-sigs/kustomize/blob/master/examples/remoteBuild.md resources: - values.yaml diff --git a/examples/va/nfv/ovs-dpdk-sriov/edpm/values.yaml b/examples/va/nfv/ovs-dpdk-sriov/edpm/values.yaml index c8ec05bc3..1be04c028 100644 --- a/examples/va/nfv/ovs-dpdk-sriov/edpm/values.yaml +++ b/examples/va/nfv/ovs-dpdk-sriov/edpm/values.yaml @@ -1,3 +1,6 @@ +--- +# yamllint disable rule:line-length + # local-config: referenced, but not emitted by kustomize apiVersion: v1 kind: ConfigMap @@ -9,11 +12,11 @@ data: root_password: cmVkaGF0Cg== preProvisioned: false baremetalSetTemplate: - ctlplaneInterface: eno2 #CHANGEME + ctlplaneInterface: eno2 # CHANGEME cloudUserName: cloud-admin - provisioningInterface: enp1s0 #CHANGEME + provisioningInterface: enp1s0 # CHANGEME bmhLabelSelector: - app: openstack #CHANGEME + app: openstack # CHANGEME passwordSecret: name: baremetalset-password-secret namespace: openstack @@ -31,7 +34,8 @@ data: ansibleVars: # CHANGEME -- see https://access.redhat.com/solutions/253273 # edpm_bootstrap_command: | - # subscription-manager register --username --password + # subscription-manager register --username \ + # --password # podman login -u -p registry.redhat.io service_net_map: nova_api_network: internalapi @@ -41,6 +45,7 @@ data: # CPU pinning settings # edpm nfv ovs dpdk config # CHANGEME + # yamllint disable-line rule:line-length edpm_kernel_args: "default_hugepagesz=1GB hugepagesz=1G hugepages=64 iommu=pt intel_iommu=on tsx=off isolcpus=2-11,14-23" edpm_tuned_profile: "cpu-partitioning-powersave" edpm_tuned_isolated_cores: "2-11,14-23" @@ -49,7 +54,7 @@ data: edpm_ovs_dpdk_socket_memory: "4096" edpm_ovs_dpdk_memory_channels: "4" edpm_ovs_dpdk_vhost_postcopy_support: "true" - edpm_ovn_bridge_mappings: ['dpdk2:br-link2','dpdk1:br-link1'] + edpm_ovn_bridge_mappings: ['dpdk2:br-link2', 'dpdk1:br-link1'] # edpm nfv sriov config edpm_neutron_sriov_agent_SRIOV_NIC_physical_device_mappings: 'sriov1:eno5,sriov2:eno6' # edpm_network_config @@ -58,13 +63,13 @@ data: edpm_network_config_os_net_config_mappings: # Need to provide nic mapping based on system uuid or system product name # here used systetm uuid - edpm-compute-0: # CHANGEME - nic1: 6c:fe:54:3f:8a:01 # CHANGEME - nic2: 6c:fe:54:3f:8a:02 # CHANGEME - nic3: 6c:fe:54:3f:8a:03 # CHANGEME - nic4: 6c:fe:54:3f:8a:04 # CHANGEME - nic5: 6c:fe:54:3f:8a:05 # CHANGEME - nic6: 6c:fe:54:3f:8a:06 # CHANGEME + edpm-compute-0: # CHANGEME + nic1: 6c:fe:54:3f:8a:01 # CHANGEME + nic2: 6c:fe:54:3f:8a:02 # CHANGEME + nic3: 6c:fe:54:3f:8a:03 # CHANGEME + nic4: 6c:fe:54:3f:8a:04 # CHANGEME + nic5: 6c:fe:54:3f:8a:05 # CHANGEME + nic6: 6c:fe:54:3f:8a:06 # CHANGEME edpm_network_config_template: | --- {% set mtu_list = [ctlplane_mtu] %} @@ -93,7 +98,7 @@ data: mtu: {{ lookup('vars', networks_lower[network] ~ '_mtu') }} vlan_id: {{ lookup('vars', networks_lower[network] ~ '_vlan_id') }} addresses: - - ip_netmask: {{ lookup('vars', networks_lower[network] ~ '_ip') }}/{{ lookup('vars', networks_lower[network] ~ '_cidr') }} + - ip_netmask: {{ lookup('vars', networks_lower[network] ~ '_ip') }}/{{ lookup('vars', networks_lower[network] ~ '_cidr') }} routes: {{ lookup('vars', networks_lower[network] ~ '_host_routes') }} {% endfor %} - type: ovs_user_bridge @@ -101,7 +106,7 @@ data: use_dhcp: false ovs_extra: "set port br-link1 tag={{ lookup('vars', networks_lower['Tenant'] ~ '_vlan_id') }}" addresses: - - ip_netmask: {{ lookup('vars', networks_lower['Tenant'] ~ '_ip') }}/{{ lookup('vars', networks_lower['Tenant'] ~ '_cidr') }} + - ip_netmask: {{ lookup('vars', networks_lower['Tenant'] ~ '_ip') }}/{{ lookup('vars', networks_lower['Tenant'] ~ '_cidr') }} mtu: {{ lookup('vars', networks_lower['Tenant'] ~ '_mtu') }} rx_queue: 1 members: @@ -165,21 +170,21 @@ data: edpm-compute-1: hostName: edpm-compute-1 services: - - bootstrap - - download-cache - - reboot-os - - configure-ovs-dpdk - - configure-network - - validate-network - - install-os - - configure-os - - run-os - - ovn - - neutron-metadata - - neutron-sriov - - libvirt - - nova-custom-ovsdpdksriov - - telemetry + - bootstrap + - download-cache + - reboot-os + - configure-ovs-dpdk + - configure-network + - validate-network + - install-os + - configure-os + - run-os + - ovn + - neutron-metadata + - neutron-sriov + - libvirt + - nova-custom-ovsdpdksriov + - telemetry nova: compute: conf: | @@ -193,7 +198,8 @@ data: private: CHANGEME4 public: CHANGEME5 pci: + # yamllint disable-line rule:line-length conf: | [pci] - device_spec = {"vendor_id":"8086", "product_id":"1572", "address": "0000:19:00.3", "physical_network":"sriov1", "trusted":"true"} #CHANGEME - device_spec = {"vendor_id":"8086", "product_id":"1572", "address": "0000:20:00.3", "physical_network":"sriov2", "trusted":"true"} #CHANGEME + device_spec = {"vendor_id":"8086", "product_id":"1572", "address": "0000:19:00.3", "physical_network":"sriov1", "trusted":"true"} # CHANGEME + device_spec = {"vendor_id":"8086", "product_id":"1572", "address": "0000:20:00.3", "physical_network":"sriov2", "trusted":"true"} # CHANGEME diff --git a/examples/va/nfv/ovs-dpdk-sriov/kustomization.yaml b/examples/va/nfv/ovs-dpdk-sriov/kustomization.yaml index 1d228c78c..497ada39d 100644 --- a/examples/va/nfv/ovs-dpdk-sriov/kustomization.yaml +++ b/examples/va/nfv/ovs-dpdk-sriov/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/nfv/ovs-dpdk-sriov/nncp/kustomization.yaml b/examples/va/nfv/ovs-dpdk-sriov/nncp/kustomization.yaml index 9eebd2367..c92bc55fa 100644 --- a/examples/va/nfv/ovs-dpdk-sriov/nncp/kustomization.yaml +++ b/examples/va/nfv/ovs-dpdk-sriov/nncp/kustomization.yaml @@ -1,20 +1,21 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization 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 + # 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/nncp diff --git a/examples/va/nfv/ovs-dpdk-sriov/nncp/values.yaml b/examples/va/nfv/ovs-dpdk-sriov/nncp/values.yaml index 8a716e7ce..f59107eed 100644 --- a/examples/va/nfv/ovs-dpdk-sriov/nncp/values.yaml +++ b/examples/va/nfv/ovs-dpdk-sriov/nncp/values.yaml @@ -1,3 +1,4 @@ +--- # local-config: referenced, but not emitted by kustomize apiVersion: v1 kind: ConfigMap @@ -42,7 +43,7 @@ data: iface: enp6s0 mtu: 1500 lb_addresses: - - 192.168.122.80-192.168.122.90 + - 192.168.122.80-192.168.122.90 endpoint_annotations: metallb.universe.tf/address-pool: ctlplane metallb.universe.tf/allow-shared-ip: ctlplane @@ -75,12 +76,12 @@ data: vlan: 20 base_iface: enp6s0 lb_addresses: - - 172.17.0.80-172.17.0.90 + - 172.17.0.80-172.17.0.90 endpoint_annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.80 - net-attach-def: | + net-attach-def: | { "cniVersion": "0.3.1", "name": "internalapi", @@ -108,7 +109,7 @@ data: vlan: 21 base_iface: enp6s0 lb_addresses: - - 172.18.0.80-172.18.0.90 + - 172.18.0.80-172.18.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -137,7 +138,7 @@ data: vlan: 22 base_iface: enp6s0 lb_addresses: - - 172.19.0.80-172.19.0.90 + - 172.19.0.80-172.19.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -183,9 +184,9 @@ data: routes: config: - - destination: 192.168.122.0/24 - next-hop-address: 192.168.122.1 - next-hop-interface: enp6s0 + - destination: 192.168.122.0/24 + next-hop-address: 192.168.122.1 + next-hop-interface: enp6s0 rabbitmq: endpoint_annotations: diff --git a/examples/va/nfv/ovs-dpdk-sriov/service-values.yaml b/examples/va/nfv/ovs-dpdk-sriov/service-values.yaml index 1bb0b3782..0c8584c18 100644 --- a/examples/va/nfv/ovs-dpdk-sriov/service-values.yaml +++ b/examples/va/nfv/ovs-dpdk-sriov/service-values.yaml @@ -6,7 +6,7 @@ # - change numa_nodes in the neutron and neutron_tunnel section # based on DPDK NIC's and NUMA alignment in the OvS DPDK & SRIOV compute node. # - +--- apiVersion: v1 kind: ConfigMap metadata: @@ -35,7 +35,7 @@ data: ovn: ovnController: nicMappings: - datacentre: enp4s0 # CHANGEME + datacentre: enp4s0 # CHANGEME glance: customServiceConfig: | [DEFAULT] @@ -58,4 +58,3 @@ data: template: ceilometer: enabled: true - diff --git a/examples/va/nfv/ovs-dpdk/edpm/kustomization.yaml b/examples/va/nfv/ovs-dpdk/edpm/kustomization.yaml index 4c125740e..1319d8b06 100644 --- a/examples/va/nfv/ovs-dpdk/edpm/kustomization.yaml +++ b/examples/va/nfv/ovs-dpdk/edpm/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/nfv/ovs-dpdk/edpm/values.yaml b/examples/va/nfv/ovs-dpdk/edpm/values.yaml index 0cbf03838..100e14184 100644 --- a/examples/va/nfv/ovs-dpdk/edpm/values.yaml +++ b/examples/va/nfv/ovs-dpdk/edpm/values.yaml @@ -1,4 +1,6 @@ +# yamllint disable rule:line-length # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -9,11 +11,11 @@ data: root_password: cmVkaGF0Cg== preProvisioned: false baremetalSetTemplate: - ctlplaneInterface: eno2 #CHANGEME + ctlplaneInterface: eno2 # CHANGEME cloudUserName: cloud-admin - provisioningInterface: enp1s0 #CHANGEME + provisioningInterface: enp1s0 # CHANGEME bmhLabelSelector: - app: openstack #CHANGEME + app: openstack # CHANGEME passwordSecret: name: baremetalset-password-secret namespace: openstack @@ -31,7 +33,8 @@ data: ansibleVars: # CHANGEME -- see https://access.redhat.com/solutions/253273 # edpm_bootstrap_command: | - # subscription-manager register --username --password + # subscription-manager register --username \ + # --password # podman login -u -p registry.redhat.io service_net_map: nova_api_network: internalapi @@ -49,18 +52,18 @@ data: edpm_ovs_dpdk_socket_memory: "4096" edpm_ovs_dpdk_memory_channels: "4" edpm_ovs_dpdk_vhost_postcopy_support: "true" - edpm_ovn_bridge_mappings: ['dpdk2:br-link2','dpdk1:br-link1'] + edpm_ovn_bridge_mappings: ['dpdk2:br-link2', 'dpdk1:br-link1'] # edpm_network_config # These vars are edpm_network_config role vars edpm_network_config_hide_sensitive_logs: false edpm_network_config_os_net_config_mappings: # Need to provide nic mapping based on system uuid or system product name # here used systetm uuid - edpm-compute-0: # CHANGEME - nic1: 6c:fe:54:3f:8a:01 # CHANGEME - nic2: 6c:fe:54:3f:8a:02 # CHANGEME - nic3: 6c:fe:54:3f:8a:03 # CHANGEME - nic4: 6c:fe:54:3f:8a:04 # CHANGEME + edpm-compute-0: # CHANGEME + nic1: 6c:fe:54:3f:8a:01 # CHANGEME + nic2: 6c:fe:54:3f:8a:02 # CHANGEME + nic3: 6c:fe:54:3f:8a:03 # CHANGEME + nic4: 6c:fe:54:3f:8a:04 # CHANGEME edpm_network_config_template: | --- {% set mtu_list = [ctlplane_mtu] %} @@ -148,20 +151,20 @@ data: edpm-compute-1: hostName: edpm-compute-1 services: - - bootstrap - - download-cache - - reboot-os - - configure-ovs-dpdk - - configure-network - - validate-network - - install-os - - configure-os - - run-os - - ovn - - neutron-metadata - - libvirt - - nova-custom-ovsdpdk - - telemetry + - bootstrap + - download-cache + - reboot-os + - configure-ovs-dpdk + - configure-network + - validate-network + - install-os + - configure-os + - run-os + - ovn + - neutron-metadata + - libvirt + - nova-custom-ovsdpdk + - telemetry nova: compute: conf: | diff --git a/examples/va/nfv/ovs-dpdk/kustomization.yaml b/examples/va/nfv/ovs-dpdk/kustomization.yaml index ad84989f2..3db4d734b 100644 --- a/examples/va/nfv/ovs-dpdk/kustomization.yaml +++ b/examples/va/nfv/ovs-dpdk/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/nfv/ovs-dpdk/nncp/kustomization.yaml b/examples/va/nfv/ovs-dpdk/nncp/kustomization.yaml index 9eebd2367..c92bc55fa 100644 --- a/examples/va/nfv/ovs-dpdk/nncp/kustomization.yaml +++ b/examples/va/nfv/ovs-dpdk/nncp/kustomization.yaml @@ -1,20 +1,21 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization 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 + # 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/nncp diff --git a/examples/va/nfv/ovs-dpdk/nncp/values.yaml b/examples/va/nfv/ovs-dpdk/nncp/values.yaml index 8a716e7ce..f59107eed 100644 --- a/examples/va/nfv/ovs-dpdk/nncp/values.yaml +++ b/examples/va/nfv/ovs-dpdk/nncp/values.yaml @@ -1,3 +1,4 @@ +--- # local-config: referenced, but not emitted by kustomize apiVersion: v1 kind: ConfigMap @@ -42,7 +43,7 @@ data: iface: enp6s0 mtu: 1500 lb_addresses: - - 192.168.122.80-192.168.122.90 + - 192.168.122.80-192.168.122.90 endpoint_annotations: metallb.universe.tf/address-pool: ctlplane metallb.universe.tf/allow-shared-ip: ctlplane @@ -75,12 +76,12 @@ data: vlan: 20 base_iface: enp6s0 lb_addresses: - - 172.17.0.80-172.17.0.90 + - 172.17.0.80-172.17.0.90 endpoint_annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.80 - net-attach-def: | + net-attach-def: | { "cniVersion": "0.3.1", "name": "internalapi", @@ -108,7 +109,7 @@ data: vlan: 21 base_iface: enp6s0 lb_addresses: - - 172.18.0.80-172.18.0.90 + - 172.18.0.80-172.18.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -137,7 +138,7 @@ data: vlan: 22 base_iface: enp6s0 lb_addresses: - - 172.19.0.80-172.19.0.90 + - 172.19.0.80-172.19.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -183,9 +184,9 @@ data: routes: config: - - destination: 192.168.122.0/24 - next-hop-address: 192.168.122.1 - next-hop-interface: enp6s0 + - destination: 192.168.122.0/24 + next-hop-address: 192.168.122.1 + next-hop-interface: enp6s0 rabbitmq: endpoint_annotations: diff --git a/examples/va/nfv/ovs-dpdk/service-values.yaml b/examples/va/nfv/ovs-dpdk/service-values.yaml index e507d0abf..e3df4c302 100644 --- a/examples/va/nfv/ovs-dpdk/service-values.yaml +++ b/examples/va/nfv/ovs-dpdk/service-values.yaml @@ -6,7 +6,7 @@ # - change numa_nodes in the neutron and neutron_tunnel section # based on DPDK NIC's and NUMA alignment in the OvS DPDK compute node. # - +--- apiVersion: v1 kind: ConfigMap metadata: @@ -35,7 +35,7 @@ data: ovn: ovnController: nicMappings: - datacentre: enp4s0 # CHANGEME + datacentre: enp4s0 # CHANGEME glance: customServiceConfig: | [DEFAULT] diff --git a/examples/va/nfv/sriov/edpm/kustomization.yaml b/examples/va/nfv/sriov/edpm/kustomization.yaml index a0baa57c5..77e9db3ca 100644 --- a/examples/va/nfv/sriov/edpm/kustomization.yaml +++ b/examples/va/nfv/sriov/edpm/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/nfv/sriov/edpm/values.yaml b/examples/va/nfv/sriov/edpm/values.yaml index 700ad4959..8884996f7 100644 --- a/examples/va/nfv/sriov/edpm/values.yaml +++ b/examples/va/nfv/sriov/edpm/values.yaml @@ -1,4 +1,6 @@ +# yamllint disable rule:line-length # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -9,11 +11,11 @@ data: root_password: cmVkaGF0Cg== preProvisioned: false baremetalSetTemplate: - ctlplaneInterface: eno2 #CHANGEME + ctlplaneInterface: eno2 # CHANGEME cloudUserName: cloud-admin - provisioningInterface: enp1s0 #CHANGEME + provisioningInterface: enp1s0 # CHANGEME bmhLabelSelector: - app: openstack #CHANGEME + app: openstack # CHANGEME passwordSecret: name: baremetalset-password-secret namespace: openstack @@ -47,11 +49,11 @@ data: edpm_network_config_hide_sensitive_logs: false edpm_network_config_os_net_config_mappings: edpm-compute-0: - nic2: 6c:fe:54:3f:8a:02 # CHANGEME - nic3: 6c:fe:54:3f:8a:03 # CHANGEME + nic2: 6c:fe:54:3f:8a:02 # CHANGEME + nic3: 6c:fe:54:3f:8a:03 # CHANGEME edpm-compute-1: - nic2: 6b:fe:54:3f:8a:02 # CHANGEME - nic3: 6b:fe:54:3f:8a:03 # CHANGEME + nic2: 6b:fe:54:3f:8a:02 # CHANGEME + nic3: 6b:fe:54:3f:8a:03 # CHANGEME edpm_network_config_template: | --- {% set mtu_list = [ctlplane_mtu] %} @@ -124,19 +126,19 @@ data: edpm-compute-1: hostName: edpm-compute-1 services: - - bootstrap - - download-cache - - configure-network - - validate-network - - install-os - - configure-os - - run-os - - reboot-os - - libvirt - - ovn - - nova-custom-sriov - - neutron-sriov - - neutron-metadata + - bootstrap + - download-cache + - configure-network + - validate-network + - install-os + - configure-os + - run-os + - reboot-os + - libvirt + - ovn + - nova-custom-sriov + - neutron-sriov + - neutron-metadata nova: compute: conf: | diff --git a/examples/va/nfv/sriov/kustomization.yaml b/examples/va/nfv/sriov/kustomization.yaml index 94f87d295..a4c51b785 100644 --- a/examples/va/nfv/sriov/kustomization.yaml +++ b/examples/va/nfv/sriov/kustomization.yaml @@ -1,3 +1,4 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization diff --git a/examples/va/nfv/sriov/nncp/kustomization.yaml b/examples/va/nfv/sriov/nncp/kustomization.yaml index eed010de4..c92bc55fa 100644 --- a/examples/va/nfv/sriov/nncp/kustomization.yaml +++ b/examples/va/nfv/sriov/nncp/kustomization.yaml @@ -1,24 +1,24 @@ +--- apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization 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 + # 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/nncp resources: - values.yaml - diff --git a/examples/va/nfv/sriov/nncp/values.yaml b/examples/va/nfv/sriov/nncp/values.yaml index 8a716e7ce..963825bdb 100644 --- a/examples/va/nfv/sriov/nncp/values.yaml +++ b/examples/va/nfv/sriov/nncp/values.yaml @@ -1,4 +1,5 @@ # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -42,7 +43,7 @@ data: iface: enp6s0 mtu: 1500 lb_addresses: - - 192.168.122.80-192.168.122.90 + - 192.168.122.80-192.168.122.90 endpoint_annotations: metallb.universe.tf/address-pool: ctlplane metallb.universe.tf/allow-shared-ip: ctlplane @@ -75,12 +76,12 @@ data: vlan: 20 base_iface: enp6s0 lb_addresses: - - 172.17.0.80-172.17.0.90 + - 172.17.0.80-172.17.0.90 endpoint_annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.80 - net-attach-def: | + net-attach-def: | { "cniVersion": "0.3.1", "name": "internalapi", @@ -108,7 +109,7 @@ data: vlan: 21 base_iface: enp6s0 lb_addresses: - - 172.18.0.80-172.18.0.90 + - 172.18.0.80-172.18.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -137,7 +138,7 @@ data: vlan: 22 base_iface: enp6s0 lb_addresses: - - 172.19.0.80-172.19.0.90 + - 172.19.0.80-172.19.0.90 net-attach-def: | { "cniVersion": "0.3.1", @@ -183,9 +184,9 @@ data: routes: config: - - destination: 192.168.122.0/24 - next-hop-address: 192.168.122.1 - next-hop-interface: enp6s0 + - destination: 192.168.122.0/24 + next-hop-address: 192.168.122.1 + next-hop-interface: enp6s0 rabbitmq: endpoint_annotations: diff --git a/examples/va/nfv/sriov/service-values.yaml b/examples/va/nfv/sriov/service-values.yaml index b83ed96d7..8178b563f 100644 --- a/examples/va/nfv/sriov/service-values.yaml +++ b/examples/va/nfv/sriov/service-values.yaml @@ -1,4 +1,5 @@ # local-config: referenced, but not emitted by kustomize +--- apiVersion: v1 kind: ConfigMap metadata: @@ -15,7 +16,7 @@ data: ovn: ovnController: nicMappings: - datacentre: enp4s0 # CHANGEME + datacentre: enp4s0 # CHANGEME glance: customServiceConfig: | [DEFAULT] diff --git a/lib/control-plane/kustomization.yaml b/lib/control-plane/kustomization.yaml index 1f928ee98..d8a024fa4 100644 --- a/lib/control-plane/kustomization.yaml +++ b/lib/control-plane/kustomization.yaml @@ -1,121 +1,122 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component secretGenerator: -- name: osp-secret - behavior: create - envs: - - osp-secrets.env - options: - disableNameSuffixHash: true + - name: osp-secret + behavior: create + envs: + - osp-secrets.env + options: + disableNameSuffixHash: true resources: -- openstackcontrolplane.yaml + - openstackcontrolplane.yaml replacements: -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.endpoint_annotations - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.cinder.template.cinderAPI.override.service.internal.metadata.annotations - - spec.glance.template.glanceAPIs.default.override.service.internal.metadata.annotations - - spec.heat.template.heatAPI.override.service.internal.metadata.annotations - - spec.heat.template.heatEngine.override.service.internal.metadata.annotations - - spec.keystone.template.override.service.internal.metadata.annotations - - spec.manila.template.manilaAPI.override.service.internal.metadata.annotations - - spec.neutron.template.override.service.internal.metadata.annotations - - spec.nova.template.apiServiceTemplate.override.service.internal.metadata.annotations - - spec.nova.template.metadataServiceTemplate.override.service.metadata.annotations - - spec.placement.template.override.service.internal.metadata.annotations - - spec.swift.template.swiftProxy.override.service.internal.metadata.annotations - options: - create: true -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.endpoint_annotations - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.dns.template.override.service.metadata.annotations - options: - create: true -- source: - kind: ConfigMap - name: network-values - fieldPath: data.rabbitmq.endpoint_annotations - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.rabbitmq.templates.rabbitmq.override.service.metadata.annotations - options: - create: true -- source: - kind: ConfigMap - name: network-values - fieldPath: data.rabbitmq-cell1.endpoint_annotations - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.rabbitmq.templates.rabbitmq-cell1.override.service.metadata.annotations - options: - create: true -- source: - kind: ConfigMap - name: network-values - fieldPath: data.lbServiceType - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.dns.template.override.service.spec.type - - spec.cinder.template.cinderAPI.override.service.internal.spec.type - - spec.glance.template.glanceAPIs.default.override.service.internal.spec.type - - spec.heat.template.heatAPI.override.service.internal.spec.type - - spec.heat.template.heatEngine.override.service.internal.spec.type - - spec.keystone.template.override.service.internal.spec.type - - spec.manila.template.manilaAPI.override.service.internal.spec.type - - spec.neutron.template.override.service.internal.spec.type - - spec.nova.template.apiServiceTemplate.override.service.internal.spec.type - - spec.nova.template.metadataServiceTemplate.override.service.spec.type - - spec.placement.template.override.service.internal.spec.type - - spec.swift.template.swiftProxy.override.service.internal.spec.type - - spec.rabbitmq.templates.rabbitmq.override.service.spec.type - - spec.rabbitmq.templates.rabbitmq-cell1.override.service.spec.type - options: - create: true -- source: - kind: ConfigMap - name: network-values - fieldPath: data.dns-resolver.options - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.dns.template.options -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storageClass - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.storageClass - - spec.glance.template.storageClass -- source: - kind: ConfigMap - name: network-values - fieldPath: data.bridgeName - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.ovn.template.ovnController.nicMappings.datacentre + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.endpoint_annotations + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.cinder.template.cinderAPI.override.service.internal.metadata.annotations + - spec.glance.template.glanceAPIs.default.override.service.internal.metadata.annotations + - spec.heat.template.heatAPI.override.service.internal.metadata.annotations + - spec.heat.template.heatEngine.override.service.internal.metadata.annotations + - spec.keystone.template.override.service.internal.metadata.annotations + - spec.manila.template.manilaAPI.override.service.internal.metadata.annotations + - spec.neutron.template.override.service.internal.metadata.annotations + - spec.nova.template.apiServiceTemplate.override.service.internal.metadata.annotations + - spec.nova.template.metadataServiceTemplate.override.service.metadata.annotations + - spec.placement.template.override.service.internal.metadata.annotations + - spec.swift.template.swiftProxy.override.service.internal.metadata.annotations + options: + create: true + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.endpoint_annotations + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.dns.template.override.service.metadata.annotations + options: + create: true + - source: + kind: ConfigMap + name: network-values + fieldPath: data.rabbitmq.endpoint_annotations + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.rabbitmq.templates.rabbitmq.override.service.metadata.annotations + options: + create: true + - source: + kind: ConfigMap + name: network-values + fieldPath: data.rabbitmq-cell1.endpoint_annotations + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.rabbitmq.templates.rabbitmq-cell1.override.service.metadata.annotations + options: + create: true + - source: + kind: ConfigMap + name: network-values + fieldPath: data.lbServiceType + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.dns.template.override.service.spec.type + - spec.cinder.template.cinderAPI.override.service.internal.spec.type + - spec.glance.template.glanceAPIs.default.override.service.internal.spec.type + - spec.heat.template.heatAPI.override.service.internal.spec.type + - spec.heat.template.heatEngine.override.service.internal.spec.type + - spec.keystone.template.override.service.internal.spec.type + - spec.manila.template.manilaAPI.override.service.internal.spec.type + - spec.neutron.template.override.service.internal.spec.type + - spec.nova.template.apiServiceTemplate.override.service.internal.spec.type + - spec.nova.template.metadataServiceTemplate.override.service.spec.type + - spec.placement.template.override.service.internal.spec.type + - spec.swift.template.swiftProxy.override.service.internal.spec.type + - spec.rabbitmq.templates.rabbitmq.override.service.spec.type + - spec.rabbitmq.templates.rabbitmq-cell1.override.service.spec.type + options: + create: true + - source: + kind: ConfigMap + name: network-values + fieldPath: data.dns-resolver.options + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.dns.template.options + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storageClass + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.storageClass + - spec.glance.template.storageClass + - source: + kind: ConfigMap + name: network-values + fieldPath: data.bridgeName + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.ovn.template.ovnController.nicMappings.datacentre diff --git a/lib/control-plane/openstackcontrolplane.yaml b/lib/control-plane/openstackcontrolplane.yaml index b946d3619..99dee0fbe 100644 --- a/lib/control-plane/openstackcontrolplane.yaml +++ b/lib/control-plane/openstackcontrolplane.yaml @@ -1,3 +1,4 @@ +--- apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane metadata: diff --git a/lib/dataplane/dataplane-ssh-secret.yaml b/lib/dataplane/dataplane-ssh-secret.yaml index e4dfbafa5..4e5913196 100644 --- a/lib/dataplane/dataplane-ssh-secret.yaml +++ b/lib/dataplane/dataplane-ssh-secret.yaml @@ -1,3 +1,4 @@ +--- apiVersion: v1 data: authorized_keys: _replaced_ diff --git a/lib/dataplane/kustomization.yaml b/lib/dataplane/kustomization.yaml index 5c9ec4207..df071a410 100644 --- a/lib/dataplane/kustomization.yaml +++ b/lib/dataplane/kustomization.yaml @@ -1,119 +1,120 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- dataplane-ssh-secret.yaml -- nova-migration-ssh-secret.yaml -- openstackdataplanenodeset.yaml -- openstackdataplanedeployment.yaml + - dataplane-ssh-secret.yaml + - nova-migration-ssh-secret.yaml + - openstackdataplanenodeset.yaml + - openstackdataplanedeployment.yaml # OpenStackDataPlaneNodeSet customizations replacements: -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nodeset.ansible - targets: - - select: - kind: OpenStackDataPlaneNodeSet - fieldPaths: - - spec.nodeTemplate.ansible - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nodeset.networks - targets: - - select: - kind: OpenStackDataPlaneNodeSet - fieldPaths: - - spec.nodeTemplate.networks - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nodeset.nodes - targets: - - select: - kind: OpenStackDataPlaneNodeSet - fieldPaths: - - spec.nodes - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nodeset.services - targets: - - select: - kind: OpenStackDataPlaneNodeSet - fieldPaths: - - spec.services - options: - create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nodeset.ansible + targets: + - select: + kind: OpenStackDataPlaneNodeSet + fieldPaths: + - spec.nodeTemplate.ansible + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nodeset.networks + targets: + - select: + kind: OpenStackDataPlaneNodeSet + fieldPaths: + - spec.nodeTemplate.networks + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nodeset.nodes + targets: + - select: + kind: OpenStackDataPlaneNodeSet + fieldPaths: + - spec.nodes + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nodeset.services + targets: + - select: + kind: OpenStackDataPlaneNodeSet + fieldPaths: + - spec.services + options: + create: true -# Dataplane SSH access secret customizations -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.ssh_keys.authorized - targets: - - select: - kind: Secret - name: dataplane-ansible-ssh-private-key-secret - fieldPaths: - - data.authorized_keys - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.ssh_keys.private - targets: - - select: - kind: Secret - name: dataplane-ansible-ssh-private-key-secret - fieldPaths: - - data.ssh-privatekey - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.ssh_keys.public - targets: - - select: - kind: Secret - name: dataplane-ansible-ssh-private-key-secret - fieldPaths: - - data.ssh-publickey - options: - create: true + # Dataplane SSH access secret customizations + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.ssh_keys.authorized + targets: + - select: + kind: Secret + name: dataplane-ansible-ssh-private-key-secret + fieldPaths: + - data.authorized_keys + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.ssh_keys.private + targets: + - select: + kind: Secret + name: dataplane-ansible-ssh-private-key-secret + fieldPaths: + - data.ssh-privatekey + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.ssh_keys.public + targets: + - select: + kind: Secret + name: dataplane-ansible-ssh-private-key-secret + fieldPaths: + - data.ssh-publickey + options: + create: true -# Nova migration secret customizations -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.migration.ssh_keys.private - targets: - - select: - kind: Secret - name: nova-migration-ssh-key - fieldPaths: - - data.ssh-privatekey - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.migration.ssh_keys.public - targets: - - select: - kind: Secret - name: nova-migration-ssh-key - fieldPaths: - - data.ssh-publickey - options: - create: true + # Nova migration secret customizations + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nova.migration.ssh_keys.private + targets: + - select: + kind: Secret + name: nova-migration-ssh-key + fieldPaths: + - data.ssh-privatekey + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nova.migration.ssh_keys.public + targets: + - select: + kind: Secret + name: nova-migration-ssh-key + fieldPaths: + - data.ssh-publickey + options: + create: true diff --git a/lib/dataplane/nova-migration-ssh-secret.yaml b/lib/dataplane/nova-migration-ssh-secret.yaml index 33ec3e00b..a9d15e0b6 100644 --- a/lib/dataplane/nova-migration-ssh-secret.yaml +++ b/lib/dataplane/nova-migration-ssh-secret.yaml @@ -1,3 +1,4 @@ +--- apiVersion: v1 data: ssh-privatekey: _replaced_ diff --git a/lib/dataplane/openstackdataplanedeployment.yaml b/lib/dataplane/openstackdataplanedeployment.yaml index f207fa33b..b98bbbc7c 100644 --- a/lib/dataplane/openstackdataplanedeployment.yaml +++ b/lib/dataplane/openstackdataplanedeployment.yaml @@ -1,3 +1,4 @@ +--- apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneDeployment metadata: @@ -5,4 +6,4 @@ metadata: namespace: openstack spec: nodeSets: - - openstack-edpm + - openstack-edpm diff --git a/lib/dataplane/openstackdataplanenodeset.yaml b/lib/dataplane/openstackdataplanenodeset.yaml index 9e89419b0..dd2d11c46 100644 --- a/lib/dataplane/openstackdataplanenodeset.yaml +++ b/lib/dataplane/openstackdataplanenodeset.yaml @@ -1,3 +1,4 @@ +--- apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneNodeSet metadata: diff --git a/lib/metallb/kustomization.yaml b/lib/metallb/kustomization.yaml index 3cde4b6ba..4b5b1ee80 100644 --- a/lib/metallb/kustomization.yaml +++ b/lib/metallb/kustomization.yaml @@ -1,5 +1,6 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- metallb_deploy.yaml + - metallb_deploy.yaml diff --git a/lib/metallb/metallb_deploy.yaml b/lib/metallb/metallb_deploy.yaml index eaceb8832..63de1423a 100644 --- a/lib/metallb/metallb_deploy.yaml +++ b/lib/metallb/metallb_deploy.yaml @@ -1,3 +1,4 @@ +--- apiVersion: metallb.io/v1beta1 kind: MetalLB metadata: diff --git a/lib/networking/kustomization.yaml b/lib/networking/kustomization.yaml index e34934ba8..eba173e8e 100644 --- a/lib/networking/kustomization.yaml +++ b/lib/networking/kustomization.yaml @@ -1,357 +1,358 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- metallb_l2advertisement.yaml -- ocp_networks_netattach.yaml -- ocp_ip_pools.yaml -- netconfig.yaml + - metallb_l2advertisement.yaml + - ocp_networks_netattach.yaml + - ocp_ip_pools.yaml + - netconfig.yaml patches: -- target: - kind: NetworkAttachmentDefinition - labelSelector: "osp/net-attach-def-type=standard" - path: ocp_network_template.yaml -- target: - kind: IPAddressPool - labelSelector: "osp/lb-addresses-type=standard" - path: ocp_ip_pool_template.yaml + - target: + kind: NetworkAttachmentDefinition + labelSelector: "osp/net-attach-def-type=standard" + path: ocp_network_template.yaml + - target: + kind: IPAddressPool + labelSelector: "osp/lb-addresses-type=standard" + path: ocp_ip_pool_template.yaml replacements: -# NetworkAttachmentDefinition JSON config -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.net-attach-def - targets: - - select: - kind: NetworkAttachmentDefinition - name: ctlplane - fieldPaths: - - spec.config -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.net-attach-def - targets: - - select: - kind: NetworkAttachmentDefinition - name: internalapi - fieldPaths: - - spec.config -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.net-attach-def - targets: - - select: - kind: NetworkAttachmentDefinition - name: storage - fieldPaths: - - spec.config -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.net-attach-def - targets: - - select: - kind: NetworkAttachmentDefinition - name: tenant - fieldPaths: - - spec.config -- source: - kind: ConfigMap - name: network-values - fieldPath: data.datacentre.net-attach-def - targets: - - select: - kind: NetworkAttachmentDefinition - name: datacentre - fieldPaths: - - spec.config + # NetworkAttachmentDefinition JSON config + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: ctlplane + fieldPaths: + - spec.config + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: internalapi + fieldPaths: + - spec.config + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: storage + fieldPaths: + - spec.config + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: tenant + fieldPaths: + - spec.config + - source: + kind: ConfigMap + name: network-values + fieldPath: data.datacentre.net-attach-def + targets: + - select: + kind: NetworkAttachmentDefinition + name: datacentre + fieldPaths: + - spec.config -# IPAddressPool addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.lb_addresses - targets: - - select: - kind: IPAddressPool - name: ctlplane - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.lb_addresses - targets: - - select: - kind: IPAddressPool - name: internalapi - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.lb_addresses - targets: - - select: - kind: IPAddressPool - name: storage - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.lb_addresses - targets: - - select: - kind: IPAddressPool - name: tenant - fieldPaths: - - spec.addresses + # IPAddressPool addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.lb_addresses + targets: + - select: + kind: IPAddressPool + name: ctlplane + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.lb_addresses + targets: + - select: + kind: IPAddressPool + name: internalapi + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.lb_addresses + targets: + - select: + kind: IPAddressPool + name: storage + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.lb_addresses + targets: + - select: + kind: IPAddressPool + name: tenant + fieldPaths: + - spec.addresses -# Loadbalancer address pools -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.lb_addresses - targets: - - select: - group: metallb.io - kind: IPAddressPool - name: ctlplane - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.lb_addresses - targets: - - select: - group: metallb.io - kind: IPAddressPool - name: internalapi - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.lb_addresses - targets: - - select: - group: metallb.io - kind: IPAddressPool - name: tenant - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.lb_addresses - targets: - - select: - group: metallb.io - kind: IPAddressPool - name: ctlplane - fieldPaths: - - spec.addresses -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.lb_addresses - targets: - - select: - group: metallb.io - kind: IPAddressPool - name: storage - fieldPaths: - - spec.addresses + # Loadbalancer address pools + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.lb_addresses + targets: + - select: + group: metallb.io + kind: IPAddressPool + name: ctlplane + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.lb_addresses + targets: + - select: + group: metallb.io + kind: IPAddressPool + name: internalapi + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.lb_addresses + targets: + - select: + group: metallb.io + kind: IPAddressPool + name: tenant + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.lb_addresses + targets: + - select: + group: metallb.io + kind: IPAddressPool + name: ctlplane + fieldPaths: + - spec.addresses + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.lb_addresses + targets: + - select: + group: metallb.io + kind: IPAddressPool + name: storage + fieldPaths: + - spec.addresses -# Loadbalancer interfaces -- source: - kind: ConfigMap - name: network-values - fieldPath: data.bridgeName - targets: - - select: - group: metallb.io - kind: L2Advertisement - name: ctlplane - fieldPaths: - - spec.interfaces.0 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.iface - targets: - - select: - group: metallb.io - kind: L2Advertisement - name: tenant - fieldPaths: - - spec.interfaces.0 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.iface - targets: - - select: - group: metallb.io - kind: L2Advertisement - name: storage - fieldPaths: - - spec.interfaces.0 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.iface - targets: - - select: - group: metallb.io - kind: L2Advertisement - name: internalapi - fieldPaths: - - spec.interfaces.0 + # Loadbalancer interfaces + - source: + kind: ConfigMap + name: network-values + fieldPath: data.bridgeName + targets: + - select: + group: metallb.io + kind: L2Advertisement + name: ctlplane + fieldPaths: + - spec.interfaces.0 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.iface + targets: + - select: + group: metallb.io + kind: L2Advertisement + name: tenant + fieldPaths: + - spec.interfaces.0 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.iface + targets: + - select: + group: metallb.io + kind: L2Advertisement + name: storage + fieldPaths: + - spec.interfaces.0 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.iface + targets: + - select: + group: metallb.io + kind: L2Advertisement + name: internalapi + fieldPaths: + - spec.interfaces.0 -# NetConfig dnsDomain -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.dnsDomain - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=CtlPlane].dnsDomain -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.dnsDomain - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=InternalApi].dnsDomain -- source: - kind: ConfigMap - name: network-values - fieldPath: data.external.dnsDomain - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=External].dnsDomain -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.dnsDomain - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=Storage].dnsDomain -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.dnsDomain - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=Tenant].dnsDomain + # NetConfig dnsDomain + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.dnsDomain + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=CtlPlane].dnsDomain + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.dnsDomain + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=InternalApi].dnsDomain + - source: + kind: ConfigMap + name: network-values + fieldPath: data.external.dnsDomain + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=External].dnsDomain + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.dnsDomain + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=Storage].dnsDomain + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.dnsDomain + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=Tenant].dnsDomain -# NetConfig MTU -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.mtu - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=CtlPlane].mtu -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.mtu - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=InternalApi].mtu -- source: - kind: ConfigMap - name: network-values - fieldPath: data.external.mtu - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=External].mtu -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.mtu - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=Storage].mtu -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.mtu - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=Tenant].mtu + # NetConfig MTU + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.mtu + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=CtlPlane].mtu + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.mtu + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=InternalApi].mtu + - source: + kind: ConfigMap + name: network-values + fieldPath: data.external.mtu + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=External].mtu + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.mtu + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=Storage].mtu + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.mtu + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=Tenant].mtu -# NetConfig subnets -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.subnets - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=CtlPlane].subnets -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.subnets - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=InternalApi].subnets -- source: - kind: ConfigMap - name: network-values - fieldPath: data.external.subnets - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=External].subnets -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.subnets - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=Storage].subnets -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.subnets - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=Tenant].subnets + # NetConfig subnets + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.subnets + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=CtlPlane].subnets + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.subnets + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=InternalApi].subnets + - source: + kind: ConfigMap + name: network-values + fieldPath: data.external.subnets + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=External].subnets + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.subnets + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=Storage].subnets + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.subnets + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=Tenant].subnets diff --git a/lib/networking/metallb_l2advertisement.yaml b/lib/networking/metallb_l2advertisement.yaml index c693c0af7..6d80de936 100644 --- a/lib/networking/metallb_l2advertisement.yaml +++ b/lib/networking/metallb_l2advertisement.yaml @@ -10,9 +10,9 @@ metadata: namespace: metallb-system spec: ipAddressPools: - - ctlplane + - ctlplane interfaces: - - _replaced_ + - _replaced_ --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement @@ -21,9 +21,9 @@ metadata: namespace: metallb-system spec: ipAddressPools: - - internalapi + - internalapi interfaces: - - _replaced_ + - _replaced_ --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement @@ -32,9 +32,9 @@ metadata: namespace: metallb-system spec: ipAddressPools: - - storage + - storage interfaces: - - _replaced_ + - _replaced_ --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement @@ -43,6 +43,6 @@ metadata: namespace: metallb-system spec: ipAddressPools: - - tenant + - tenant interfaces: - - _replaced_ + - _replaced_ diff --git a/lib/networking/netconfig.yaml b/lib/networking/netconfig.yaml index 5c209a428..0f3a17f88 100644 --- a/lib/networking/netconfig.yaml +++ b/lib/networking/netconfig.yaml @@ -1,3 +1,4 @@ +--- apiVersion: network.openstack.org/v1beta1 kind: NetConfig metadata: diff --git a/lib/networking/ocp_ip_pool_template.yaml b/lib/networking/ocp_ip_pool_template.yaml index fcefc04c2..e755d9f31 100644 --- a/lib/networking/ocp_ip_pool_template.yaml +++ b/lib/networking/ocp_ip_pool_template.yaml @@ -1,3 +1,4 @@ +--- apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: diff --git a/lib/networking/ocp_network_template.yaml b/lib/networking/ocp_network_template.yaml index ba68d1ac0..29f6deaf6 100644 --- a/lib/networking/ocp_network_template.yaml +++ b/lib/networking/ocp_network_template.yaml @@ -1,3 +1,4 @@ +--- apiVersion: nmstate.io/v1 kind: NetworkAttachmentDefinition metadata: diff --git a/lib/nmstate/kustomization.yaml b/lib/nmstate/kustomization.yaml index e85b97d16..d86b73a47 100644 --- a/lib/nmstate/kustomization.yaml +++ b/lib/nmstate/kustomization.yaml @@ -1,5 +1,6 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- nmstate_deploy.yaml + - nmstate_deploy.yaml diff --git a/lib/nmstate/nmstate_deploy.yaml b/lib/nmstate/nmstate_deploy.yaml index cbba0c6c1..7a648e771 100644 --- a/lib/nmstate/nmstate_deploy.yaml +++ b/lib/nmstate/nmstate_deploy.yaml @@ -1,3 +1,4 @@ +--- apiVersion: nmstate.io/v1 kind: NMState metadata: diff --git a/lib/nncp/kustomization.yaml b/lib/nncp/kustomization.yaml index 23e772bc7..6f5a14e1f 100644 --- a/lib/nncp/kustomization.yaml +++ b/lib/nncp/kustomization.yaml @@ -1,444 +1,445 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- ocp_nodes_nncp.yaml + - ocp_nodes_nncp.yaml patches: -- target: - kind: NodeNetworkConfigurationPolicy - labelSelector: "osp/nncm-config-type=standard" - path: ocp_node_template.yaml + - target: + kind: NodeNetworkConfigurationPolicy + labelSelector: "osp/nncm-config-type=standard" + path: ocp_node_template.yaml replacements: -# Common network interfaces and vlans -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.base_iface - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].vlan.base-iface -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.vlan - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].vlan.id -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.mtu - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].mtu -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.base_iface - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].vlan.base-iface -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.vlan - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].vlan.id -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.mtu - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].mtu -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.base_iface - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=storage].vlan.base-iface -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.vlan - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=storage].vlan.id -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.mtu - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[name=storage].mtu -# ctlplane type is ethernet (not vlan) -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.iface - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[type=ethernet].name - - spec.desiredState.interfaces.[type=linux-bridge].bridge.port.0.name -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.mtu - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.interfaces.[type=ethernet].mtu - - spec.desiredState.interfaces.[type=linux-bridge].mtu + # Common network interfaces and vlans + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.base_iface + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].vlan.base-iface + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.vlan + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].vlan.id + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.mtu + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].mtu + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.base_iface + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].vlan.base-iface + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.vlan + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].vlan.id + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.mtu + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].mtu + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.base_iface + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=storage].vlan.base-iface + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.vlan + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=storage].vlan.id + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.mtu + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[name=storage].mtu + # ctlplane type is ethernet (not vlan) + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.iface + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[type=ethernet].name + - spec.desiredState.interfaces.[type=linux-bridge].bridge.port.0.name + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.mtu + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.interfaces.[type=ethernet].mtu + - spec.desiredState.interfaces.[type=linux-bridge].mtu -# Static Node IPs: node-0 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_0.internalapi_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_0.tenant_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_0.ctlplane_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_0.storage_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[name=storage].ipv4.address.0.ip + # Static Node IPs: node-0 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_0.internalapi_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_0.tenant_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_0.ctlplane_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_0.storage_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[name=storage].ipv4.address.0.ip -# Static Node IPs: node-1 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_1.internalapi_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_1.tenant_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_1.ctlplane_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_1.storage_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[name=storage].ipv4.address.0.ip + # Static Node IPs: node-1 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_1.internalapi_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_1.tenant_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_1.ctlplane_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_1.storage_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[name=storage].ipv4.address.0.ip -# Static Node IPs: node-2 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_2.internalapi_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_2.tenant_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_2.ctlplane_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.ip -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_2.storage_ip - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[name=storage].ipv4.address.0.ip + # Static Node IPs: node-2 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_2.internalapi_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_2.tenant_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_2.ctlplane_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.ip + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_2.storage_ip + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[name=storage].ipv4.address.0.ip -# prefix-length: node-0 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - spec.desiredState.interfaces.[name=storage].ipv4.address.0.prefix-length + # prefix-length: node-0 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - spec.desiredState.interfaces.[name=storage].ipv4.address.0.prefix-length -# prefix-length: node-1 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - spec.desiredState.interfaces.[name=storage].ipv4.address.0.prefix-length + # prefix-length: node-1 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - spec.desiredState.interfaces.[name=storage].ipv4.address.0.prefix-length -# prefix-length: node-2 -- source: - kind: ConfigMap - name: network-values - fieldPath: data.ctlplane.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.internalapi.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.tenant.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.prefix-length -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storage.prefix-length - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - spec.desiredState.interfaces.[name=storage].ipv4.address.0.prefix-length + # prefix-length: node-2 + - source: + kind: ConfigMap + name: network-values + fieldPath: data.ctlplane.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[type=linux-bridge].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.internalapi.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[name=internalapi].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.tenant.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[name=tenant].ipv4.address.0.prefix-length + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storage.prefix-length + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - spec.desiredState.interfaces.[name=storage].ipv4.address.0.prefix-length -# Node names -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_0.name - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-0 - fieldPaths: - - metadata.name - - spec.nodeSelector.[kubernetes.io/hostname] -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_1.name - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-1 - fieldPaths: - - metadata.name - - spec.nodeSelector.[kubernetes.io/hostname] -- source: - kind: ConfigMap - name: network-values - fieldPath: data.node_2.name - targets: - - select: - kind: NodeNetworkConfigurationPolicy - name: node-2 - fieldPaths: - - metadata.name - - spec.nodeSelector.[kubernetes.io/hostname] + # Node names + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_0.name + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-0 + fieldPaths: + - metadata.name + - spec.nodeSelector.[kubernetes.io/hostname] + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_1.name + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-1 + fieldPaths: + - metadata.name + - spec.nodeSelector.[kubernetes.io/hostname] + - source: + kind: ConfigMap + name: network-values + fieldPath: data.node_2.name + targets: + - select: + kind: NodeNetworkConfigurationPolicy + name: node-2 + fieldPaths: + - metadata.name + - spec.nodeSelector.[kubernetes.io/hostname] -# DNS -- source: - kind: ConfigMap - name: network-values - fieldPath: data.dns-resolver.config - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.dns-resolver.config + # DNS + - source: + kind: ConfigMap + name: network-values + fieldPath: data.dns-resolver.config + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.dns-resolver.config -# Routes -- source: - kind: ConfigMap - name: network-values - fieldPath: data.routes.config.0.destination - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.routes.config.0.destination -- source: - kind: ConfigMap - name: network-values - fieldPath: data.routes.config.0.next-hop-address - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.routes.config.0.next-hop-address -- source: - kind: ConfigMap - name: network-values - fieldPath: data.bridgeName - targets: - - select: - kind: NodeNetworkConfigurationPolicy - fieldPaths: - - spec.desiredState.routes.config.0.next-hop-interface - - spec.desiredState.interfaces.[type=linux-bridge].name + # Routes + - source: + kind: ConfigMap + name: network-values + fieldPath: data.routes.config.0.destination + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.routes.config.0.destination + - source: + kind: ConfigMap + name: network-values + fieldPath: data.routes.config.0.next-hop-address + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.routes.config.0.next-hop-address + - source: + kind: ConfigMap + name: network-values + fieldPath: data.bridgeName + targets: + - select: + kind: NodeNetworkConfigurationPolicy + fieldPaths: + - spec.desiredState.routes.config.0.next-hop-interface + - spec.desiredState.interfaces.[type=linux-bridge].name diff --git a/lib/nncp/ocp_node_template.yaml b/lib/nncp/ocp_node_template.yaml index 5ead36a5a..85d360d8b 100644 --- a/lib/nncp/ocp_node_template.yaml +++ b/lib/nncp/ocp_node_template.yaml @@ -1,3 +1,4 @@ +--- apiVersion: nmstate.io/v1 kind: NodeNetworkConfigurationPolicy metadata: @@ -10,83 +11,83 @@ spec: server: [] routes: config: - - destination: _replaced_ - next-hop-address: _replaced_ - next-hop-interface: _replaced_ + - destination: _replaced_ + next-hop-address: _replaced_ + next-hop-interface: _replaced_ interfaces: - - description: internalapi vlan interface - ipv4: - address: - - ip: _replaced_ - prefix-length: _replaced_ - enabled: true - dhcp: false - ipv6: - enabled: false - name: internalapi - state: up - type: vlan - vlan: - base-iface: _replaced_ - id: _replaced_ - mtu: 1500 - - description: storage vlan interface - ipv4: - address: - - ip: _replaced_ - prefix-length: _replaced_ - enabled: true - dhcp: false - ipv6: - enabled: false - name: storage - state: up - type: vlan - vlan: - base-iface: _replaced_ - id: _replaced_ - mtu: 1500 - - description: tenant vlan interface - ipv4: - address: - - ip: _replaced_ - prefix-length: _replaced_ - enabled: true - dhcp: false - ipv6: - enabled: false - name: tenant - state: up - type: vlan - vlan: - base-iface: _replaced_ - id: _replaced_ - mtu: 1500 - - description: ctlplane interface - name: _replaced_ - state: up - type: ethernet - mtu: 1500 - - description: linux-bridge over ctlplane interface - ipv4: - address: - - ip: _replaced_ - prefix-length: _replaced_ - enabled: true - dhcp: false - ipv6: - enabled: false - name: _replaced_ - state: up - type: linux-bridge - bridge: - options: - stp: - enabled: false - port: - - name: _replaced_ - vlan: {} - mtu: 1500 + - description: internalapi vlan interface + ipv4: + address: + - ip: _replaced_ + prefix-length: _replaced_ + enabled: true + dhcp: false + ipv6: + enabled: false + name: internalapi + state: up + type: vlan + vlan: + base-iface: _replaced_ + id: _replaced_ + mtu: 1500 + - description: storage vlan interface + ipv4: + address: + - ip: _replaced_ + prefix-length: _replaced_ + enabled: true + dhcp: false + ipv6: + enabled: false + name: storage + state: up + type: vlan + vlan: + base-iface: _replaced_ + id: _replaced_ + mtu: 1500 + - description: tenant vlan interface + ipv4: + address: + - ip: _replaced_ + prefix-length: _replaced_ + enabled: true + dhcp: false + ipv6: + enabled: false + name: tenant + state: up + type: vlan + vlan: + base-iface: _replaced_ + id: _replaced_ + mtu: 1500 + - description: ctlplane interface + name: _replaced_ + state: up + type: ethernet + mtu: 1500 + - description: linux-bridge over ctlplane interface + ipv4: + address: + - ip: _replaced_ + prefix-length: _replaced_ + enabled: true + dhcp: false + ipv6: + enabled: false + name: _replaced_ + state: up + type: linux-bridge + bridge: + options: + stp: + enabled: false + port: + - name: _replaced_ + vlan: {} + mtu: 1500 nodeSelector: kubernetes.io/hostname: _replaced_ node-role.kubernetes.io/worker: "" diff --git a/lib/olm-deps/cert_manager_namespace.yaml b/lib/olm-deps/cert_manager_namespace.yaml index 3ba0e703f..5e0a4e7f9 100644 --- a/lib/olm-deps/cert_manager_namespace.yaml +++ b/lib/olm-deps/cert_manager_namespace.yaml @@ -1,7 +1,8 @@ +--- apiVersion: v1 kind: Namespace metadata: - name: cert-manager-operator - labels: - pod-security.kubernetes.io/enforce: privileged - security.openshift.io/scc.podSecurityLabelSync: "false" + name: cert-manager-operator + labels: + pod-security.kubernetes.io/enforce: privileged + security.openshift.io/scc.podSecurityLabelSync: "false" diff --git a/lib/olm-deps/cert_manager_operatorgroup.yaml b/lib/olm-deps/cert_manager_operatorgroup.yaml index d2a5e6a1b..052478e7a 100644 --- a/lib/olm-deps/cert_manager_operatorgroup.yaml +++ b/lib/olm-deps/cert_manager_operatorgroup.yaml @@ -1,12 +1,14 @@ +--- apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: annotations: + # yamllint disable-line rule:line-length olm.providedAPIs: CertManager.v1alpha1.operator.openshift.io,Certificate.v1.cert-manager.io,CertificateRequest.v1.cert-manager.io,Challenge.v1.acme.cert-manager.io,ClusterIssuer.v1.cert-manager.io,Issuer.v1.cert-manager.io,Order.v1.acme.cert-manager.io generateName: cert-manager-operator- name: cert-manager-operator-bccwx namespace: cert-manager-operator spec: targetNamespaces: - - cert-manager-operator + - cert-manager-operator upgradeStrategy: Default diff --git a/lib/olm-deps/cert_manager_subscription.yaml b/lib/olm-deps/cert_manager_subscription.yaml index 84545b00d..7a39669f1 100644 --- a/lib/olm-deps/cert_manager_subscription.yaml +++ b/lib/olm-deps/cert_manager_subscription.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: diff --git a/lib/olm-deps/kustomization.yaml b/lib/olm-deps/kustomization.yaml index f6afffb0b..1cac76e67 100644 --- a/lib/olm-deps/kustomization.yaml +++ b/lib/olm-deps/kustomization.yaml @@ -1,13 +1,14 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- cert_manager_namespace.yaml -- cert_manager_operatorgroup.yaml -- cert_manager_subscription.yaml -- metallb_namespace.yaml -- metallb_operatorgroup.yaml -- metallb_subscription.yaml -- nmstate_namespace.yaml -- nmstate_operatorgroup.yaml -- nmstate_subscription.yaml + - cert_manager_namespace.yaml + - cert_manager_operatorgroup.yaml + - cert_manager_subscription.yaml + - metallb_namespace.yaml + - metallb_operatorgroup.yaml + - metallb_subscription.yaml + - nmstate_namespace.yaml + - nmstate_operatorgroup.yaml + - nmstate_subscription.yaml diff --git a/lib/olm-deps/metallb_namespace.yaml b/lib/olm-deps/metallb_namespace.yaml index 32913b803..a7e547ac2 100644 --- a/lib/olm-deps/metallb_namespace.yaml +++ b/lib/olm-deps/metallb_namespace.yaml @@ -1,7 +1,8 @@ +--- apiVersion: v1 kind: Namespace metadata: - name: metallb-system - labels: - pod-security.kubernetes.io/enforce: privileged - security.openshift.io/scc.podSecurityLabelSync: "false" + name: metallb-system + labels: + pod-security.kubernetes.io/enforce: privileged + security.openshift.io/scc.podSecurityLabelSync: "false" diff --git a/lib/olm-deps/metallb_operatorgroup.yaml b/lib/olm-deps/metallb_operatorgroup.yaml index 856f16669..838e4738d 100644 --- a/lib/olm-deps/metallb_operatorgroup.yaml +++ b/lib/olm-deps/metallb_operatorgroup.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: diff --git a/lib/olm-deps/metallb_subscription.yaml b/lib/olm-deps/metallb_subscription.yaml index 9e34377de..61a89b2d3 100644 --- a/lib/olm-deps/metallb_subscription.yaml +++ b/lib/olm-deps/metallb_subscription.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: diff --git a/lib/olm-deps/nmstate_namespace.yaml b/lib/olm-deps/nmstate_namespace.yaml index ab9daf944..b9591f724 100644 --- a/lib/olm-deps/nmstate_namespace.yaml +++ b/lib/olm-deps/nmstate_namespace.yaml @@ -1,7 +1,8 @@ +--- apiVersion: v1 kind: Namespace metadata: - name: openshift-nmstate - labels: - pod-security.kubernetes.io/enforce: privileged - security.openshift.io/scc.podSecurityLabelSync: "false" + name: openshift-nmstate + labels: + pod-security.kubernetes.io/enforce: privileged + security.openshift.io/scc.podSecurityLabelSync: "false" diff --git a/lib/olm-deps/nmstate_operatorgroup.yaml b/lib/olm-deps/nmstate_operatorgroup.yaml index 66148b299..74210eeeb 100644 --- a/lib/olm-deps/nmstate_operatorgroup.yaml +++ b/lib/olm-deps/nmstate_operatorgroup.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: @@ -8,4 +9,4 @@ metadata: namespace: openshift-nmstate spec: targetNamespaces: - - openshift-nmstate + - openshift-nmstate diff --git a/lib/olm-deps/nmstate_subscription.yaml b/lib/olm-deps/nmstate_subscription.yaml index bb884069d..f77b214fe 100644 --- a/lib/olm-deps/nmstate_subscription.yaml +++ b/lib/olm-deps/nmstate_subscription.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: diff --git a/lib/olm-openstack/catalogsource.yaml b/lib/olm-openstack/catalogsource.yaml index 7e445a0a3..6103236c8 100644 --- a/lib/olm-openstack/catalogsource.yaml +++ b/lib/olm-openstack/catalogsource.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1alpha1 kind: CatalogSource metadata: diff --git a/lib/olm-openstack/kustomization.yaml b/lib/olm-openstack/kustomization.yaml index 9be7e3d01..ea73a122d 100644 --- a/lib/olm-openstack/kustomization.yaml +++ b/lib/olm-openstack/kustomization.yaml @@ -1,19 +1,20 @@ +--- apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: -- catalogsource.yaml -- namespaces.yaml -- operatorgroup.yaml -- subscription.yaml + - catalogsource.yaml + - namespaces.yaml + - operatorgroup.yaml + - subscription.yaml replacements: -- source: - kind: ConfigMap - name: olm-values - fieldPath: data.openstack-operator-image - targets: - - select: - kind: CatalogSource - fieldPaths: - - spec.image + - source: + kind: ConfigMap + name: olm-values + fieldPath: data.openstack-operator-image + targets: + - select: + kind: CatalogSource + fieldPaths: + - spec.image diff --git a/lib/olm-openstack/namespaces.yaml b/lib/olm-openstack/namespaces.yaml index 9dbd3b455..268b37c72 100644 --- a/lib/olm-openstack/namespaces.yaml +++ b/lib/olm-openstack/namespaces.yaml @@ -1,15 +1,16 @@ +--- apiVersion: v1 kind: Namespace metadata: - name: openstack-operators - labels: - pod-security.kubernetes.io/enforce: privileged - security.openshift.io/scc.podSecurityLabelSync: "false" + name: openstack-operators + labels: + pod-security.kubernetes.io/enforce: privileged + security.openshift.io/scc.podSecurityLabelSync: "false" --- apiVersion: v1 kind: Namespace metadata: - name: openstack - labels: - pod-security.kubernetes.io/enforce: privileged - security.openshift.io/scc.podSecurityLabelSync: "false" + name: openstack + labels: + pod-security.kubernetes.io/enforce: privileged + security.openshift.io/scc.podSecurityLabelSync: "false" diff --git a/lib/olm-openstack/operatorgroup.yaml b/lib/olm-openstack/operatorgroup.yaml index 91ded113a..894ac84f8 100644 --- a/lib/olm-openstack/operatorgroup.yaml +++ b/lib/olm-openstack/operatorgroup.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: diff --git a/lib/olm-openstack/subscription.yaml b/lib/olm-openstack/subscription.yaml index 522d63ac4..e2795e5e0 100644 --- a/lib/olm-openstack/subscription.yaml +++ b/lib/olm-openstack/subscription.yaml @@ -1,3 +1,4 @@ +--- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: diff --git a/mkdocs.yml b/mkdocs.yml index 23255760d..60638c8d0 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,3 +1,5 @@ +# yamllint disable rule:line-length +--- site_name: OpenStack K8S Operators Architectures site_description: OpenStack K8S Operators Architectures site_author: OpenStack Team @@ -27,16 +29,16 @@ theme: nav: - Overview: index.md - Validated Architectures: - - HCI: https://github.com/openstack-k8s-operators/architecture/tree/main/examples/va/hci/README.md - - NFV SRIOV: https://github.com/openstack-k8s-operators/architecture/blob/main/examples/va/nfv/sriov/README.md - - NFV OvS DPDK: https://github.com/openstack-k8s-operators/architecture/blob/main/examples/va/nfv/ovs-dpdk/README.md + - HCI: https://github.com/openstack-k8s-operators/architecture/tree/main/examples/va/hci/README.md + - NFV SRIOV: https://github.com/openstack-k8s-operators/architecture/blob/main/examples/va/nfv/sriov/README.md + - NFV OvS DPDK: https://github.com/openstack-k8s-operators/architecture/blob/main/examples/va/nfv/ovs-dpdk/README.md - Deployed Topologies: - - None + - None - FAQ: - - Creating Smaller CRs: faq/cr_by_components.md + - Creating Smaller CRs: faq/cr_by_components.md - Contributing: - - contributing/documentation.md + - contributing/documentation.md markdown_extensions: - toc: permalink: "#" diff --git a/va/hci/edpm-post-ceph/kustomization.yaml b/va/hci/edpm-post-ceph/kustomization.yaml index 95507649f..fde044388 100644 --- a/va/hci/edpm-post-ceph/kustomization.yaml +++ b/va/hci/edpm-post-ceph/kustomization.yaml @@ -1,180 +1,182 @@ +--- 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 + # 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/control-plane -- ../../../lib/dataplane + - ../../../lib/control-plane + - ../../../lib/dataplane resources: -- ceph_secret.yaml -- nova_ceph.yaml + - ceph_secret.yaml + - nova_ceph.yaml patches: -- target: - kind: OpenStackDataPlaneDeployment - name: .* - patch: |- - - op: replace - path: /metadata/name - value: edpm-deployment-post-ceph -- target: - kind: OpenStackDataPlaneNodeSet - name: .* - path: extra_mounts.yaml + - target: + kind: OpenStackDataPlaneDeployment + name: .* + patch: |- + - op: replace + path: /metadata/name + value: edpm-deployment-post-ceph + - target: + kind: OpenStackDataPlaneNodeSet + name: .* + path: extra_mounts.yaml replacements: -# Control plane custom service configs -- source: - kind: ConfigMap - name: service-values - fieldPath: data.cinderBackup.customServiceConfig - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.cinder.template.cinderBackup.customServiceConfig - options: - create: true -- source: - kind: ConfigMap - name: service-values - fieldPath: data.cinderVolumes.ceph - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.cinder.template.cinderVolumes.ceph - 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.glanceAPIs.default.replicas - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.glance.template.glanceAPIs.default.replicas - options: - create: true -- source: - kind: ConfigMap - name: service-values - fieldPath: data.manila.enabled - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.manila.enabled - options: - create: true -- source: - kind: ConfigMap - name: service-values - fieldPath: data.manila.manilaAPI.customServiceConfig - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.manila.template.manilaAPI.customServiceConfig - options: - create: true -- source: - kind: ConfigMap - name: service-values - fieldPath: data.manila.manilaShares.share1.customServiceConfig - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.manila.template.manilaShares.share1.customServiceConfig - options: - create: true -- source: - kind: ConfigMap - name: service-values - fieldPath: data.extraMounts - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.extraMounts - options: - create: true -# Ceph keyring -- source: - kind: ConfigMap - name: edpm-values-post-ceph - fieldPath: data.ceph.keyring - targets: - - select: - kind: Secret - name: ceph-conf-files - fieldPaths: - - data.ceph\.client\.openstack\.keyring - options: - create: true -# Ceph conf -- source: - kind: ConfigMap - name: edpm-values-post-ceph - fieldPath: data.ceph.conf - targets: - - select: - kind: Secret - name: ceph-conf-files - fieldPaths: - - data.ceph\.conf - options: - create: true -# Nova Ceph conf -- source: - kind: ConfigMap - name: edpm-values-post-ceph - fieldPath: data.nova.ceph.conf - targets: - - select: + # Control plane custom service configs + - source: kind: ConfigMap - name: ceph-nova - fieldPaths: - - data.03-ceph-nova\.conf - options: - create: true -# Dataplane services override (overrides ../../../lib/dataplane which is using edpm-values ConfigMap) -- source: - kind: ConfigMap - name: edpm-values-post-ceph - fieldPath: data.nodeset.services - targets: - - select: - kind: OpenStackDataPlaneNodeSet - fieldPaths: - - spec.services - options: - create: true + name: service-values + fieldPath: data.cinderBackup.customServiceConfig + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.cinder.template.cinderBackup.customServiceConfig + options: + create: true + - source: + kind: ConfigMap + name: service-values + fieldPath: data.cinderVolumes.ceph + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.cinder.template.cinderVolumes.ceph + 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.glanceAPIs.default.replicas + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.glance.template.glanceAPIs.default.replicas + options: + create: true + - source: + kind: ConfigMap + name: service-values + fieldPath: data.manila.enabled + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.manila.enabled + options: + create: true + - source: + kind: ConfigMap + name: service-values + fieldPath: data.manila.manilaAPI.customServiceConfig + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.manila.template.manilaAPI.customServiceConfig + options: + create: true + - source: + kind: ConfigMap + name: service-values + fieldPath: data.manila.manilaShares.share1.customServiceConfig + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.manila.template.manilaShares.share1.customServiceConfig + options: + create: true + - source: + kind: ConfigMap + name: service-values + fieldPath: data.extraMounts + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.extraMounts + options: + create: true + # Ceph keyring + - source: + kind: ConfigMap + name: edpm-values-post-ceph + fieldPath: data.ceph.keyring + targets: + - select: + kind: Secret + name: ceph-conf-files + fieldPaths: + - data.ceph\.client\.openstack\.keyring + options: + create: true + # Ceph conf + - source: + kind: ConfigMap + name: edpm-values-post-ceph + fieldPath: data.ceph.conf + targets: + - select: + kind: Secret + name: ceph-conf-files + fieldPaths: + - data.ceph\.conf + options: + create: true + # Nova Ceph conf + - source: + kind: ConfigMap + name: edpm-values-post-ceph + fieldPath: data.nova.ceph.conf + targets: + - select: + kind: ConfigMap + name: ceph-nova + fieldPaths: + - data.03-ceph-nova\.conf + options: + create: true + # Dataplane services override (overrides ../../../lib/dataplane which + # is using edpm-values ConfigMap) + - source: + kind: ConfigMap + name: edpm-values-post-ceph + fieldPath: data.nodeset.services + targets: + - select: + kind: OpenStackDataPlaneNodeSet + fieldPaths: + - spec.services + options: + create: true diff --git a/va/hci/edpm-pre-ceph/kustomization.yaml b/va/hci/edpm-pre-ceph/kustomization.yaml index 5e48047b0..029197690 100644 --- a/va/hci/edpm-pre-ceph/kustomization.yaml +++ b/va/hci/edpm-pre-ceph/kustomization.yaml @@ -1,29 +1,30 @@ +--- 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 + # 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 + - ../../../lib/dataplane patches: -- target: - kind: OpenStackDataPlaneDeployment - name: .* - patch: |- - - op: replace - path: /metadata/name - value: edpm-deployment-pre-ceph + - target: + kind: OpenStackDataPlaneDeployment + name: .* + patch: |- + - op: replace + path: /metadata/name + value: edpm-deployment-pre-ceph diff --git a/va/hci/kustomization.yaml b/va/hci/kustomization.yaml index f8bf88729..6730c85d8 100644 --- a/va/hci/kustomization.yaml +++ b/va/hci/kustomization.yaml @@ -1,70 +1,71 @@ +--- 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 + # 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/networking -- ../../lib/control-plane + - ../../lib/networking + - ../../lib/control-plane # Add StorageMgmt network template, as it is needed for CephHCI patches: -- target: - version: v1beta1 - kind: NetConfig - name: netconfig - patch: |- - - op: add - path: /spec/networks/- - value: - dnsDomain: _replaced_ - name: StorageMgmt - subnets: - - _replaced_ - mtu: 1500 + - target: + version: v1beta1 + kind: NetConfig + name: netconfig + patch: |- + - op: add + path: /spec/networks/- + value: + dnsDomain: _replaced_ + name: StorageMgmt + subnets: + - _replaced_ + mtu: 1500 # Add StorageMgmt network replacements replacements: -# NetConfig dnsDomain specific to this VA -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storagemgmt.dnsDomain - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=StorageMgmt].dnsDomain -# NetConfig MTU specific to this VA -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storagemgmt.mtu - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=StorageMgmt].mtu -# NetConfig subnets specific to this VA -- source: - kind: ConfigMap - name: network-values - fieldPath: data.storagemgmt.subnets - targets: - - select: - kind: NetConfig - fieldPaths: - - spec.networks.[name=StorageMgmt].subnets + # NetConfig dnsDomain specific to this VA + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storagemgmt.dnsDomain + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=StorageMgmt].dnsDomain + # NetConfig MTU specific to this VA + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storagemgmt.mtu + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=StorageMgmt].mtu + # NetConfig subnets specific to this VA + - source: + kind: ConfigMap + name: network-values + fieldPath: data.storagemgmt.subnets + targets: + - select: + kind: NetConfig + fieldPaths: + - spec.networks.[name=StorageMgmt].subnets diff --git a/va/hci/namespace.yaml b/va/hci/namespace.yaml index 48838178c..60a6e8c42 100644 --- a/va/hci/namespace.yaml +++ b/va/hci/namespace.yaml @@ -1,3 +1,4 @@ +--- apiVersion: builtin kind: NamespaceTransformer metadata: @@ -6,6 +7,6 @@ metadata: setRoleBindingSubjects: none unsetOnly: true fieldSpecs: -- path: metadata/name - kind: Namespace - create: true + - path: metadata/name + kind: Namespace + create: true diff --git a/va/nfv/ovs-dpdk-sriov/edpm/baremetalset-password-secret.yaml b/va/nfv/ovs-dpdk-sriov/edpm/baremetalset-password-secret.yaml index 4f0b22d9d..41daad38d 100644 --- a/va/nfv/ovs-dpdk-sriov/edpm/baremetalset-password-secret.yaml +++ b/va/nfv/ovs-dpdk-sriov/edpm/baremetalset-password-secret.yaml @@ -1,3 +1,4 @@ +--- apiVersion: v1 data: NodeRootPassword: _replaced_ diff --git a/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml b/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml index 14e34c554..62437e365 100644 --- a/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml +++ b/va/nfv/ovs-dpdk-sriov/edpm/kustomization.yaml @@ -1,89 +1,90 @@ +--- 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 + # 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 + - ../../../../lib/dataplane resources: -- baremetalset-password-secret.yaml -- nova_ovs_dpdk_sriov.yaml + - baremetalset-password-secret.yaml + - nova_ovs_dpdk_sriov.yaml replacements: -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.root_password - targets: - - select: - kind: Secret - name: baremetalset-password-secret - fieldPaths: - - data.NodeRootPassword - options: - create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.root_password + targets: + - select: + kind: Secret + name: baremetalset-password-secret + fieldPaths: + - data.NodeRootPassword + options: + create: true -# Nova compute CPU pinning customization -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.compute.conf - targets: - - select: + # Nova compute CPU pinning customization + - source: kind: ConfigMap - name: ovs-dpdk-sriov-cpu-pinning-nova - fieldPaths: - - data.25-cpu-pinning-nova\.conf - options: - create: true -# Nova compute PCI passthrough customization -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.pci.conf - targets: - - select: + name: edpm-values + fieldPath: data.nova.compute.conf + targets: + - select: + kind: ConfigMap + name: ovs-dpdk-sriov-cpu-pinning-nova + fieldPaths: + - data.25-cpu-pinning-nova\.conf + options: + create: true + # Nova compute PCI passthrough customization + - source: kind: ConfigMap - name: sriov-nova - fieldPaths: - - data.03-sriov-nova\.conf - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.preProvisioned - targets: - - select: - kind: OpenStackDataPlaneNodeSet - name: openstack-edpm - fieldPaths: - - spec.preProvisioned - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.baremetalSetTemplate - targets: - - select: - kind: OpenStackDataPlaneNodeSet - name: openstack-edpm - fieldPaths: - - spec.baremetalSetTemplate - options: - create: true + name: edpm-values + fieldPath: data.nova.pci.conf + targets: + - select: + kind: ConfigMap + name: sriov-nova + fieldPaths: + - data.03-sriov-nova\.conf + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.preProvisioned + targets: + - select: + kind: OpenStackDataPlaneNodeSet + name: openstack-edpm + fieldPaths: + - spec.preProvisioned + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.baremetalSetTemplate + targets: + - select: + kind: OpenStackDataPlaneNodeSet + name: openstack-edpm + fieldPaths: + - spec.baremetalSetTemplate + options: + create: true diff --git a/va/nfv/ovs-dpdk-sriov/kustomization.yaml b/va/nfv/ovs-dpdk-sriov/kustomization.yaml index c6783f4f6..88b6ba159 100644 --- a/va/nfv/ovs-dpdk-sriov/kustomization.yaml +++ b/va/nfv/ovs-dpdk-sriov/kustomization.yaml @@ -1,102 +1,103 @@ +--- 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 + # 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/networking -- ../../../lib/control-plane + - ../../../lib/networking + - ../../../lib/control-plane replacements: -# Neutron control plane OvS DPDK & SRIOV customization -- source: - kind: ConfigMap - name: service-values - fieldPath: data.neutron.customServiceConfig - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.neutron.template.customServiceConfig - options: - create: true -# OVN control plane OvS DPDK customization -- source: - kind: ConfigMap - name: service-values - fieldPath: data.ovn.ovnController - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.ovn.template.ovnController - 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 + # Neutron control plane OvS DPDK & SRIOV customization + - source: + kind: ConfigMap + name: service-values + fieldPath: data.neutron.customServiceConfig + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.neutron.template.customServiceConfig + options: + create: true + # OVN control plane OvS DPDK customization + - source: + kind: ConfigMap + name: service-values + fieldPath: data.ovn.ovnController + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.ovn.template.ovnController + 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 diff --git a/va/nfv/ovs-dpdk-sriov/namespace.yaml b/va/nfv/ovs-dpdk-sriov/namespace.yaml index 48838178c..60a6e8c42 100644 --- a/va/nfv/ovs-dpdk-sriov/namespace.yaml +++ b/va/nfv/ovs-dpdk-sriov/namespace.yaml @@ -1,3 +1,4 @@ +--- apiVersion: builtin kind: NamespaceTransformer metadata: @@ -6,6 +7,6 @@ metadata: setRoleBindingSubjects: none unsetOnly: true fieldSpecs: -- path: metadata/name - kind: Namespace - create: true + - path: metadata/name + kind: Namespace + create: true diff --git a/va/nfv/ovs-dpdk/edpm/baremetalset-password-secret.yaml b/va/nfv/ovs-dpdk/edpm/baremetalset-password-secret.yaml index 4f0b22d9d..41daad38d 100644 --- a/va/nfv/ovs-dpdk/edpm/baremetalset-password-secret.yaml +++ b/va/nfv/ovs-dpdk/edpm/baremetalset-password-secret.yaml @@ -1,3 +1,4 @@ +--- apiVersion: v1 data: NodeRootPassword: _replaced_ diff --git a/va/nfv/ovs-dpdk/edpm/kustomization.yaml b/va/nfv/ovs-dpdk/edpm/kustomization.yaml index 44365f4e7..8fe3c1342 100644 --- a/va/nfv/ovs-dpdk/edpm/kustomization.yaml +++ b/va/nfv/ovs-dpdk/edpm/kustomization.yaml @@ -1,76 +1,77 @@ +--- 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 + # 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 + - ../../../../lib/dataplane resources: -- baremetalset-password-secret.yaml -- nova_ovs_dpdk.yaml + - baremetalset-password-secret.yaml + - nova_ovs_dpdk.yaml replacements: -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.root_password - targets: - - select: - kind: Secret - name: baremetalset-password-secret - fieldPaths: - - data.NodeRootPassword - options: - create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.root_password + targets: + - select: + kind: Secret + name: baremetalset-password-secret + fieldPaths: + - data.NodeRootPassword + options: + create: true -# Nova compute CPU pinning customization -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.compute.conf - targets: - - select: + # Nova compute CPU pinning customization + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.nova.compute.conf + targets: + - select: + kind: ConfigMap + name: ovs-dpdk-cpu-pinning-nova + fieldPaths: + - data.04-cpu-pinning-nova\.conf + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.preProvisioned + targets: + - select: + kind: OpenStackDataPlaneNodeSet + name: openstack-edpm + fieldPaths: + - spec.preProvisioned + options: + create: true + - source: kind: ConfigMap - name: ovs-dpdk-cpu-pinning-nova - fieldPaths: - - data.04-cpu-pinning-nova\.conf - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.preProvisioned - targets: - - select: - kind: OpenStackDataPlaneNodeSet - name: openstack-edpm - fieldPaths: - - spec.preProvisioned - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.baremetalSetTemplate - targets: - - select: - kind: OpenStackDataPlaneNodeSet - name: openstack-edpm - fieldPaths: - - spec.baremetalSetTemplate - options: - create: true + name: edpm-values + fieldPath: data.baremetalSetTemplate + targets: + - select: + kind: OpenStackDataPlaneNodeSet + name: openstack-edpm + fieldPaths: + - spec.baremetalSetTemplate + options: + create: true diff --git a/va/nfv/ovs-dpdk/kustomization.yaml b/va/nfv/ovs-dpdk/kustomization.yaml index 4f35ea3bb..3dbc0e4c2 100644 --- a/va/nfv/ovs-dpdk/kustomization.yaml +++ b/va/nfv/ovs-dpdk/kustomization.yaml @@ -1,102 +1,103 @@ +--- 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 + # 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/networking -- ../../../lib/control-plane + - ../../../lib/networking + - ../../../lib/control-plane replacements: -# Neutron control plane OvS DPDK customization -- source: - kind: ConfigMap - name: service-values - fieldPath: data.neutron.customServiceConfig - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.neutron.template.customServiceConfig - options: - create: true -# OVN control plane OvS DPDK customization -- source: - kind: ConfigMap - name: service-values - fieldPath: data.ovn.ovnController - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.ovn.template.ovnController - 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 + # Neutron control plane OvS DPDK customization + - source: + kind: ConfigMap + name: service-values + fieldPath: data.neutron.customServiceConfig + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.neutron.template.customServiceConfig + options: + create: true + # OVN control plane OvS DPDK customization + - source: + kind: ConfigMap + name: service-values + fieldPath: data.ovn.ovnController + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.ovn.template.ovnController + 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 diff --git a/va/nfv/ovs-dpdk/namespace.yaml b/va/nfv/ovs-dpdk/namespace.yaml index 48838178c..60a6e8c42 100644 --- a/va/nfv/ovs-dpdk/namespace.yaml +++ b/va/nfv/ovs-dpdk/namespace.yaml @@ -1,3 +1,4 @@ +--- apiVersion: builtin kind: NamespaceTransformer metadata: @@ -6,6 +7,6 @@ metadata: setRoleBindingSubjects: none unsetOnly: true fieldSpecs: -- path: metadata/name - kind: Namespace - create: true + - path: metadata/name + kind: Namespace + create: true diff --git a/va/nfv/sriov/edpm/baremetalset-password-secret.yaml b/va/nfv/sriov/edpm/baremetalset-password-secret.yaml index 4f0b22d9d..41daad38d 100644 --- a/va/nfv/sriov/edpm/baremetalset-password-secret.yaml +++ b/va/nfv/sriov/edpm/baremetalset-password-secret.yaml @@ -1,3 +1,4 @@ +--- apiVersion: v1 data: NodeRootPassword: _replaced_ diff --git a/va/nfv/sriov/edpm/kustomization.yaml b/va/nfv/sriov/edpm/kustomization.yaml index 45a34b9fd..8e070d536 100644 --- a/va/nfv/sriov/edpm/kustomization.yaml +++ b/va/nfv/sriov/edpm/kustomization.yaml @@ -1,89 +1,90 @@ +--- 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 + # 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 + - ../../../../lib/dataplane resources: -- baremetalset-password-secret.yaml -- nova_sriov.yaml + - baremetalset-password-secret.yaml + - nova_sriov.yaml replacements: -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.root_password - targets: - - select: - kind: Secret - name: baremetalset-password-secret - fieldPaths: - - data.NodeRootPassword - options: - create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.root_password + targets: + - select: + kind: Secret + name: baremetalset-password-secret + fieldPaths: + - data.NodeRootPassword + options: + create: true -# Nova compute CPU pinning customization -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.compute.conf - targets: - - select: + # Nova compute CPU pinning customization + - source: kind: ConfigMap - name: cpu-pinning-nova - fieldPaths: - - data.25-cpu-pinning-nova\.conf - options: - create: true -# Nova compute PCI passthrough customization -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.nova.pci.conf - targets: - - select: + name: edpm-values + fieldPath: data.nova.compute.conf + targets: + - select: + kind: ConfigMap + name: cpu-pinning-nova + fieldPaths: + - data.25-cpu-pinning-nova\.conf + options: + create: true + # Nova compute PCI passthrough customization + - source: kind: ConfigMap - name: sriov-nova - fieldPaths: - - data.03-sriov-nova\.conf - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.preProvisioned - targets: - - select: - kind: OpenStackDataPlaneNodeSet - name: openstack-edpm - fieldPaths: - - spec.preProvisioned - options: - create: true -- source: - kind: ConfigMap - name: edpm-values - fieldPath: data.baremetalSetTemplate - targets: - - select: - kind: OpenStackDataPlaneNodeSet - name: openstack-edpm - fieldPaths: - - spec.baremetalSetTemplate - options: - create: true + name: edpm-values + fieldPath: data.nova.pci.conf + targets: + - select: + kind: ConfigMap + name: sriov-nova + fieldPaths: + - data.03-sriov-nova\.conf + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.preProvisioned + targets: + - select: + kind: OpenStackDataPlaneNodeSet + name: openstack-edpm + fieldPaths: + - spec.preProvisioned + options: + create: true + - source: + kind: ConfigMap + name: edpm-values + fieldPath: data.baremetalSetTemplate + targets: + - select: + kind: OpenStackDataPlaneNodeSet + name: openstack-edpm + fieldPaths: + - spec.baremetalSetTemplate + options: + create: true diff --git a/va/nfv/sriov/kustomization.yaml b/va/nfv/sriov/kustomization.yaml index 62e8f1999..8192ed3f3 100644 --- a/va/nfv/sriov/kustomization.yaml +++ b/va/nfv/sriov/kustomization.yaml @@ -1,80 +1,81 @@ +--- 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 + # 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/networking -- ../../../lib/control-plane + - ../../../lib/networking + - ../../../lib/control-plane replacements: -# Control plane customization -- source: - kind: ConfigMap - name: service-values - fieldPath: data.neutron.customServiceConfig - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.neutron.template.customServiceConfig - options: - create: true -# OVN control plane SRIOV customization -- source: - kind: ConfigMap - name: service-values - fieldPath: data.ovn.ovnController - targets: - - select: - kind: OpenStackControlPlane - fieldPaths: - - spec.ovn.template.ovnController - 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 + # Control plane customization + - source: + kind: ConfigMap + name: service-values + fieldPath: data.neutron.customServiceConfig + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.neutron.template.customServiceConfig + options: + create: true + # OVN control plane SRIOV customization + - source: + kind: ConfigMap + name: service-values + fieldPath: data.ovn.ovnController + targets: + - select: + kind: OpenStackControlPlane + fieldPaths: + - spec.ovn.template.ovnController + 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 diff --git a/va/nfv/sriov/namespace.yaml b/va/nfv/sriov/namespace.yaml index 48838178c..60a6e8c42 100644 --- a/va/nfv/sriov/namespace.yaml +++ b/va/nfv/sriov/namespace.yaml @@ -1,3 +1,4 @@ +--- apiVersion: builtin kind: NamespaceTransformer metadata: @@ -6,6 +7,6 @@ metadata: setRoleBindingSubjects: none unsetOnly: true fieldSpecs: -- path: metadata/name - kind: Namespace - create: true + - path: metadata/name + kind: Namespace + create: true