diff --git a/.automation b/.automation index 98e92aae8..fae7ea259 160000 --- a/.automation +++ b/.automation @@ -1 +1 @@ -Subproject commit 98e92aae8460db84cd4bf9813e4ef1ba02c5e034 +Subproject commit fae7ea259fae80d9e8b59ae27d18ba2d632362dc diff --git a/.github/workflows/stackhpc-all-in-one.yml b/.github/workflows/stackhpc-all-in-one.yml index 22e257bc4..922515586 100644 --- a/.github/workflows/stackhpc-all-in-one.yml +++ b/.github/workflows/stackhpc-all-in-one.yml @@ -264,6 +264,28 @@ jobs: run: | docker image pull $KAYOBE_IMAGE + # Rocky 9 OVN deployments will fail when the hostname contains a '.' + - name: Fix hostname + run: | + docker run -t --rm \ + -v $(pwd):/stack/kayobe-automation-env/src/kayobe-config \ + -e KAYOBE_ENVIRONMENT -e KAYOBE_VAULT_PASSWORD -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \ + ${{ steps.kayobe_image.outputs.kayobe_image }} \ + /stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/playbook-run.sh etc/kayobe/ansible/fix-hostname.yml + env: + KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }} + + # Reboot to Apply hostname change + - name: Reboot + run: | + docker run -t --rm \ + -v $(pwd):/stack/kayobe-automation-env/src/kayobe-config \ + -e KAYOBE_ENVIRONMENT -e KAYOBE_VAULT_PASSWORD -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \ + ${{ steps.kayobe_image.outputs.kayobe_image }} \ + /stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/playbook-run.sh etc/kayobe/ansible/reboot.yml -e reboot_with_bootstrap_user=true + env: + KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }} + - name: Run growroot run: | docker run -t --rm \ @@ -304,10 +326,29 @@ jobs: env: KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }} + - name: Change rabbit queues from HA to Quorum + run: | + sed -i -e 's/om_enable_rabbitmq_high_availability: true/om_enable_rabbitmq_high_availability: false/' \ + -e 's/om_enable_rabbitmq_quorum_queues: false/om_enable_rabbitmq_quorum_queues: true/' \ + etc/kayobe/environments/ci-aio/kolla/globals.yml + if: inputs.upgrade + + - name: Migrate RabbitMQ queues + run: | + docker run -t --rm \ + -v $(pwd):/stack/kayobe-automation-env/src/kayobe-config \ + -e KAYOBE_ENVIRONMENT -e KAYOBE_VAULT_PASSWORD -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \ + ${{ steps.kayobe_image.outputs.kayobe_image }} \ + /stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/script-run.sh tools/rabbitmq-quorum-migration.sh + env: + KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }} + if: inputs.upgrade + # If testing upgrade, checkout the current release branch # Stash changes to tracked files, and set clean=false to avoid removing untracked files. + # Revert changes to RabbitMQ Queue types to avoid a merge conflict - name: Stash config changes - run: git stash + run: git restore etc/kayobe/environments/ci-aio/kolla/globals.yml && git stash if: inputs.upgrade - name: Checkout current release config diff --git a/doc/source/conf.py b/doc/source/conf.py index b29d06071..238011fc9 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -122,10 +122,10 @@ } extlinks = { - f"{project}-doc": (f"https://docs.openstack.org/{project}/{current_series}/", "%s documentation") + f"{project}-doc": (f"https://docs.openstack.org/{project}/{current_series}/%s", "%s documentation") for project in extlinks_projects } -extlinks["skc-doc"] = (f"https://stackhpc-kayobe-config.readthedocs.io/en/stackhpc-{current_series}/", "%s documentation") -extlinks["kayobe-renos"] = (f"https://docs.openstack.org/releasenotes/kayobe/{current_series}.html", "%s release notes") -extlinks["kolla-ansible-renos"] = (f"https://docs.openstack.org/releasenotes/kolla-ansible/{current_series}.html", "%s release notes") -extlinks["ceph-doc"] = (f"https://docs.ceph.com/en/{ceph_series}/", "%s documentation") +extlinks["skc-doc"] = (f"https://stackhpc-kayobe-config.readthedocs.io/en/stackhpc-{current_series}/%s", "%s documentation") +extlinks["kayobe-renos"] = (f"https://docs.openstack.org/releasenotes/kayobe/{current_series}.html%s", "%s release notes") +extlinks["kolla-ansible-renos"] = (f"https://docs.openstack.org/releasenotes/kolla-ansible/{current_series}.html%s", "%s release notes") +extlinks["ceph-doc"] = (f"https://docs.ceph.com/en/{ceph_series}/%s", "%s documentation") diff --git a/etc/kayobe/ansible/fix-hostname.yml b/etc/kayobe/ansible/fix-hostname.yml index 92730b7f0..dc3c92e32 100644 --- a/etc/kayobe/ansible/fix-hostname.yml +++ b/etc/kayobe/ansible/fix-hostname.yml @@ -1,6 +1,6 @@ --- -- name: Fix hostname on storage nodes for cephadm - hosts: storage +- name: Ensure hostnames match inventory hostnames + hosts: fix-hostname gather_facts: false vars: ansible_user: "{{ bootstrap_user }}" diff --git a/etc/kayobe/environments/ci-aio/inventory/groups b/etc/kayobe/environments/ci-aio/inventory/groups index 43967dac1..39b72601a 100644 --- a/etc/kayobe/environments/ci-aio/inventory/groups +++ b/etc/kayobe/environments/ci-aio/inventory/groups @@ -3,3 +3,6 @@ [container-image-builders:children] # Build container images on the all-in-one controller. controllers + +[fix-hostname:children] +controllers diff --git a/etc/kayobe/environments/ci-multinode/inventory/groups b/etc/kayobe/environments/ci-multinode/inventory/groups index 43967dac1..08018ca3a 100644 --- a/etc/kayobe/environments/ci-multinode/inventory/groups +++ b/etc/kayobe/environments/ci-multinode/inventory/groups @@ -3,3 +3,6 @@ [container-image-builders:children] # Build container images on the all-in-one controller. controllers + +[fix-hostname:children] +storage diff --git a/etc/kayobe/kolla-image-tags.yml b/etc/kayobe/kolla-image-tags.yml index 0ab7dd285..fdcdc2f26 100644 --- a/etc/kayobe/kolla-image-tags.yml +++ b/etc/kayobe/kolla-image-tags.yml @@ -4,5 +4,8 @@ # where the key is the OS distro and the value is the tag to deploy. kolla_image_tags: openstack: - rocky-9: 2024.1-rocky-9-placeholder - ubuntu-jammy: 2024.1-ubuntu-jammy-placeholder + rocky-9: 2024.1-rocky-9-20240725T165045 + ubuntu-jammy: 2024.1-ubuntu-jammy-20240725T165045 + heat: + rocky-9: 2024.1-rocky-9-20240805T142526 + ubuntu-jammy: 2024.1-ubuntu-jammy-20240805T142526 diff --git a/etc/kayobe/kolla/globals.yml b/etc/kayobe/kolla/globals.yml index 05ec0ab29..c36b659b5 100644 --- a/etc/kayobe/kolla/globals.yml +++ b/etc/kayobe/kolla/globals.yml @@ -22,11 +22,6 @@ kolla_image_tags: # Variables defining which tag to use for each container's image. {{ lookup('pipe', 'python3 ' ~ kayobe_config_path ~ '/../../tools/kolla-images.py list-tag-vars') }} -############################################################################# -# RabbitMQ - -om_enable_rabbitmq_high_availability: true - ############################################################################# # Monitoring and alerting related settings diff --git a/etc/kayobe/stackhpc.yml b/etc/kayobe/stackhpc.yml index 9606634a9..bb604e2f1 100644 --- a/etc/kayobe/stackhpc.yml +++ b/etc/kayobe/stackhpc.yml @@ -145,7 +145,11 @@ stackhpc_kolla_source_version: "stackhpc/{{ openstack_release }}" # Kolla Ansible source repository. stackhpc_kolla_ansible_source_url: "https://github.com/stackhpc/kolla-ansible" -stackhpc_kolla_ansible_source_version: "stackhpc/{{ openstack_release }}" +# FIXME: Waiting for +# https://review.opendev.org/c/openstack/kolla-ansible/+/926198 to merge and +# sync to stackhpc/2024.1 +# stackhpc_kolla_ansible_source_version: "stackhpc/{{ openstack_release }}" +stackhpc_kolla_ansible_source_version: "fix-prometheus" ############################################################################### # Container image registry diff --git a/releasenotes/config.yaml b/releasenotes/config.yaml index 06d5194fb..a5b984a6b 100644 --- a/releasenotes/config.yaml +++ b/releasenotes/config.yaml @@ -1,4 +1,4 @@ --- -# This needs to be updated to the latest release. -release_tag_re: stackhpc/14\.\d+\.\d+\.\d +# NOTE(upgrade): This needs to be updated to the current release's major version. +release_tag_re: stackhpc/16\.\d+\.\d+\.\d ignore_null_merges: false diff --git a/releasenotes/notes/cve-2024-32498-2cbd205129351766.yaml b/releasenotes/notes/cve-2024-32498-2cbd205129351766.yaml index 4265e95c9..8dabdaf23 100644 --- a/releasenotes/notes/cve-2024-32498-2cbd205129351766.yaml +++ b/releasenotes/notes/cve-2024-32498-2cbd205129351766.yaml @@ -2,6 +2,6 @@ critical: - | Fixes `CVE-2024-32498 - `_ with + `__ with updated container images for Cinder, Glance and Nova services. diff --git a/releasenotes/notes/kayobe-image-f1227adacb28f40b.yaml b/releasenotes/notes/kayobe-image-f1227adacb28f40b.yaml index 97595f3a9..610f9e5e8 100644 --- a/releasenotes/notes/kayobe-image-f1227adacb28f40b.yaml +++ b/releasenotes/notes/kayobe-image-f1227adacb28f40b.yaml @@ -2,7 +2,7 @@ features: - | StackHPC Kayobe Configuration container images for CI/CD with `Kayobe - Automation `_ are now + Automation `__ are now published to GitHub Container Registry (GHCR) at ghcr.io/stackhpc/stackhpc-kayobe-config. The image is tagged with the name of the release branch, e.g. ``stackhpc/yoga``. diff --git a/releasenotes/notes/magnum-capi-driver-2dd8cf6e68a1919c.yaml b/releasenotes/notes/magnum-capi-driver-2dd8cf6e68a1919c.yaml index 8a8ed98b6..4c3f1902f 100644 --- a/releasenotes/notes/magnum-capi-driver-2dd8cf6e68a1919c.yaml +++ b/releasenotes/notes/magnum-capi-driver-2dd8cf6e68a1919c.yaml @@ -1,4 +1,6 @@ --- features: - | - Adds the new magnum-capi-helm out of tree driver (see here https://github.com/stackhpc/magnum-capi-helm) into release train magnum containers + Adds the new magnum-capi-helm out of tree driver (see here + https://github.com/stackhpc/magnum-capi-helm) into release train magnum + containers diff --git a/releasenotes/notes/openstack-dash-ff7bf179e37c8e4b.yaml b/releasenotes/notes/openstack-dash-ff7bf179e37c8e4b.yaml index 4a6324743..0941df773 100644 --- a/releasenotes/notes/openstack-dash-ff7bf179e37c8e4b.yaml +++ b/releasenotes/notes/openstack-dash-ff7bf179e37c8e4b.yaml @@ -1,5 +1,5 @@ --- other: - | - Changes the Grafana OpenStack dashboard to show HTTP status 300 as green instead of - orange. + Changes the Grafana OpenStack dashboard to show HTTP status 300 as green + instead of orange. diff --git a/releasenotes/notes/update-haproxy-dashboard-b8807c2a0645ca5e.yaml b/releasenotes/notes/update-haproxy-dashboard-b8807c2a0645ca5e.yaml index 3eb134508..e9ae31c57 100644 --- a/releasenotes/notes/update-haproxy-dashboard-b8807c2a0645ca5e.yaml +++ b/releasenotes/notes/update-haproxy-dashboard-b8807c2a0645ca5e.yaml @@ -3,4 +3,4 @@ features: - | The HAProxy dashboard and alerts have been updated to use the new metrics source in Kolla Ansible. For further details see `here - `__. diff --git a/releasenotes/notes/wallaby-c3c55c39c7b118f2.yaml b/releasenotes/notes/wallaby-c3c55c39c7b118f2.yaml index 09ac83a46..37f514563 100644 --- a/releasenotes/notes/wallaby-c3c55c39c7b118f2.yaml +++ b/releasenotes/notes/wallaby-c3c55c39c7b118f2.yaml @@ -2,9 +2,9 @@ features: - | Adds support for package repository snapshots via `Pulp - `_. A local Pulp server is deployed on the seed, + `__. A local Pulp server is deployed on the seed, which syncs package repositories and container images from the StackHPC - `Ark `_ Pulp server. Control plane servers pull + `Ark `__ Pulp server. Control plane servers pull packages and container images from the local Pulp server. - | The EPEL package repository is disabled by default. It may be enabled by diff --git a/releasenotes/notes/xena-batch-bc1da4e4d0f6257e.yaml b/releasenotes/notes/xena-batch-bc1da4e4d0f6257e.yaml index 144f03a55..62fd19380 100644 --- a/releasenotes/notes/xena-batch-bc1da4e4d0f6257e.yaml +++ b/releasenotes/notes/xena-batch-bc1da4e4d0f6257e.yaml @@ -2,7 +2,7 @@ features: - | Adds a custom playbook to run the `Anomaly Detection Visualiser (ADVise) - `_, ``advise-run.yml``. + `__, ``advise-run.yml``. - | Adds a custom playbook to reset the RabbitMQ cluster and restart OpenStack services that use it, ``rabbitmq-reset.yml``.