Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop the need for openstack-helm submodules #809

Open
cloudnull opened this issue Feb 20, 2025 · 1 comment
Open

Drop the need for openstack-helm submodules #809

cloudnull opened this issue Feb 20, 2025 · 1 comment

Comments

@cloudnull
Copy link
Contributor

Convert the following installs systems to use the now available helm repos provided by OpenStack-Helm

The following installs scripts use the original submodule to install openstack and openstack related services.

Helm OpenStack (submodule)

bin/install-barbican.sh:8:HELM_CMD="helm upgrade --install barbican ./barbican \
bin/install-ceilometer.sh:9:HELM_CMD="helm upgrade --install ceilometer ./ceilometer \
bin/install-cinder.sh:9:HELM_CMD="helm upgrade --install cinder ./cinder \
bin/install-glance.sh:9:HELM_CMD="helm upgrade --install glance ./glance \
bin/install-heat.sh:9:HELM_CMD="helm upgrade --install heat ./heat \
bin/install-horizon.sh:9:HELM_CMD="helm upgrade --install horizon ./horizon \
bin/install-keystone.sh:9:HELM_CMD="helm upgrade --install keystone ./keystone \
bin/install-magnum.sh:9:HELM_CMD="helm upgrade --install magnum ./magnum \
bin/install-neutron.sh:9:HELM_CMD="helm upgrade --install neutron ./neutron \
bin/install-nova.sh:9:HELM_CMD="helm upgrade --install nova ./nova \
bin/install-octavia.sh:9:HELM_CMD="helm upgrade --install octavia ./octavia \
bin/install-placement.sh:9:HELM_CMD="helm upgrade --install placement ./placement \

Helm OpenStack Infra (submodule)

bin/install-libvirt.sh:10:HELM_CMD="helm upgrade --install libvirt ./libvirt \
bin/install-gnocchi.sh:9:HELM_CMD="helm upgrade --install gnocchi ./gnocchi \

We need to convert these installers to use the online helm repository.

helm repo add openstack-helm-infra https://tarballs.opendev.org/openstack/openstack-helm-infra
helm repo add openstack-helm-infra https://tarballs.opendev.org/openstack/openstack-helm

With the helm repos we can pull point in time builds for each project

 helm search repo openstack-helm-infra

Helm OpenStack (repo)

Choices as of Feb 19, 2025

openstack-helm/barbican                           	2024.2.208+13651f45-628a320c	v1.0.0     	OpenStack-Helm Barbican
openstack-helm/ceilometer                         	2024.2.115+13651f45-628a320c	v1.0.0     	OpenStack-Helm Ceilometer
openstack-helm/cinder                             	2024.2.409+13651f45-628a320c	v1.0.0     	OpenStack-Helm Cinder
openstack-helm/designate                          	2024.2.29+13651f45-628a320c 	v1.0.0     	OpenStack-Helm Designate
openstack-helm/glance                             	2024.2.396+13651f45-628a320c	v1.0.0     	OpenStack-Helm Glance
openstack-helm/heat                               	2024.2.294+13651f45-628a320c	v1.0.0     	OpenStack-Helm Heat
openstack-helm/horizon                            	2024.2.264+13651f45-628a320c	v1.0.0     	OpenStack-Helm Horizon
openstack-helm/keystone                           	2024.2.386+13651f45-628a320c	v1.0.0     	OpenStack-Helm Keystone
openstack-helm/magnum                             	2024.2.157+13651f45-628a320c	v1.0.0     	OpenStack-Helm Magnum       
openstack-helm/neutron                            	2024.2.529+13651f45-628a320c	v1.0.0     	OpenStack-Helm Neutron
openstack-helm/nova                               	2024.2.555+13651f45-628a320c	v1.0.0     	OpenStack-Helm Nova
openstack-helm/octavia                            	2024.2.30+13651f45-628a320c 	v1.0.0     	OpenStack-Helm Octavia

Helm OpenStack Infra (repo)

openstack-helm-infra/gnocchi                      	2024.2.50+628a320c          	v3.0.3     	OpenStack-Helm Gnocchi
openstack-helm-infra/libvirt                      	2024.2.92+628a320c          	v1.0.0     	OpenStack-Helm libvirt

Example Implementation

Draft PR where the change was implemented #807

diff --git a/bin/install-libvirt.sh b/bin/install-libvirt.sh
index 572c6b6..177dd73 100755
--- a/bin/install-libvirt.sh
+++ b/bin/install-libvirt.sh
@@ -5,9 +5,10 @@ GLOBAL_OVERRIDES_DIR="/etc/genestack/helm-configs/global_overrides"
 SERVICE_CONFIG_DIR="/etc/genestack/helm-configs/libvirt"
 BASE_OVERRIDES="/opt/genestack/base-helm-configs/libvirt/libvirt-helm-overrides.yaml"
 
-pushd /opt/genestack/submodules/openstack-helm-infra || exit 1
+helm repo add openstack-helm https://tarballs.opendev.org/openstack/openstack-helm-infra
+helm repo update
 
-HELM_CMD="helm upgrade --install libvirt ./libvirt \
+HELM_CMD="helm upgrade --install libvirt openstack-helm-infra/libvirt --version 2024.2.92+628a320c \
     --namespace=openstack \
     --timeout 120m"
 
@@ -29,5 +30,3 @@ HELM_CMD+=" $@"
 echo "Executing Helm command:"
 echo "${HELM_CMD}"
 eval "${HELM_CMD}"
-
-popd || exit 1

The helm chart install script was updated to use the new repo. The script also no longer enters and exists the submodule files on disk.

Update the base files

The base helm files will need to be updated for the new chart. Develops can review the base values from the checkout using the following command.

helm show values openstack-helm-infra/libvirt --version 2024.2.92+628a320c

With this update we should only pull in the variables that we need to successfully deploy the platform.

This change will dramatically decrease the lines of code we maintain.

cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a glance deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a glance deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a glance deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a glance deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm-infra chart
for the purposes of providing a libvirt deployment. The base helm
file has been updated and simplified, reducing the values we carry
to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a keystone deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809

Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a keystone deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809

Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a keystone deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809

Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a barbican deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a barbican deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a barbican deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a barbican deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a heat deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a placement deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
@cloudnull
Copy link
Contributor Author

cloudnull commented Feb 23, 2025

  • libvirt
  • keystone
  • glance
  • heat
  • barbican
  • placement
  • magnum
  • nova
  • neutron
  • cinder
  • octavia
  • horizon
  • ceilometer
  • gnocchi

cloudnull added a commit to cloudnull/genestack that referenced this issue Feb 23, 2025
This change removes the need to carry the openstack-helm charts for the purposes
of providing a placement deployment. The base helm files have been updated and
simplified, reducing the values we carry to only what we need.

Related Issue: rackerlabs#809
Signed-off-by: Kevin Carter <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant