Skip to content

Commit

Permalink
Updating docs and scripts to use kustomize overlay by default (#574)
Browse files Browse the repository at this point in the history
* Updating docs and scripts to use kustomize overlay by default to deploy services

* Adding helm base overrides

---------

Co-authored-by: mohammad <[email protected]>
  • Loading branch information
mnaghavi and mohammad authored Nov 21, 2024
1 parent 9a2ea26 commit d4cac73
Show file tree
Hide file tree
Showing 22 changed files with 36 additions and 24 deletions.
3 changes: 2 additions & 1 deletion bin/install-barbican.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install barbican ./barbican \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/barbican/barbican-helm-overrides.yaml \
-f /etc/genestack/helm-configs/barbican/barbican-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.barbican.password="$(kubectl --namespace openstack get secret barbican-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -13,5 +14,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_cache.auth.memcache_secret_key="$(kubectl --namespace openstack get secret os-memcached -o jsonpath='{.data.memcache_secret_key}' | base64 -d)" \
--set conf.barbican.keystone_authtoken.memcache_secret_key="$(kubectl --namespace openstack get secret os-memcached -o jsonpath='{.data.memcache_secret_key}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args barbican/base "$@"
--post-renderer-args barbican/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-ceilometer.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install ceilometer ./ceilometer \
--namespace=openstack \
--timeout 10m \
-f /opt/genestack/base-helm-configs/ceilometer/ceilometer-helm-overrides.yaml \
-f /etc/genestack/helm-configs/ceilometer/ceilometer-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.ceilometer.password="$(kubectl --namespace openstack get secret ceilometer-keystone-admin-password -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -23,5 +24,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
rabbit://neutron:$(kubectl --namespace openstack get secret neutron-rabbitmq-password -o jsonpath='{.data.password}' | base64 -d)@rabbitmq.openstack.svc.cluster.local:5672/neutron,\
rabbit://nova:$(kubectl --namespace openstack get secret nova-rabbitmq-password -o jsonpath='{.data.password}' | base64 -d)@rabbitmq.openstack.svc.cluster.local:5672/nova}" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args ceilometer/base "$@"
--post-renderer-args ceilometer/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-cinder.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install cinder ./cinder \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/cinder/cinder-helm-overrides.yaml \
-f /etc/genestack/helm-configs/cinder/cinder-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.cinder.password="$(kubectl --namespace openstack get secret cinder-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -14,5 +15,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_messaging.auth.admin.password="$(kubectl --namespace openstack get secret rabbitmq-default-user -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.oslo_messaging.auth.cinder.password="$(kubectl --namespace openstack get secret cinder-rabbitmq-password -o jsonpath='{.data.password}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args cinder/base "$@"
--post-renderer-args cinder/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-glance.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install glance ./glance \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/glance/glance-helm-overrides.yaml \
-f /etc/genestack/helm-configs/glance/glance-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.glance.password="$(kubectl --namespace openstack get secret glance-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -14,5 +15,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_messaging.auth.admin.password="$(kubectl --namespace openstack get secret rabbitmq-default-user -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.oslo_messaging.auth.glance.password="$(kubectl --namespace openstack get secret glance-rabbitmq-password -o jsonpath='{.data.password}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args glance/base "$@"
--post-renderer-args glance/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-gnocchi.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm-infra || exit
helm upgrade --install gnocchi ./gnocchi \
--namespace=openstack \
--timeout 10m \
-f /opt/genestack/base-helm-configs/gnocchi/gnocchi-helm-overrides.yaml \
-f /etc/genestack/helm-configs/gnocchi/gnocchi-helm-overrides.yaml \
--set conf.ceph.admin_keyring="$(kubectl get secret --namespace rook-ceph rook-ceph-admin-keyring -o jsonpath='{.data.keyring}' | base64 -d)" \
--set conf.gnocchi.keystone_authtoken.memcache_secret_key="$(kubectl --namespace openstack get secret os-memcached -o jsonpath='{.data.memcache_secret_key}' | base64 -d)" \
Expand All @@ -14,5 +15,5 @@ pushd /opt/genestack/submodules/openstack-helm-infra || exit
--set endpoints.oslo_db_postgresql.auth.admin.password="$(kubectl --namespace openstack get secret postgresql-db-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.oslo_db_postgresql.auth.gnocchi.password="$(kubectl --namespace openstack get secret gnocchi-pgsql-password -o jsonpath='{.data.password}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args gnocchi/base "$@"
--post-renderer-args gnocchi/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-heat.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install heat ./heat \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/heat/heat-helm-overrides.yaml \
-f /etc/genestack/helm-configs/heat/heat-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.heat.password="$(kubectl --namespace openstack get secret heat-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -16,5 +17,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_messaging.auth.admin.password="$(kubectl --namespace openstack get secret rabbitmq-default-user -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.oslo_messaging.auth.heat.password="$(kubectl --namespace openstack get secret heat-rabbitmq-password -o jsonpath='{.data.password}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args heat/base "$@"
--post-renderer-args heat/overlay "$@"
popd || exit
2 changes: 1 addition & 1 deletion bin/install-horizon.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_db.auth.admin.password="$(kubectl --namespace openstack get secret mariadb -o jsonpath='{.data.root-password}' | base64 -d)" \
--set endpoints.oslo_db.auth.horizon.password="$(kubectl --namespace openstack get secret horizon-db-password -o jsonpath='{.data.password}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args horizon/base "$@"
--post-renderer-args horizon/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-keystone.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install keystone ./keystone \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/keystone/keystone-helm-overrides.yaml \
-f /etc/genestack/helm-configs/keystone/keystone-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.oslo_db.auth.admin.password="$(kubectl --namespace openstack get secret mariadb -o jsonpath='{.data.root-password}' | base64 -d)" \
Expand All @@ -12,5 +13,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_messaging.auth.admin.password="$(kubectl --namespace openstack get secret rabbitmq-default-user -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.oslo_messaging.auth.keystone.password="$(kubectl --namespace openstack get secret keystone-rabbitmq-password -o jsonpath='{.data.password}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args keystone/base "$@"
--post-renderer-args keystone/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-magnum.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install magnum ./magnum \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/magnum/magnum-helm-overrides.yaml \
-f /etc/genestack/helm-configs/magnum/magnum-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.magnum.password="$(kubectl --namespace openstack get secret magnum-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -13,5 +14,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set endpoints.oslo_cache.auth.memcache_secret_key="$(kubectl --namespace openstack get secret os-memcached -o jsonpath='{.data.memcache_secret_key}' | base64 -d)" \
--set conf.magnum.keystone_authtoken.memcache_secret_key="$(kubectl --namespace openstack get secret os-memcached -o jsonpath='{.data.memcache_secret_key}' | base64 -d)" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args magnum/base "$@"
--post-renderer-args magnum/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-neutron.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install neutron ./neutron \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/neutron/neutron-helm-overrides.yaml \
-f /etc/genestack/helm-configs/neutron/neutron-helm-overrides.yaml \
--set conf.metadata_agent.DEFAULT.metadata_proxy_shared_secret="$(kubectl --namespace openstack get secret metadata-shared-secret -o jsonpath='{.data.password}' | base64 -d)" \
--set conf.ovn_metadata_agent.DEFAULT.metadata_proxy_shared_secret="$(kubectl --namespace openstack get secret metadata-shared-secret -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -24,5 +25,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set conf.plugins.ml2_conf.ovn.ovn_nb_connection="tcp:$(kubectl --namespace kube-system get service ovn-nb -o jsonpath='{.spec.clusterIP}:{.spec.ports[0].port}')" \
--set conf.plugins.ml2_conf.ovn.ovn_sb_connection="tcp:$(kubectl --namespace kube-system get service ovn-sb -o jsonpath='{.spec.clusterIP}:{.spec.ports[0].port}')" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args neutron/base "$@"
--post-renderer-args neutron/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-nova.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install nova ./nova \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/nova/nova-helm-overrides.yaml \
-f /etc/genestack/helm-configs/nova/nova-helm-overrides.yaml \
--set conf.nova.neutron.metadata_proxy_shared_secret="$(kubectl --namespace openstack get secret metadata-shared-secret -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -27,5 +28,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set network.ssh.public_key="$(kubectl -n openstack get secret nova-ssh-keypair -o jsonpath='{.data.public_key}' | base64 -d)"$'\n' \
--set network.ssh.private_key="$(kubectl -n openstack get secret nova-ssh-keypair -o jsonpath='{.data.private_key}' | base64 -d)"$'\n' \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args nova/base "$@"
--post-renderer-args nova/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-octavia.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install octavia ./octavia \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/octavia/octavia-helm-overrides.yaml \
-f /etc/genestack/helm-configs/octavia/octavia-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.octavia.password="$(kubectl --namespace openstack get secret octavia-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -17,5 +18,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set conf.octavia.ovn.ovn_nb_connection="tcp:$(kubectl --namespace kube-system get service ovn-nb -o jsonpath='{.spec.clusterIP}:{.spec.ports[0].port}')" \
--set conf.octavia.ovn.ovn_sb_connection="tcp:$(kubectl --namespace kube-system get service ovn-sb -o jsonpath='{.spec.clusterIP}:{.spec.ports[0].port}')" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args octavia/base "$@"
--post-renderer-args octavia/overlay "$@"
popd || exit
3 changes: 2 additions & 1 deletion bin/install-placement.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pushd /opt/genestack/submodules/openstack-helm || exit
helm upgrade --install placement ./placement --namespace=openstack \
--namespace=openstack \
--timeout 120m \
-f /opt/genestack/base-helm-configs/placement/placement-helm-overrides.yaml \
-f /etc/genestack/helm-configs/placement/placement-helm-overrides.yaml \
--set endpoints.identity.auth.admin.password="$(kubectl --namespace openstack get secret keystone-admin -o jsonpath='{.data.password}' | base64 -d)" \
--set endpoints.identity.auth.placement.password="$(kubectl --namespace openstack get secret placement-admin -o jsonpath='{.data.password}' | base64 -d)" \
Expand All @@ -13,5 +14,5 @@ pushd /opt/genestack/submodules/openstack-helm || exit
--set conf.placement.keystone_authtoken.memcache_secret_key="$(kubectl --namespace openstack get secret os-memcached -o jsonpath='{.data.memcache_secret_key}' | base64 -d)" \
--set conf.placement.placement_database.slave_connection="mysql+pymysql://placement:$(kubectl --namespace openstack get secret placement-db-password -o jsonpath='{.data.password}' | base64 -d)@mariadb-cluster-secondary.openstack.svc.cluster.local:3306/placement" \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args placement/base "$@"
--post-renderer-args placement/overlay "$@"
popd || exit
4 changes: 2 additions & 2 deletions bin/install-prometheus.sh
Original file line number Diff line number Diff line change
Expand Up @@ -39,5 +39,5 @@ helm repo update
helm upgrade --install kube-prometheus-stack prometheus-community/kube-prometheus-stack \
--create-namespace --namespace=prometheus --timeout 10m \
"${values_args[@]}" \
--post-renderer "$GENESTACK_DIR/base-kustomize/kustomize.sh" \
--post-renderer-args prometheus/base "$@"
--post-renderer "$GENESTACK_CONFIG_DIR/kustomize/kustomize.sh" \
--post-renderer-args prometheus/overlay "$@"
2 changes: 1 addition & 1 deletion bin/install-skyline.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
#!/bin/bash
kubectl --namespace openstack apply -k /opt/genestack/base-kustomize/skyline/base
kubectl --namespace openstack apply -k /etc/genestack/kustomize/skyline/overlay
2 changes: 1 addition & 1 deletion docs/grafana.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,6 @@ You must edit this file to include your specific url and azure tenant id
``` shell
kubectl -n grafana create secret tls grafana-tls-public --cert=/etc/genestack/kustomize/grafana/base/cert.pem --key=/etc/genestack/kustomize/grafana/base/key.pem
kubectl kustomize --enable-helm /etc/genestack/kustomize/grafana/base | \
kubectl kustomize --enable-helm /etc/genestack/kustomize/grafana/overlay | \
kubectl -n grafana apply -f -
```
4 changes: 2 additions & 2 deletions docs/infrastructure-gateway-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ There are various implementations of the Gateway API. In this document, we will
--timeout 10m \
-f /etc/genestack/helm-configs/nginx-gateway-fabric/helm-overrides.yaml \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args gateway/base
--post-renderer-args gateway/overlay
```

=== "Experimental"
Expand Down Expand Up @@ -124,7 +124,7 @@ There are various implementations of the Gateway API. In this document, we will
Apply the configuration using the following command:

``` shell
kubectl kustomize --enable-helm /etc/genestack/kustomize/envoyproxy-gateway/base | kubectl apply -f -
kubectl kustomize --enable-helm /etc/genestack/kustomize/envoyproxy-gateway/overlay | kubectl apply -f -
```

### After installation
Expand Down
2 changes: 1 addition & 1 deletion docs/infrastructure-mariadb.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ kubectl --namespace mariadb-system get pods -w
Replication in MariaDB involves synchronizing data between a primary database and one or more replicas, enabling continuous data availability even in the event of hardware failures or outages. By using MariaDB replication, OpenStack deployments can achieve improved fault tolerance and load balancing, ensuring that critical cloud services remain operational and performant at all times.

``` shell
kubectl --namespace openstack apply -k /etc/genestack/kustomize/mariadb-cluster/base
kubectl --namespace openstack apply -k /etc/genestack/kustomize/mariadb-cluster/overlay
```

=== "AIO"
Expand Down
2 changes: 1 addition & 1 deletion docs/infrastructure-postgresql.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,5 +65,5 @@ kubectl kustomize --enable-helm /etc/genestack/kustomize/postgres-operator | kub
which has a single replica and less default resource utilization.

```shell
kubectl kustomize /etc/genestack/kustomize/postgres-cluster/base | kubectl apply -f -
kubectl kustomize /etc/genestack/kustomize/postgres-cluster/overlay | kubectl apply -f -
```
2 changes: 1 addition & 1 deletion docs/infrastructure-rabbitmq.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ kubectl apply -k /etc/genestack/kustomize/rabbitmq-topology-operator
## Deploy the RabbitMQ cluster.

``` shell
kubectl apply -k /etc/genestack/kustomize/rabbitmq-cluster/base
kubectl apply -k /etc/genestack/kustomize/rabbitmq-cluster/overlay
```

!!! note
Expand Down
2 changes: 1 addition & 1 deletion docs/multi-region-support.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ helm upgrade --install nova ./nova \
--set network.ssh.public_key="$(kubectl -n openstack get secret nova-ssh-keypair -o jsonpath='{.data.public_key}' | base64 -d)"$'\n' \
--set network.ssh.private_key="$(kubectl -n openstack get secret nova-ssh-keypair -o jsonpath='{.data.private_key}' | base64 -d)"$'\n' \
--post-renderer /etc/genestack/kustomize/kustomize.sh \
--post-renderer-args nova/base
--post-renderer-args nova/overlay
```

Like mentioned above the only difference here is the additional flag to include our custom override and that's it, we can now version custom changes while maintaining upstream parity across many regions and/or staging envorinments!
Expand Down
2 changes: 1 addition & 1 deletion docs/openstack-skyline.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ OpenStack Skyline is the next-generation web-based dashboard designed to provide
Pause for a moment to consider if you will be wanting to access Skyline via the gateway-api controller over a specific FQDN. If so, adjust the gateway api definitions to suit your needs. For more information view [Gateway API](infrastructure-gateway-api.md)...

``` shell
kubectl --namespace openstack apply -k /etc/genestack/kustomize/skyline/base
kubectl --namespace openstack apply -k /etc/genestack/kustomize/skyline/overlay
```

### Custom Listeners
Expand Down

0 comments on commit d4cac73

Please sign in to comment.