diff --git a/.automation b/.automation index 54e4f814f5..7ea412a805 160000 --- a/.automation +++ b/.automation @@ -1 +1 @@ -Subproject commit 54e4f814f51914318c597ed429b1887683bf86d4 +Subproject commit 7ea412a80528f4e1aaa894000ce66a2e4e7d86a5 diff --git a/.github/stackhpc-pull-request-path-filters.yml b/.github/stackhpc-pull-request-path-filters.yml index b831f9f0b3..422779dd6c 100644 --- a/.github/stackhpc-pull-request-path-filters.yml +++ b/.github/stackhpc-pull-request-path-filters.yml @@ -16,6 +16,7 @@ aio: &aio - 'etc/kayobe/ansible/requirements.yml' - 'etc/kayobe/ansible/scripts/aio-init.sh' - 'etc/kayobe/environments/ci-aio/**' + - 'etc/kayobe/environments/aio/**' - 'etc/kayobe/inventory/**' - 'etc/kayobe/kolla/**' - 'kayobe-env' diff --git a/.github/workflows/ipa-image-build.yml b/.github/workflows/ipa-image-build.yml index dd3639dc39..69d9753906 100644 --- a/.github/workflows/ipa-image-build.yml +++ b/.github/workflows/ipa-image-build.yml @@ -6,11 +6,11 @@ on: rocky9: description: Build Rocky Linux 9 type: boolean - default: true + default: false rocky9-aarch64: description: Build Rocky Linux 9 aarch64 type: boolean - default: true + default: false ubuntu-noble: description: Build Ubuntu 24.04 Noble type: boolean diff --git a/.github/workflows/overcloud-host-image-build.yml b/.github/workflows/overcloud-host-image-build.yml index 5dc84525c7..4d159305df 100644 --- a/.github/workflows/overcloud-host-image-build.yml +++ b/.github/workflows/overcloud-host-image-build.yml @@ -6,11 +6,11 @@ on: rocky9: description: Build Rocky Linux 9 type: boolean - default: true + default: false rocky9-aarch64: description: Build Rocky Linux 9 aarch64 type: boolean - default: true + default: false rocky10: description: Build Rocky Linux 10 type: boolean diff --git a/.github/workflows/overcloud-host-image-promote.yml b/.github/workflows/overcloud-host-image-promote.yml index df1eccdfc3..8d83d9ac3d 100644 --- a/.github/workflows/overcloud-host-image-promote.yml +++ b/.github/workflows/overcloud-host-image-promote.yml @@ -6,7 +6,7 @@ on: rocky9: description: Promote Rocky Linux 9 type: boolean - default: true + default: false rocky9-aarch64: description: Promote Rocky Linux 9 aarch64 type: boolean diff --git a/.github/workflows/overcloud-host-image-upload.yml b/.github/workflows/overcloud-host-image-upload.yml index 047bcacbb3..4338f9938f 100644 --- a/.github/workflows/overcloud-host-image-upload.yml +++ b/.github/workflows/overcloud-host-image-upload.yml @@ -6,7 +6,7 @@ on: rocky9: description: Upload Rocky Linux 9 type: boolean - default: true + default: false rocky10: description: Upload Rocky Linux 10 type: boolean diff --git a/.github/workflows/stackhpc-all-in-one.yml b/.github/workflows/stackhpc-all-in-one.yml index fbfd8514d8..54dc7cb3a2 100644 --- a/.github/workflows/stackhpc-all-in-one.yml +++ b/.github/workflows/stackhpc-all-in-one.yml @@ -22,7 +22,7 @@ on: os_release: description: Host OS release type: string - default: '9' + default: '10' architecture: description: Host architecture type: string @@ -96,9 +96,9 @@ jobs: KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }} KAYOBE_IMAGE: ${{ inputs.kayobe_image }} # NOTE(upgrade): Reference the PREVIOUS release here. - PREVIOUS_KAYOBE_IMAGE: ghcr.io/stackhpc/stackhpc-kayobe-config:stackhpc-2024.1 + PREVIOUS_KAYOBE_IMAGE: ghcr.io/stackhpc/stackhpc-kayobe-config:stackhpc-2025.1 # NOTE(upgrade): Reference the PREVIOUS release branch here. - PREVIOUS_BRANCH: stackhpc/2024.1 + PREVIOUS_BRANCH: stackhpc/2025.1 steps: - name: Install Package dependencies run: | diff --git a/.github/workflows/stackhpc-build-kayobe-image.yml b/.github/workflows/stackhpc-build-kayobe-image.yml index b8280137ca..b7b56b59ff 100644 --- a/.github/workflows/stackhpc-build-kayobe-image.yml +++ b/.github/workflows/stackhpc-build-kayobe-image.yml @@ -8,7 +8,7 @@ on: push: branches: # NOTE(upgrade): Reference only the current release branch here. - - stackhpc/2025.1 + - stackhpc/2026.1 workflow_call: inputs: @@ -24,7 +24,7 @@ on: base_image: type: string required: false - default: "rockylinux/rockylinux:9" + default: "rockylinux/rockylinux:10" if: description: Whether to run the workflow (workaround for required status checks issue) type: boolean diff --git a/.github/workflows/stackhpc-container-image-build.yml b/.github/workflows/stackhpc-container-image-build.yml index 5520e87723..a15db4341b 100644 --- a/.github/workflows/stackhpc-container-image-build.yml +++ b/.github/workflows/stackhpc-container-image-build.yml @@ -22,7 +22,7 @@ on: description: Build Rocky Linux 9 images? type: boolean required: false - default: true + default: false rocky-linux-10: description: Build Rocky Linux 10 images? type: boolean diff --git a/.github/workflows/stackhpc-pull-request.yml b/.github/workflows/stackhpc-pull-request.yml index 79b3703115..92ec6493c6 100644 --- a/.github/workflows/stackhpc-pull-request.yml +++ b/.github/workflows/stackhpc-pull-request.yml @@ -151,153 +151,153 @@ jobs: secrets: inherit if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-ubuntu-noble-ovn: - # name: aio (Ubuntu Noble OVN) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # os_distribution: ubuntu - # os_release: noble - # ssh_username: ubuntu - # neutron_plugin: ovn - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-ubuntu-noble-ovn: + name: aio (Ubuntu Noble OVN) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + os_distribution: ubuntu + os_release: noble + ssh_username: ubuntu + neutron_plugin: ovn + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-rocky-10-ovs: - # name: aio (Rocky 10 OVS) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # os_distribution: rocky - # os_release: "10" - # ssh_username: cloud-user - # neutron_plugin: ovs - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-rocky-10-ovs: + name: aio (Rocky 10 OVS) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + os_distribution: rocky + os_release: "10" + ssh_username: cloud-user + neutron_plugin: ovs + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-rocky-10-aarch64-ovs: - # name: aio (Rocky 10 aarch64 OVS) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # architecture: aarch64 - # os_distribution: rocky - # os_release: "10" - # ssh_username: cloud-user - # neutron_plugin: ovs - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-rocky-10-aarch64-ovs: + name: aio (Rocky 10 aarch64 OVS) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + architecture: aarch64 + os_distribution: rocky + os_release: "10" + ssh_username: cloud-user + neutron_plugin: ovs + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-rocky-10-ovn: - # name: aio (Rocky 10 OVN) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # os_distribution: rocky - # os_release: "10" - # ssh_username: cloud-user - # neutron_plugin: ovn - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-rocky-10-ovn: + name: aio (Rocky 10 OVN) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + os_distribution: rocky + os_release: "10" + ssh_username: cloud-user + neutron_plugin: ovn + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-rocky-10-aarch64-ovn: - # name: aio (Rocky 10 aarch64 OVN) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # architecture: aarch64 - # os_distribution: rocky - # os_release: "10" - # ssh_username: cloud-user - # neutron_plugin: ovn - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-rocky-10-aarch64-ovn: + name: aio (Rocky 10 aarch64 OVN) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + architecture: aarch64 + os_distribution: rocky + os_release: "10" + ssh_username: cloud-user + neutron_plugin: ovn + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # # Test three upgrade scenarios: Ubuntu Noble OVN, Rocky 10 OVN, and Rocky 10 OVS. + # Test three upgrade scenarios: Ubuntu Noble OVN, Rocky 10 OVN, and Rocky 10 OVS. - # all-in-one-upgrade-ubuntu-noble-ovn: - # name: aio upgrade (Ubuntu Noble OVN) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # os_distribution: ubuntu - # os_release: noble - # ssh_username: ubuntu - # neutron_plugin: ovn - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # upgrade: true - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-upgrade-ubuntu-noble-ovn: + name: aio upgrade (Ubuntu Noble OVN) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + os_distribution: ubuntu + os_release: noble + ssh_username: ubuntu + neutron_plugin: ovn + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + upgrade: true + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-upgrade-rocky-10-ovn: - # name: aio upgrade (Rocky 10 OVN) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # os_distribution: rocky - # os_release: "10" - # ssh_username: cloud-user - # neutron_plugin: ovn - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # upgrade: true - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-upgrade-rocky-10-ovn: + name: aio upgrade (Rocky 10 OVN) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + os_distribution: rocky + os_release: "10" + ssh_username: cloud-user + neutron_plugin: ovn + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + upgrade: true + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} - # all-in-one-upgrade-rocky-10-ovs: - # name: aio upgrade (Rocky 10 OVS) - # permissions: {} - # needs: - # - check-changes - # - build-kayobe-image - # uses: ./.github/workflows/stackhpc-all-in-one.yml - # with: - # kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} - # os_distribution: rocky - # os_release: "10" - # ssh_username: cloud-user - # neutron_plugin: ovs - # OS_CLOUD: openstack - # if: ${{ needs.check-changes.outputs.aio == 'true' }} - # upgrade: true - # secrets: inherit - # if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} + all-in-one-upgrade-rocky-10-ovs: + name: aio upgrade (Rocky 10 OVS) + permissions: {} + needs: + - check-changes + - build-kayobe-image + uses: ./.github/workflows/stackhpc-all-in-one.yml + with: + kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }} + os_distribution: rocky + os_release: "10" + ssh_username: cloud-user + neutron_plugin: ovs + OS_CLOUD: openstack + if: ${{ needs.check-changes.outputs.aio == 'true' }} + upgrade: true + secrets: inherit + if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }} diff --git a/doc/source/contributor/environments/aio.rst b/doc/source/contributor/environments/aio.rst new file mode 100644 index 0000000000..3cf752e7ae --- /dev/null +++ b/doc/source/contributor/environments/aio.rst @@ -0,0 +1,135 @@ +=== +aio +=== + +This environment deploys an all-in-one converged control/compute cloud for +testing. + +There are two ways to set up the environment. The automated setup script +automates the manual setup steps below, and is recommended for most users. +The manual setup steps are provided for reference, and for users who wish to +make changes to the setup process. + +.. seealso:: + + All-in-one GitHub CI testing inherits from this environment and is described + :ref:`here `. + +Prerequisites +============= + +* a Rocky Linux 9/10 or Ubuntu Noble 24.04 host +* Credentials for the StackHPC release pulp: ``ark.stackhpc.com`` + +Automated Setup +=============== + +Access the host via SSH. You may wish to start a ``tmux`` session. + +Download the setup script: + +.. parsed-literal:: + + curl -LO https://raw.githubusercontent.com/stackhpc/stackhpc-kayobe-config/stackhpc/2025.1/etc/kayobe/environments/aio/automated-setup.sh + +Change the permissions on the script: + +.. parsed-literal:: + + sudo chmod +x automated-setup.sh + +Create two files, ``~/release_pulp_username``, and ``~/release_pulp_password``, +and add your credentials in plaintext to each of these files. + +.. note:: + + By default, the ``stackhpc`` container namespace will be used. This is the + namespace for all released content. To use unreleased content, edit the + ``automated-setup.sh`` script and set ``KAYOBE_CONFIG_EDIT_PAUSE`` to + ``true``. Then, when the script pauses, change ``kolla_docker_namespace`` + to ``stackhpc-dev`` in ``release-train.yml``. This requires special + credentials that are authorised for the dev namespace. + +Run the setup script: + +.. parsed-literal:: + + ./automated-setup.sh deploy_full + +The script will pull the current version of Kayobe and this repository, and +then run the manual setup steps below. The script can be easily edited with the +following options: + +* ``BASE_PATH`` (default: ``~``) - Directory to deploy from. The directory must + exist before running the script. +* ``KAYOBE_BRANCH`` (default: ``stackhpc/2025.1``) - The branch of Kayobe + source code to use. +* ``KAYOBE_CONFIG_BRANCH`` (default: ``stackhpc/2025.1``) - The branch of + ``stackhpc-kayobe-config`` to use. +* ``KAYOBE_AIO_LVM`` (default: ``true``) - Whether the image uses LVM. +* ``KAYOBE_CONFIG_EDIT_PAUSE`` (default: ``false``) - Option to pause + deployment after cloning the kayobe-config branch, so the environment can be + customised before continuing. +* ``AIO_RUN_TEMPEST`` (default: ``false``) - Whether to run Tempest Refstack + after deployment instead of the default VM smoke test. +* ``USE_OVS`` (default: ``false``) - Whether to disable OVN and deploy using + OVS instead. + +Ironic +====== + +.. note:: + + These instructions have not been validated for some time. Proceed with + caution. + +For a control plane with Ironic enabled, a "bare metal" instance can be +deployed after the main deployment has finished. We can use the Tenks project +to create fake bare metal nodes. + +Clone the tenks repository: + +.. parsed-literal:: + + cd ~/src/kayobe + git clone https://opendev.org/openstack/tenks.git + +Optionally, edit the Tenks configuration file, +``~/src/kayobe/dev/tenks-deploy-config-compute.yml``. + +Run the ``dev/tenks-deploy-compute.sh`` script to deploy Tenks: + +.. parsed-literal:: + + cd ~/src/kayobe + export KAYOBE_CONFIG_SOURCE_PATH=~/src/kayobe-config + export KAYOBE_VENV_PATH=~/venvs/kayobe + ./dev/tenks-deploy-compute.sh ./tenks/ + +Check that Tenks has created VMs called tk0 and tk1: + +.. parsed-literal:: + + sudo virsh list --all + +Verify that VirtualBMC is running: + +.. parsed-literal:: + + ~/tenks-venv/bin/vbmc list + +We are now ready to run the ``dev/overcloud-test-baremetal.sh`` script. This +will run the ``init-runonce`` setup script provided by Kolla Ansible that +registers images, networks, flavors etc. It will then deploy a bare metal +server instance, and delete it once it becomes active: + +.. parsed-literal:: + + ./dev/overcloud-test-baremetal.sh + +The machines and networking created by Tenks can be cleaned up via +``dev/tenks-teardown-compute.sh``: + +.. parsed-literal:: + + ./dev/tenks-teardown-compute.sh ./tenks diff --git a/doc/source/contributor/environments/ci-aio.rst b/doc/source/contributor/environments/ci-aio.rst index 2a45c667a5..73ec77d7b7 100644 --- a/doc/source/contributor/environments/ci-aio.rst +++ b/doc/source/contributor/environments/ci-aio.rst @@ -2,269 +2,16 @@ ci-aio ====== -This environment deploys an all-in-one converged control/compute cloud for +This environment deploys an all-in-one converged control/compute cloud for CI testing. -There are two ways to set up the environment. The automated setup script -automates the manual setup steps below, and is recommended for most users. -The manual setup steps are provided for reference, and for users who wish to -make changes to the setup process. +It inherits from the ``aio`` environment, with CI-specific overrides for +internal ``stackhpc-kayobe-config`` development. -.. seealso:: - - All-in-one GitHub CI testing using this environment is described :ref:`here - `. - -Prerequisites -============= - -* a Rocky Linux 9 or Ubuntu Noble 24.04 host - -Automated Setup -=============== - -Access the host via SSH. You may wish to start a ``tmux`` session. - -Download the setup script: - -.. parsed-literal:: - - curl -LO https://raw.githubusercontent.com/stackhpc/stackhpc-kayobe-config/stackhpc/2025.1/etc/kayobe/environments/ci-aio/automated-setup.sh - -Change the permissions on the script: - -.. parsed-literal:: - - sudo chmod +x automated-setup.sh - -Acquire the Ansible Vault password for this repository, and store a -copy at ``~/vault-pw``. - -Run the setup script: - -.. parsed-literal:: - - ./automated-setup.sh deploy_full - -The script will pull the current version of Kayobe and this repository, and -then run the manual setup steps below. The script can be easily edited with the -following options: - -* ``BASE_PATH`` (default: ``~``) - Directory to deploy from. The directory must - exist before running the script. -* ``KAYOBE_BRANCH`` (default: ``stackhpc/2025.1``) - The branch of Kayobe - source code to use. -* ``KAYOBE_CONFIG_BRANCH`` (default: ``stackhpc/2025.1``) - The branch of - ``stackhpc-kayobe-config`` to use. -* ``KAYOBE_AIO_LVM`` (default: ``true``) - Whether the image uses LVM. -* ``KAYOBE_CONFIG_EDIT_PAUSE`` (default: ``false``) - Option to pause - deployment after cloning the kayobe-config branch, so the environment can be - customised before continuing. -* ``AIO_RUN_TEMPEST`` (default: ``false``) - Whether to run Tempest Refstack - after deployment instead of the default VM smoke test. -* ``USE_OVS`` (default: ``false``) - Whether to disable OVN and deploy using - OVS instead. -* ``VAULT_PASSWORD_FILE`` (default: ``$BASE_PATH/vault-pw``) - Path to a file - containing the Kayobe vault password for the environment. - -Manual Setup -============ - -Host Configuration ------------------- - -Access the host via SSH. - -If using an LVM-based image, extend the ``lv_home`` and ``lv_tmp`` logical -volumes. - -.. parsed-literal:: - - sudo pvresize $(sudo pvs --noheadings | head -n 1 | awk '{print $1}') - sudo lvextend -L 4G /dev/rootvg/lv_home -r - sudo lvextend -L 4G /dev/rootvg/lv_tmp -r - -Install package dependencies. - -On Rocky Linux: - -.. parsed-literal:: - - sudo dnf install -y git - -On Ubuntu: - -.. parsed-literal:: - - sudo apt update - sudo apt install -y gcc git libffi-dev python3-dev python-is-python3 python3-venv - -Clone the Kayobe and Kayobe configuration repositories (this one): - -.. parsed-literal:: - - cd - mkdir -p src - pushd src - git clone https://github.com/stackhpc/stackhpc-kayobe-config -b |current_release_git_branch_name| kayobe-config - popd - -Create a virtual environment and install Kayobe: - -.. parsed-literal:: - - cd - mkdir -p venvs - pushd venvs - python3 -m venv kayobe - source kayobe/bin/activate - pip install -U pip - pip install -r ../src/kayobe-config/requirements.txt - popd - -Add initial network configuration: - -.. parsed-literal:: - - sudo ip l add breth1 type bridge - sudo ip l set breth1 up - sudo ip a add 192.168.33.3/24 dev breth1 - sudo ip l add dummy1 type dummy - sudo ip l set dummy1 up - sudo ip l set dummy1 master breth1 - -On Ubuntu systems, persist the running network configuration. - -.. parsed-literal:: - - sudo cp /run/systemd/network/* /etc/systemd/network - -Configuration -============= - -If using Ironic: - -.. parsed-literal:: - - cd src/kayobe-config - cat << EOF > etc/kayobe/aio.yml - kolla_enable_ironic: true - EOF +For instructions on deploying your own all-in-one instance. See the :doc:`aio +environment ` documentation for more information. -Installation ------------- - -Acquire the Ansible Vault password for this repository, and store a copy at -``~/vault-pw``. - -The following commands install Kayobe and its dependencies, and prepare the -Ansible control host. - -.. parsed-literal:: - - export KAYOBE_VAULT_PASSWORD=$(cat ~/vault-pw) - pushd ~/venvs/kayobe - source bin/activate - popd - pushd ~/src/kayobe-config - source kayobe-env --environment ci-aio - kayobe control host bootstrap - -Deployment ----------- - -If using an LVM-based image, grow the root volume group. - -.. parsed-literal:: - - kayobe playbook run etc/kayobe/ansible/tools/growroot.yml - -On Ubuntu systems, purge the command-not-found package. - -.. parsed-literal:: - - kayobe playbook run etc/kayobe/ansible/fixes/purge-command-not-found.yml - -Next, configure the host OS & services. - -.. parsed-literal:: - - kayobe overcloud host configure - -Finally, deploy the overcloud services. - -.. parsed-literal:: - - kayobe overcloud service deploy - -The control plane should now be running. - -If using Ironic, run overcloud post configuration: - -.. parsed-literal:: - - source ~/src/kayobe-config/etc/kolla/public-openrc.sh - kayobe overcloud post configure - -Testing -------- - -Run a smoke test: - -.. parsed-literal:: - - cd ~/src/kayobe - ./dev/overcloud-test-vm.sh - -Ironic ------- - -For a control plane with Ironic enabled, a "bare metal" instance can be -deployed. We can use the Tenks project to create fake bare metal nodes. - -Clone the tenks repository: - -.. parsed-literal:: - - cd ~/src/kayobe - git clone https://opendev.org/openstack/tenks.git - -Optionally, edit the Tenks configuration file, -``~/src/kayobe/dev/tenks-deploy-config-compute.yml``. - -Run the ``dev/tenks-deploy-compute.sh`` script to deploy Tenks: - -.. parsed-literal:: - - cd ~/src/kayobe - export KAYOBE_CONFIG_SOURCE_PATH=~/src/kayobe-config - export KAYOBE_VENV_PATH=~/venvs/kayobe - ./dev/tenks-deploy-compute.sh ./tenks/ - -Check that Tenks has created VMs called tk0 and tk1: - -.. parsed-literal:: - - sudo virsh list --all - -Verify that VirtualBMC is running: - -.. parsed-literal:: - - ~/tenks-venv/bin/vbmc list - -We are now ready to run the ``dev/overcloud-test-baremetal.sh`` script. This -will run the ``init-runonce`` setup script provided by Kolla Ansible that -registers images, networks, flavors etc. It will then deploy a bare metal -server instance, and delete it once it becomes active: - -.. parsed-literal:: - - ./dev/overcloud-test-baremetal.sh - -The machines and networking created by Tenks can be cleaned up via -``dev/tenks-teardown-compute.sh``: - -.. parsed-literal:: +.. seealso:: - ./dev/tenks-teardown-compute.sh ./tenks + All-in-one GitHub CI testing using this environment is further described + :ref:`here `. diff --git a/doc/source/contributor/environments/index.rst b/doc/source/contributor/environments/index.rst index 81afb7da07..c2324314b9 100644 --- a/doc/source/contributor/environments/index.rst +++ b/doc/source/contributor/environments/index.rst @@ -6,6 +6,7 @@ The following Kayobe environments are provided with this configuration: .. toctree:: :maxdepth: 1 + aio ci-aio ci-builder ci-multinode diff --git a/doc/source/contributor/testing-ci-automation.rst b/doc/source/contributor/testing-ci-automation.rst index 4601c74dbd..c974c1dae2 100644 --- a/doc/source/contributor/testing-ci-automation.rst +++ b/doc/source/contributor/testing-ci-automation.rst @@ -99,9 +99,10 @@ All in one testing The ``.github/workflows/stackhpc-all-in-one.yml`` reusable workflow accepts various parameters, and the following are used to create a test matrix for PRs: - - Operating System (Rocky 9, Ubuntu Noble) + - Operating System (Rocky 9, Rocky 10, Ubuntu Noble) - Neutron plugin (OVS, OVN) - Upgrade or no upgrade + - aarch64 or x86 The workflow runs on an autoscaling `Actions Runner Controller (ARC) `_ diff --git a/doc/source/usage.rst b/doc/source/usage.rst index 0b503e7641..a2f5ef8af1 100644 --- a/doc/source/usage.rst +++ b/doc/source/usage.rst @@ -86,7 +86,7 @@ Kayobe environments can also be specified, for example, to create an AIO environ --base-path skc-aio-environment \ --kayobe-config-repo https://github.com/stackhpc/stackhpc-kayobe-config.git \ --kayobe-config-branch |current_release_git_branch_name| \ - --kayobe-config-env-name ci-aio \ + --kayobe-config-env-name aio \ --vault-password-file ~/vault-pw \ --kayobe-in-requirements @@ -116,5 +116,5 @@ service deployment on overcloud hosts: beokay.py run \ 'kayobe overcloud service deploy' \ --base-path skc-aio-environment \ - --kayobe-config-env-name ci-aio \ + --kayobe-config-env-name aio \ --vault-password-file ~/vault-pw diff --git a/etc/kayobe/apt.yml b/etc/kayobe/apt.yml index f7614dd7e3..af6170b13b 100644 --- a/etc/kayobe/apt.yml +++ b/etc/kayobe/apt.yml @@ -66,7 +66,7 @@ stackhpc_apt_repositories: required: true - url: "{{ stackhpc_repo_docker_ce_ubuntu_noble_url }}" name: ubuntu - suites: "{{ ansible_facts.distribution_release }}" + suites: "{{ ansible_facts.distribution_release }}" components: stable signed_by: docker.asc architecture: amd64 diff --git a/etc/kayobe/environments/ci-aio/automated-setup.sh b/etc/kayobe/environments/aio/automated-setup.sh similarity index 88% rename from etc/kayobe/environments/ci-aio/automated-setup.sh rename to etc/kayobe/environments/aio/automated-setup.sh index e1e36af6c8..9f572d860b 100755 --- a/etc/kayobe/environments/ci-aio/automated-setup.sh +++ b/etc/kayobe/environments/aio/automated-setup.sh @@ -8,7 +8,11 @@ KAYOBE_AIO_LVM=true KAYOBE_CONFIG_EDIT_PAUSE=false AIO_RUN_TEMPEST=false USE_OVS=false -VAULT_PASSWORD_FILE=$BASE_PATH/vault-pw + +# NOTE(Alex-Welsh): These values should not be changed unless you are sure you +# know what you are doing. +ARK_USERNAME_FILE=~/release_pulp_username +ARK_PASSWORD_FILE=~/release_pulp_password # Error handling function error_exit() { @@ -16,10 +20,22 @@ error_exit() { exit 1 } -# Ensure vault password file exists -check_vault_password() { - if [[ ! -f "$VAULT_PASSWORD_FILE" ]]; then - error_exit "Vault password file not found at $VAULT_PASSWORD_FILE" +# Ensure Ark credentials exist and are valid +check_ark_credentials() { + if [[ ! -f "$ARK_USERNAME_FILE" ]]; then + error_exit "Release pulp username file not found at $ARK_USERNAME_FILE" + fi + + if [[ ! -f "$ARK_PASSWORD_FILE" ]]; then + error_exit "Release pulp password file not found at $ARK_PASSWORD_FILE" + fi + + HTTP_STATUS=$(curl -s -o /dev/null -w "%{http_code}" -u "$(cat $ARK_USERNAME_FILE):$(cat $ARK_PASSWORD_FILE)" https://ark.stackhpc.com/pulp/api/v3/users/) + + # Status is 200 if user exists and has permission + # Status is 403 if user exists but does not have permission + if [[ "$HTTP_STATUS" != "200" && "$HTTP_STATUS" != "403" ]]; then + error_exit "Pulp credentials are not valid (HTTP Status: $HTTP_STATUS)" fi } @@ -72,7 +88,7 @@ pause_for_configuration() { disable_ovn() { if [[ "$USE_OVS" == true ]]; then echo "Disabling OVN..." - echo "kolla_enable_ovn: false" > "$BASE_PATH/src/kayobe-config/etc/kayobe/environments/ci-aio/disable-ovn.yml" + echo "kolla_enable_ovn: false" > "$BASE_PATH/src/kayobe-config/etc/kayobe/environments/aio/disable-ovn.yml" fi } @@ -83,8 +99,8 @@ remove_lvm_configuration() { error_exit "You have KAYOBE_AIO_LVM set to true, but LVM has not been found on this system. Set KAYOBE_AIO_LVM to false to ignore this warning." fi echo "Removing LVM configuration..." - rm -f "$BASE_PATH/src/kayobe-config/etc/kayobe/environments/ci-aio/inventory/group_vars/controllers/lvm.yml" || true - sed -i -e '/controller_lvm_groups/,+2d' "$BASE_PATH/src/kayobe-config/etc/kayobe/environments/ci-aio/controllers.yml" || true + rm -f "$BASE_PATH/src/kayobe-config/etc/kayobe/environments/aio/inventory/group_vars/controllers/lvm.yml" || true + sed -i -e '/controller_lvm_groups/,+2d' "$BASE_PATH/src/kayobe-config/etc/kayobe/environments/aio/controllers.yml" || true fi } @@ -122,10 +138,8 @@ configure_network() { # Helper function to activate the Kayobe environment activate_kayobe_env() { - KAYOBE_VAULT_PASSWORD=$(cat $VAULT_PASSWORD_FILE) - export KAYOBE_VAULT_PASSWORD pushd "$BASE_PATH/src/kayobe-config" - source kayobe-env --environment ci-aio + source kayobe-env --environment aio source $BASE_PATH/venvs/kayobe/bin/activate set -x } @@ -224,7 +238,6 @@ run_tempest() { -v "$(pwd)":/stack/kayobe-automation-env/src/kayobe-config \ -v "$(pwd)"/tempest-artifacts:/stack/tempest-artifacts \ -e KAYOBE_ENVIRONMENT \ - -e KAYOBE_VAULT_PASSWORD \ -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \ kayobe:latest \ /stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/tempest.sh \ @@ -243,8 +256,7 @@ generate_kayobe_env_script() { cat > $BASE_PATH/kayobe-env.sh < /etc/apt/apt.conf.d/90no-verify-peer && \ - {% endif %} - {% for repo in stackhpc_ubuntu_noble_base_repos %} - echo '{{ repo }}' >> /etc/apt/sources.list {% if not loop.last %} && \ - {% endif %} - {% endfor %} - {% endif %} - base_centos_repo_overrides_post_yum: | - {# fixme #} - {% if kolla_base_distro == 'rocky' %} - && \ - {% if stackhpc_kolla_clean_up_repo_mirrors | bool %} - tar -xzf /etc/yum.repos.d.backup/repos.tar.gz -C /etc/yum.repos.d && \ - tar -czf /etc/yum.repos.d.backup/repos.tar.gz -C /etc/yum.repos.d . && \ + RUN echo 'Acquire::https::Verify-Peer "false";' > /etc/apt/apt.conf.d/90no-verify-peer {% endif %} - {% if stackhpc_enable_ovn_lts_repo | bool %} - echo -e "[StackHPC-OVN-LTS]\n\ - name=Copr repo for ovn-lts owned by @ovn-lts\n\ - baseurl=https://download.copr.fedorainfracloud.org/results/@ovn-lts/ovn-lts/centos-stream-\$releasever-\$basearch/\n\ - type=rpm-md\n\ - skip_if_unavailable=True\n\ - gpgcheck=1\n\ - gpgkey=https://download.copr.fedorainfracloud.org/results/@ovn-lts/ovn-lts/pubkey.gpg\n\ - repo_gpgcheck=0\n\ - enabled=1\n\ - enabled_metadata=1\n" > /etc/yum.repos.d/ovn-lts-centos-stream-10.repo && \ + # curl and ca-certificates to fetch remote keys via http + # gnupg to fetch keys directly from keyserver + {% raw %} + {% set base_ubuntu_package_pre_packages = [ + 'adduser', + 'ca-certificates', + 'curl', + 'gnupg' + ] %} + # ubuntu-cloud-keyring to install UCA packages + {% if base_distro == 'ubuntu' %} + {% set base_ubuntu_package_pre_packages = base_ubuntu_package_pre_packages + [ + 'ubuntu-cloud-keyring' + ] %} {% endif %} - {% for repo in base_centos_repo_overrides_post_yum_list %} - if [ -f /etc/yum.repos.d/{{ repo.file }} ]; then \ - sed -i -e '/\[{{ repo.tag }}\]/,/^\[/ s/^\(mirrorlist *=.*\)/#\1/g' \ - -e '/\[{{ repo.tag }}\]/,/^\[/ s/^[# ]*\(baseurl *=.*\)/#\1/g' \ - -e '/\[{{ repo.tag }}\]/,/^\[/ s/^[ \t]*\(https.*\)/#\1/g' \ - -e '/\[{{ repo.tag }}\]/,/^\[/ s/^[# ]*\(metalink *=.*\)/#\1/g' \ - -e '/\[{{ repo.tag }}\]/,/^\[/ s|^\(name.*\)|\1\nbaseurl={{ repo.url }}|' /etc/yum.repos.d/{{ repo.file }}; \ - fi{% if not loop.last %} &&{% endif %} \ - {% endfor %} - # NOTE(bbezak): RDO epoxy repo obsoletes many OVN versions - # (see rdo-openvswitch.spec obsolete_ovn_versions: - # https://git.centos.org/rpms/rdo-openvswitch/blob/c9s-sig-cloud-openstack-epoxy/f/SPECS/rdo-openvswitch.spec#L10), - # which would replace our NFV OVS and OVN 24.03 LTS with 24.09. Hence exclude RDO OVN/OVS. - && \ - if [ -f /etc/yum.repos.d/CentOS-OpenStack-epoxy.repo ]; then \ - sed -i '/^\[centos-openstack-epoxy\]/a excludepkgs=*rdo-ovn*,*rdo-openvswitch*' /etc/yum.repos.d/CentOS-OpenStack-epoxy.repo; \ - fi \ - {% endif %} - # With the UCA keyring installed we can now add all repos. - base_ubuntu_package_sources_list: | - {% if stackhpc_kolla_clean_up_repo_mirrors | bool %} - COPY sources.list.ubuntu /etc/apt/sources.list.backup - {% endif %} - RUN \ - rm -f /etc/apt/sources.list && \ - rm -f /etc/apt/sources.list.d/* && \ - rm -f /etc/apt/apt.conf.d/90no-verify-peer && \ - {% for repo in stackhpc_ubuntu_noble_repos %} - echo '{{ repo }}' >> /etc/apt/sources.list {% if not loop.last %} && \ - {% endif %} - {% endfor %} - footer: | - {% if stackhpc_kolla_clean_up_repo_mirrors | bool %} - {% if kolla_base_distro == 'rocky' %} - RUN \ - if [ -f /etc/yum.repos.d.backup/repos.tar.gz ]; then \ - tar -xzf /etc/yum.repos.d.backup/repos.tar.gz -C /etc/yum.repos.d && \ - rm -rf /etc/yum.repos.d.backup/; \ - fi && \ - {% if stackhpc_enable_ovn_lts_repo | bool %} - if [ -f /etc/yum.repos.d/ovn-lts-centos-stream-10.repo ]; then \ - rm /etc/yum.repos.d/ovn-lts-centos-stream-10.repo; \ - fi && \ - {% endif %} - if grep -r '{{ stackhpc_repo_mirror_url }}' /etc/yum.repos.d; then \ - echo "Found repository mirror in Yum repositories"; \ - exit 1; \ - fi - {% else %} - RUN \ - if [ -f /etc/apt/sources.list.backup ]; then \ - mv /etc/apt/sources.list.backup /etc/apt/sources.list; \ - fi && \ - if grep -r '{{ stackhpc_repo_mirror_url }}' /etc/apt/sources.list; then \ - echo "Found repository mirror in APT repositories"; \ - exit 1; \ - fi - {% endif %} - {% endif %} - kolla_toolbox_header: | - ENV UPPER_CONSTRAINTS_FILE=https://raw.githubusercontent.com/stackhpc/requirements/stackhpc/{{ openstack_release }}/upper-constraints.txt + {{ macros.install_packages(base_ubuntu_package_pre_packages | customizable("base_ubuntu_package_pre_packages")) }} + {% endraw %} bifrost_base_header: | ADD additions-archive / ENV TOX_CONSTRAINTS_FILE=/requirements/upper-constraints.txt + kolla_toolbox_header: | + ENV UPPER_CONSTRAINTS_FILE=https://raw.githubusercontent.com/stackhpc/requirements/stackhpc/{{ openstack_release }}/upper-constraints.txt ironic_inspector_header: | ADD additions-archive / @@ -516,118 +334,7 @@ kolla_build_customizations_common: neutron_mlnx_agent_pip_packages_override: - networking-mlnx@git+https://opendev.org/x/networking-mlnx@master -stackhpc_kolla_build_customizations: - rocky-9: - base_centos_yum_repo_packages_append: - - centos-release-ceph-squid - base_centos_yum_repo_packages_remove: - - centos-release-ceph-reef - base_centos_yum_repos_to_disable_remove: - - centos-ceph-reef - - epel - - centos9-nfv-ovs - - centos9-opstools - - centos9-rabbitmq - - centos9-storage - kolla_toolbox_packages_remove: - - openvswitch - kolla_toolbox_packages_append: - - openvswitch3.3 - manila_base_packages_remove: - - openvswitch - manila_base_packages_append: - - openvswitch3.3 - neutron_base_packages_remove: - - openvswitch - - python3-openvswitch - neutron_base_packages_append: - - openvswitch3.3 - - python3-openvswitch3.3 - neutron_server_packages_append: - - python3-ethtool - nova_base_packages_remove: - - openvswitch - - python3-openvswitch - nova_base_packages_append: - - openvswitch3.3 - - python3-openvswitch3.3 - nova_compute_packages_append: - - python3-ethtool - nova_libvirt_packages_remove: - - openvswitch - octavia_base_packages_remove: - - python3-openvswitch - openvswitch_base_packages_remove: - - openvswitch - - python3-openvswitch - openvswitch_base_packages_append: - - openvswitch3.3 - - python3-openvswitch3.3 - ovn_base_packages_override: - - ovn24.03 - ovn_controller_packages_override: - - ovn24.03-host - ovn_nb_db_server_packages_override: - - ovn24.03-central - ovn_northd_packages_override: - - ovn24.03-central - ovn_sb_db_server_packages_override: - - ovn24.03-central - rocky-10: - base_centos_yum_repos_to_disable_remove: - - epel - - centos-nfv-openvswitch - kolla_toolbox_packages_remove: - - openvswitch3.5 - kolla_toolbox_packages_append: - - openvswitch - manila_base_packages_remove: - - openvswitch3.5 - manila_base_packages_append: - - openvswitch - neutron_base_packages_remove: - - openvswitch3.5 - - python3-openvswitch3.5 - neutron_base_packages_append: - - openvswitch - - python3-openvswitch - nova_base_packages_remove: - - openvswitch3.5 - - python3-openvswitch3.5 - nova_base_packages_append: - - openvswitch - - python3-openvswitch - nova_libvirt_packages_remove: - - openvswitch3.5 - nova_libvirt_packages_append: - - openvswitch - octavia_base_packages_remove: - - openvswitch3.5 - - python3-openvswitch3.5 - octavia_base_packages_append: - - openvswitch - - python3-openvswitch - openvswitch_base_packages_remove: - - openvswitch3.5 - - python3-openvswitch3.5 - openvswitch_base_packages_append: - - openvswitch - - python3-openvswitch - ovn_base_packages_override: - - ovn24.03 - ovn_controller_packages_override: - - ovn24.03-host - ovn_nb_db_server_packages_override: - - ovn24.03-central - ovn_northd_packages_override: - - ovn24.03-central - ovn_sb_db_server_packages_override: - - ovn24.03-central - ubuntu-noble: - neutron_server_packages_append: - - python3-ethtool - nova_compute_packages_append: - - python3-ethtool +#stackhpc_kolla_build_customizations: # Dict mapping image customization variable names to their values. # Each variable takes the form: diff --git a/etc/kayobe/kolla/globals.yml b/etc/kayobe/kolla/globals.yml index 250d642c11..a5ad932f9c 100644 --- a/etc/kayobe/kolla/globals.yml +++ b/etc/kayobe/kolla/globals.yml @@ -68,8 +68,6 @@ prometheus_blackbox_exporter_endpoints_kayobe: prometheus_openstack_exporter_interval: "{{ stackhpc_prometheus_openstack_exporter_interval }}s" -rabbitmq_image: "{% raw %}{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/rabbitmq-4-1{% endraw %}" - # NOTE(seunghun1ee) Disable database TLS until ProxySQL 2.7 gets bug fix for # https://github.com/sysown/proxysql/issues/4877 or K-A bumps ProxySQL to 3.x. database_enable_tls_internal: false diff --git a/etc/kayobe/kolla/kolla-build.conf b/etc/kayobe/kolla/kolla-build.conf index 21922e3f2c..9555b3878e 100644 --- a/etc/kayobe/kolla/kolla-build.conf +++ b/etc/kayobe/kolla/kolla-build.conf @@ -3,38 +3,11 @@ {# snapshots, so pin to a specific tag. #} {# This tag should be updated when Ubuntu package repo snapshot versions are changed. #} {% if kolla_base_distro == 'ubuntu' %} -base_tag = noble-20241118.1 -apt_preferences = {{ lookup('env', 'KAYOBE_CONFIG_PATH') }}/environments/ci-builder/builder-apt-preferences -{# Similarly pinning to Rocky 9 minor version used in our repos #} +base_tag = noble-20260509.1 {% elif kolla_base_distro == 'rocky' %} -{% if kolla_base_distro_version == '9' %} -base_tag = 9.{{ stackhpc_pulp_repo_rocky_9_minor_version }} -{% elif kolla_base_distro_version == '10' %} base_tag = 10.{{ stackhpc_pulp_repo_rocky_10_minor_version }} -{% endif %} # NOTE(Alex-Welsh): rpm_setup_config is intentionally left blank to override defaults rpm_setup_config = {% endif %} build_args = {{ (kolla_build_args | default({})).items() | map('join', ':') | join(',') }} - -[openstack-base] -type = git -location = https://github.com/stackhpc/requirements -reference = stackhpc/{{ openstack_release }} - -[etcd] -version = 3.5.27 -sha256 = amd64:0aad9a9e4e0817a021e933f9806a2b2960a62f949ad5a3d6436d8886945cb1bc,arm64:1277309f540c5a0329c428f95455c9f76d24f768c8d28fd2753e891c379053fa - -[letsencrypt-lego] -version = v4.23.1 -sha256 = amd64:1fd60b1fd59c239bed22719a5de402cb745d1f933540cb1ec196e2c03e6e8882,arm64:1114745108343286d4bff189b4bdee3cba9d07ebcacc673860d91ab951d31e0d - -[magnum-conductor-plugin-helm] -version = v4.1.4 -sha256 = amd64:70b2c30a19da4db264dfd68c8a3664e05093a361cefd89572ffb36f8abfa3d09,arm64:13d03672be289045d2ff00e4e345d61de1c6f21c1257a45955a30e8ae036d8f1 - -# TODO: move to kolla_sources in kolla.yml once https://review.opendev.org/c/openstack/kayobe/+/970268 is available -[prometheus-cadvisor] -version = 0.56.2 -sha256 = amd64:ad92930f16a2f9da15190675e09eeaceb8fd38637d07a686bb0dd68695f692af,arm64:b7a707379496fd7a7b5d2768c5c494427112f534ba5069f889af28ffe6ad11bb +logs = /tmp/kolla diff --git a/etc/kayobe/kolla/repos.yaml b/etc/kayobe/kolla/repos.yaml new file mode 100644 index 0000000000..9273b7bc27 --- /dev/null +++ b/etc/kayobe/kolla/repos.yaml @@ -0,0 +1,104 @@ +--- +ubuntu: + ubuntu: + url: "{{ stackhpc_repo_ubuntu_noble_url }}" + suite: "noble noble-updates noble-backports" + component: "main universe" + gpg_key: "/usr/share/keyrings/ubuntu-archive-keyring.gpg" + trusted: True + ubuntu-security: + url: "{{ stackhpc_repo_ubuntu_noble_security_url }}" + suite: "noble-security" + component: "main universe" + gpg_key: "/usr/share/keyrings/ubuntu-archive-keyring.gpg" + trusted: True + ubuntu-cloud-archive: + url: "{{ stackhpc_repo_ubuntu_cloud_archive_url }}" + component: "main" + gpg_key: "/usr/share/keyrings/ubuntu-cloud-keyring.gpg" + suite: "noble-updates/{{ openstack_release_codename }}" + trusted: True + +rpm: + appstream: + baseurl: "{{ stackhpc_repo_rocky_10_appstream_url }}" + gpgkey: "https://dl.rockylinux.org/pub/rocky/RPM-GPG-KEY-Rocky-10" + name: "appstream" + baseos: + baseurl: "{{ stackhpc_repo_rocky_10_baseos_url }}" + gpgkey: "https://dl.rockylinux.org/pub/rocky/RPM-GPG-KEY-Rocky-10" + name: "baseos" + ceph: + baseurl: "{{ stackhpc_repo_centos_stream_10_storage_ceph_squid_url }}" + gpgkey: "https://www.centos.org/keys/RPM-GPG-KEY-CentOS-SIG-Storage" + name: "centos-ceph-squid" + crb: + baseurl: "{{ stackhpc_repo_rocky_10_crb_url }}" + gpgkey: "https://dl.rockylinux.org/pub/rocky/RPM-GPG-KEY-Rocky-10" + name: "crb" + docker-ce: + baseurl: "{{ stackhpc_repo_centos_stream_10_docker_url }}" + gpgkey: "https://download.docker.com/linux/centos/gpg" + name: "docker-ce" + epel: + baseurl: "{{ stackhpc_repo_epel_10_url }}" + gpgkey: "https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-$releasever" + name: "epel" + erlang: + baseurl: "{{ stackhpc_repo_rhel9_rabbitmq_erlang_url }}" + gpgkey: "https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key" + name: "rabbitmq_rabbitmq-erlang" + extras: + baseurl: "{{ stackhpc_repo_rocky_10_extras_url }}" + gpgkey: "https://dl.rockylinux.org/pub/rocky/RPM-GPG-KEY-Rocky-10" + name: "extras" + fluentd: + baseurl: "{{ stackhpc_repo_rhel_10_fluent_6_url }}" + gpgkey: "https://fluentd.cdn.cncf.io/GPG-KEY-fluent-package" + name: "fluent-package-lts" + grafana: + baseurl: "{{ stackhpc_repo_grafana_url }}" + gpgkey: "https://rpm.grafana.com/gpg.key" + name: "grafana" + hacluster: + baseurl: "{{ stackhpc_repo_rocky_10_highavailability_url }}" + gpgkey: "https://dl.rockylinux.org/pub/rocky/RPM-GPG-KEY-Rocky-10" + name: "highavailability" + mariadb: + baseurl: "{{ stackhpc_repo_rhel_10_mariadb_11_4_url }}" + gpgkey: "https://downloads.mariadb.com/MariaDB/RPM-GPG-KEY-MariaDB" + name: "mariadb" + opensearch: + baseurl: "{{ stackhpc_repo_opensearch_3_x_yum_url }}" + gpgkey: "https://artifacts.opensearch.org/publickeys/opensearch-release.pgp" + repo_gpgcheck: 1 + name: "opensearch-3.x" + opensearch-dashboards: + baseurl: "{{ stackhpc_repo_opensearch_dashboards_3_x_yum_url }}" + gpgkey: "https://artifacts.opensearch.org/publickeys/opensearch-release.pgp" + repo_gpgcheck: 1 + name: "opensearch-dashboards-3.x" + openvswitch: + baseurl: "{{ stackhpc_repo_centos_stream_10_nfv_openvswitch_url }}" + gpgkey: "https://www.centos.org/keys/RPM-GPG-KEY-CentOS-SIG-NFV" + name: "centos-nfv-openvswitch" + proxysql: + baseurl: "{{ stackhpc_repo_almalinux_10_proxysql_3_0_url }}" + gpgkey: "https://repo.proxysql.com/ProxySQL/proxysql-3.0.x/repo_pub_key" + name: "proxysql" + rabbitmq: + baseurl: "{{ stackhpc_repo_rhel9_rabbitmq_server_url }}" + gpgkey: | + https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key + https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc + name: "rabbitmq_rabbitmq-server" + security: + baseurl: "{{ stackhpc_repo_rocky_10_security_url }}" + gpgkey: "https://dl.rockylinux.org/pub/rocky/RPM-GPG-KEY-Rocky-10" + name: "security" + +rocky-aarch64: + erlang: + baseurl: "{{ stackhpc_repo_rhel9_rabbitmq_erlang_27_url }}" + gpgkey: "https://download.copr.fedorainfracloud.org/results/@openstack-kolla/rabbitmq-erlang-27/pubkey.gpg" + name: "copr-rabbitmq-erlang" diff --git a/etc/kayobe/openstack.yml b/etc/kayobe/openstack.yml index c35c43b7cc..a879f37a65 100644 --- a/etc/kayobe/openstack.yml +++ b/etc/kayobe/openstack.yml @@ -6,7 +6,6 @@ #openstack_release: # Codename of the current OpenStack release. -# NOTE(upgrade): Update to current release codename. openstack_release_codename: "gazpacho" # Name of the current OpenStack branch. Default is "stable/2026.1". diff --git a/etc/kayobe/pulp-repo-versions.yml b/etc/kayobe/pulp-repo-versions.yml index 653cb9ae55..84770cc558 100644 --- a/etc/kayobe/pulp-repo-versions.yml +++ b/etc/kayobe/pulp-repo-versions.yml @@ -1,142 +1,49 @@ --- # This file is autogenerated by Ansible using the following workflow: # https://github.com/stackhpc/stackhpc-release-train/actions/workflows/package-update-kayobe.yml -stackhpc_pulp_repo_almalinux_9_proxysql_2_7_version: 20250627T134211 -stackhpc_pulp_repo_centos_stream_10_docker_aarch64_version: 20260506T232721 -stackhpc_pulp_repo_centos_stream_10_docker_version: 20260506T205129 -stackhpc_pulp_repo_centos_stream_10_nfv_openvswitch_aarch64_version: 20260421T225912 -stackhpc_pulp_repo_centos_stream_10_nfv_openvswitch_version: 20260421T222634 -stackhpc_pulp_repo_centos_stream_10_openstack_epoxy_aarch64_version: 20260227T222400 -stackhpc_pulp_repo_centos_stream_10_openstack_epoxy_version: 20260227T214730 -stackhpc_pulp_repo_centos_stream_10_ovn_lts_aarch64_version: 20260327T163952 -stackhpc_pulp_repo_centos_stream_10_ovn_lts_version: 20260327T163952 -stackhpc_pulp_repo_centos_stream_10_storage_ceph_squid_aarch64_version: 20260220T152827 -stackhpc_pulp_repo_centos_stream_10_storage_ceph_squid_version: 20260220T152827 -stackhpc_pulp_repo_centos_stream_9_docker_aarch64_version: 20260506T224443 -stackhpc_pulp_repo_centos_stream_9_docker_version: 20260506T205129 -stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_aarch64_version: 20260421T223857 -stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version: 20260421T222634 -stackhpc_pulp_repo_centos_stream_9_openstack_epoxy_aarch64_version: 20250521T015033 -stackhpc_pulp_repo_centos_stream_9_openstack_epoxy_version: 20250521T021940 -stackhpc_pulp_repo_centos_stream_9_opstools_aarch64_version: 20240927T073838 -stackhpc_pulp_repo_centos_stream_9_opstools_version: 20231213T031318 -stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_aarch64_version: 20250731T023010 -stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version: 20250731T030732 -stackhpc_pulp_repo_doca_2_9_1_rhel9_4_modules_version: 20241213T112245 -stackhpc_pulp_repo_doca_2_9_1_rhel9_4_version: 20241211T153620 -stackhpc_pulp_repo_doca_2_9_1_rhel9_5_modules_version: 20250115T150314 -stackhpc_pulp_repo_doca_2_9_1_rhel9_5_version: 20241211T171301 -stackhpc_pulp_repo_doca_2_9_3_rhel9_6_modules_version: 20250714T141841 -stackhpc_pulp_repo_doca_2_9_3_rhel9_6_version: 20250703T135021 +stackhpc_pulp_repo_almalinux_10_proxysql_3_0_version: 20260605T211649 +stackhpc_pulp_repo_centos_stream_10_docker_aarch64_version: 20260620T010620 +stackhpc_pulp_repo_centos_stream_10_docker_version: 20260619T215327 +stackhpc_pulp_repo_centos_stream_10_nfv_openvswitch_aarch64_version: 20260603T233007 +stackhpc_pulp_repo_centos_stream_10_nfv_openvswitch_version: 20260602T230909 +stackhpc_pulp_repo_centos_stream_10_storage_ceph_squid_aarch64_version: 20260603T233007 +stackhpc_pulp_repo_centos_stream_10_storage_ceph_squid_version: 20260602T230909 stackhpc_pulp_repo_doca_3_2_2_rhel10_aarch64_version: 20260326T091359 stackhpc_pulp_repo_doca_3_2_2_rhel10_x86_64_version: 20260326T091359 -stackhpc_pulp_repo_doca_3_2_2_rhel9_7_modules_aarch64_version: 20260424T151043 -stackhpc_pulp_repo_doca_3_2_2_rhel9_7_modules_version: 20260424T151043 -stackhpc_pulp_repo_doca_3_2_2_rhel9_aarch64_version: 20260326T091359 -stackhpc_pulp_repo_doca_3_2_2_rhel9_version: 20260326T091359 -stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20260506T205129 +stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20260622T222357 stackhpc_pulp_repo_elrepo_10_aarch64_version: 20260220T152827 -stackhpc_pulp_repo_elrepo_10_version: 20260426T213637 -stackhpc_pulp_repo_elrepo_9_aarch64_version: 20250408T030629 -stackhpc_pulp_repo_elrepo_9_version: 20260426T203635 -stackhpc_pulp_repo_epel_10_aarch64_version: 20260505T223913 -stackhpc_pulp_repo_epel_10_version: 20260506T215737 -stackhpc_pulp_repo_epel_9_aarch64_version: 20260506T224443 -stackhpc_pulp_repo_epel_9_version: 20260506T215737 -stackhpc_pulp_repo_grafana_version: 20260506T205914 -stackhpc_pulp_repo_opensearch_2_x_version: 20260312T214445 -stackhpc_pulp_repo_opensearch_dashboards_2_x_version: 20260312T214445 -stackhpc_pulp_repo_rhel9_rabbitmq_erlang_26_aarch64_version: 20260112T224827 +stackhpc_pulp_repo_elrepo_10_version: 20260620T002710 +stackhpc_pulp_repo_epel_10_aarch64_version: 20260624T000231 +stackhpc_pulp_repo_epel_10_version: 20260623T220913 +stackhpc_pulp_repo_ubuntu_noble_fluent_6_version: 20260615T110539 +stackhpc_pulp_repo_rhel_10_fluent_6_version: 20260327T202539 +stackhpc_pulp_repo_grafana_version: 20260623T210745 +stackhpc_pulp_repo_grafana_apt_version: 20260622T222446 +stackhpc_pulp_repo_opensearch_3_x_yum_version: 20260610T213138 +stackhpc_pulp_repo_opensearch_dashboards_3_x_yum_version: 20260610T213138 stackhpc_pulp_repo_rhel9_rabbitmq_erlang_27_aarch64_version: 20260112T224827 -stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version: 20260423T205618 -stackhpc_pulp_repo_rhel9_rabbitmq_server_version: 20260423T205618 -stackhpc_pulp_repo_rhel_10_mariadb_10_11_aarch64_version: 20260220T152827 -stackhpc_pulp_repo_rhel_10_mariadb_10_11_version: 20260220T152827 -stackhpc_pulp_repo_rhel_9_influxdb_aarch64_version: 20260112T224827 -stackhpc_pulp_repo_rhel_9_influxdb_version: 20260506T205410 -stackhpc_pulp_repo_rhel_9_mariadb_10_11_aarch64_version: 20260204T223146 -stackhpc_pulp_repo_rhel_9_mariadb_10_11_version: 20260204T213517 -stackhpc_pulp_repo_rhel_9_treasuredata_5_aarch64_version: 20251219T213344 -stackhpc_pulp_repo_rhel_9_treasuredata_5_version: 20251219T202129 -stackhpc_pulp_repo_rocky_10_1_appstream_aarch64_version: 20260506T232721 -stackhpc_pulp_repo_rocky_10_1_appstream_source_version: 20260506T230406 -stackhpc_pulp_repo_rocky_10_1_appstream_version: 20260506T223941 -stackhpc_pulp_repo_rocky_10_1_baseos_aarch64_version: 20260506T232721 -stackhpc_pulp_repo_rocky_10_1_baseos_source_version: 20260506T230406 -stackhpc_pulp_repo_rocky_10_1_baseos_version: 20260506T231232 -stackhpc_pulp_repo_rocky_10_1_crb_aarch64_version: 20260506T232721 -stackhpc_pulp_repo_rocky_10_1_crb_source_version: 20260428T223954 -stackhpc_pulp_repo_rocky_10_1_crb_version: 20260506T223941 -stackhpc_pulp_repo_rocky_10_1_extras_aarch64_version: 20260227T002947 -stackhpc_pulp_repo_rocky_10_1_extras_source_version: 20260413T163104 -stackhpc_pulp_repo_rocky_10_1_extras_version: 20260226T235218 -stackhpc_pulp_repo_rocky_10_1_highavailability_aarch64_version: 20260506T232721 -stackhpc_pulp_repo_rocky_10_1_highavailability_source_version: 20260428T223954 -stackhpc_pulp_repo_rocky_10_1_highavailability_version: 20260506T223941 -stackhpc_pulp_repo_rocky_10_1_security_aarch64_version: 20260510T225242 -stackhpc_pulp_repo_rocky_10_1_security_source_version: 20260510T222658 -stackhpc_pulp_repo_rocky_10_1_security_version: 20260510T223302 -stackhpc_pulp_repo_rocky_9_1_appstream_version: 20231207T013715 -stackhpc_pulp_repo_rocky_9_1_baseos_version: 20231206T014015 -stackhpc_pulp_repo_rocky_9_1_crb_version: 20231211T120328 -stackhpc_pulp_repo_rocky_9_1_extras_version: 20231211T120328 -stackhpc_pulp_repo_rocky_9_1_highavailability_version: 20231208T011702 -stackhpc_pulp_repo_rocky_9_2_appstream_version: 20231211T120328 -stackhpc_pulp_repo_rocky_9_2_baseos_version: 20231211T120328 -stackhpc_pulp_repo_rocky_9_2_crb_version: 20231207T013715 -stackhpc_pulp_repo_rocky_9_2_extras_version: 20231207T013715 -stackhpc_pulp_repo_rocky_9_2_highavailability_version: 20231208T011702 -stackhpc_pulp_repo_rocky_9_3_appstream_version: 20240508T001430 -stackhpc_pulp_repo_rocky_9_3_baseos_version: 20240509T005935 -stackhpc_pulp_repo_rocky_9_3_crb_version: 20240429T003818 -stackhpc_pulp_repo_rocky_9_3_extras_version: 20240506T000343 -stackhpc_pulp_repo_rocky_9_3_highavailability_version: 20240510T001129 -stackhpc_pulp_repo_rocky_9_4_appstream_version: 20240816T002610 -stackhpc_pulp_repo_rocky_9_4_baseos_version: 20240816T002610 -stackhpc_pulp_repo_rocky_9_4_crb_version: 20240816T002610 -stackhpc_pulp_repo_rocky_9_4_extras_version: 20240816T002610 -stackhpc_pulp_repo_rocky_9_4_highavailability_version: 20240816T002610 -stackhpc_pulp_repo_rocky_9_5_appstream_aarch64_version: 20250203T124809 -stackhpc_pulp_repo_rocky_9_5_appstream_version: 20250202T120931 -stackhpc_pulp_repo_rocky_9_5_baseos_aarch64_version: 20250201T123411 -stackhpc_pulp_repo_rocky_9_5_baseos_version: 20250201T125442 -stackhpc_pulp_repo_rocky_9_5_crb_aarch64_version: 20250206T042027 -stackhpc_pulp_repo_rocky_9_5_crb_version: 20250204T095037 -stackhpc_pulp_repo_rocky_9_5_extras_aarch64_version: 20250124T030113 -stackhpc_pulp_repo_rocky_9_5_extras_version: 20250122T025402 -stackhpc_pulp_repo_rocky_9_5_highavailability_aarch64_version: 20250206T042027 -stackhpc_pulp_repo_rocky_9_5_highavailability_version: 20250204T095037 -stackhpc_pulp_repo_rocky_9_6_appstream_aarch64_version: 20250614T024523 -stackhpc_pulp_repo_rocky_9_6_appstream_version: 20250614T015933 -stackhpc_pulp_repo_rocky_9_6_baseos_aarch64_version: 20250614T024523 -stackhpc_pulp_repo_rocky_9_6_baseos_version: 20250614T030644 -stackhpc_pulp_repo_rocky_9_6_crb_aarch64_version: 20250614T024523 -stackhpc_pulp_repo_rocky_9_6_crb_version: 20250614T015933 -stackhpc_pulp_repo_rocky_9_6_extras_aarch64_version: 20250726T045704 -stackhpc_pulp_repo_rocky_9_6_extras_version: 20250726T040613 -stackhpc_pulp_repo_rocky_9_6_highavailability_aarch64_version: 20250605T150141 -stackhpc_pulp_repo_rocky_9_6_highavailability_version: 20250605T150141 -stackhpc_pulp_repo_rocky_9_7_appstream_aarch64_version: 20260519T222921 -stackhpc_pulp_repo_rocky_9_7_appstream_source_version: 20260519T215441 -stackhpc_pulp_repo_rocky_9_7_appstream_version: 20260520T215442 -stackhpc_pulp_repo_rocky_9_7_baseos_aarch64_version: 20260520T223010 -stackhpc_pulp_repo_rocky_9_7_baseos_source_version: 20260519T215441 -stackhpc_pulp_repo_rocky_9_7_baseos_version: 20260520T223700 -stackhpc_pulp_repo_rocky_9_7_crb_aarch64_version: 20260520T223010 -stackhpc_pulp_repo_rocky_9_7_crb_source_version: 20260428T214810 -stackhpc_pulp_repo_rocky_9_7_crb_version: 20260519T212648 -stackhpc_pulp_repo_rocky_9_7_extras_aarch64_version: 20260226T234714 -stackhpc_pulp_repo_rocky_9_7_extras_source_version: 20260226T232039 -stackhpc_pulp_repo_rocky_9_7_extras_version: 20260226T231043 -stackhpc_pulp_repo_rocky_9_7_highavailability_aarch64_version: 20260514T224159 -stackhpc_pulp_repo_rocky_9_7_highavailability_source_version: 20260507T220441 -stackhpc_pulp_repo_rocky_9_7_highavailability_version: 20260514T220209 -stackhpc_pulp_repo_rocky_9_7_security_aarch64_version: 20260519T222921 -stackhpc_pulp_repo_rocky_9_7_security_source_version: 20260520T222157 -stackhpc_pulp_repo_rocky_9_7_security_version: 20260520T215442 -stackhpc_pulp_repo_rocky_9_sig_security_common_aarch64_version: 20260305T225932 -stackhpc_pulp_repo_rocky_9_sig_security_common_source_version: 20260305T224636 -stackhpc_pulp_repo_rocky_9_sig_security_common_version: 20260305T222525 -stackhpc_pulp_repo_ubuntu_cloud_archive_version: 20260506T232713 -stackhpc_pulp_repo_ubuntu_noble_security_version: 20260507T015832 -stackhpc_pulp_repo_ubuntu_noble_version: 20260507T015832 +stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version: 20260616T214234 +stackhpc_pulp_repo_rhel9_rabbitmq_server_version: 20260616T214234 +stackhpc_pulp_repo_rhel_10_mariadb_11_4_aarch64_version: 20260527T210633 +stackhpc_pulp_repo_rhel_10_mariadb_11_4_version: 20260527T210633 +stackhpc_pulp_repo_rocky_10_2_appstream_aarch64_version: 20260620T010620 +stackhpc_pulp_repo_rocky_10_2_appstream_source_version: 20260620T003535 +stackhpc_pulp_repo_rocky_10_2_appstream_version: 20260620T002710 +stackhpc_pulp_repo_rocky_10_2_baseos_aarch64_version: 20260620T010620 +stackhpc_pulp_repo_rocky_10_2_baseos_source_version: 20260620T003535 +stackhpc_pulp_repo_rocky_10_2_baseos_version: 20260620T003803 +stackhpc_pulp_repo_rocky_10_2_crb_aarch64_version: 20260620T010620 +stackhpc_pulp_repo_rocky_10_2_crb_source_version: 20260602T004048 +stackhpc_pulp_repo_rocky_10_2_crb_version: 20260620T002710 +stackhpc_pulp_repo_rocky_10_2_extras_aarch64_version: 20260602T012631 +stackhpc_pulp_repo_rocky_10_2_extras_source_version: 20260602T004048 +stackhpc_pulp_repo_rocky_10_2_extras_version: 20260602T001113 +stackhpc_pulp_repo_rocky_10_2_highavailability_aarch64_version: 20260602T012631 +stackhpc_pulp_repo_rocky_10_2_highavailability_source_version: 20260602T004048 +stackhpc_pulp_repo_rocky_10_2_highavailability_version: 20260602T001113 +stackhpc_pulp_repo_rocky_10_2_security_aarch64_version: 20260606T230245 +stackhpc_pulp_repo_rocky_10_2_security_source_version: 20260605T232846 +stackhpc_pulp_repo_rocky_10_2_security_version: 20260606T223509 +stackhpc_pulp_repo_ubuntu_cloud_archive_version: 20260621T235438 +stackhpc_pulp_repo_ubuntu_noble_security_version: 20260622T030723 +stackhpc_pulp_repo_ubuntu_noble_version: 20260622T030723 diff --git a/etc/kayobe/pulp.yml b/etc/kayobe/pulp.yml index b766ab5a9c..04187c1049 100644 --- a/etc/kayobe/pulp.yml +++ b/etc/kayobe/pulp.yml @@ -206,60 +206,9 @@ stackhpc_pulp_distribution_deb_production: >- # Content comes in from release repositories, via pinned repo versions. -# Whether to sync Rocky Linux 9 packages. -stackhpc_pulp_sync_rocky_9: "{{ os_distribution == 'rocky' and os_release == '9' }}" -# Rocky 9 minor version number. Supported values: 6, 7. Default is 7 -stackhpc_pulp_repo_rocky_9_minor_version: '7' -# Rocky 9 Snapshot versions. The defaults use the appropriate version from -# pulp-repo-versions.yml for the selected minor release. - # Define the architecture suffix arch_suffix: "{{ '_aarch64' if kolla_base_arch == 'aarch64' else '' }}" -# Rocky 9 selected-architecture snapshot versions. -# NOTE(bbezak): Existing CI build and repo URL configuration uses these -# variables as selected-architecture aliases that follow kolla_base_arch. -# Pulp repo sync should use the explicit architecture-specific variables below. -stackhpc_pulp_repo_rocky_9_baseos_version: "{{ stackhpc_pulp_repo_rocky_9_baseos_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rocky_9_baseos_x86_64_version }}" -stackhpc_pulp_repo_rocky_9_appstream_version: "{{ stackhpc_pulp_repo_rocky_9_appstream_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rocky_9_appstream_x86_64_version }}" -stackhpc_pulp_repo_rocky_9_extras_version: "{{ stackhpc_pulp_repo_rocky_9_extras_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rocky_9_extras_x86_64_version }}" -stackhpc_pulp_repo_rocky_9_crb_version: "{{ stackhpc_pulp_repo_rocky_9_crb_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rocky_9_crb_x86_64_version }}" -stackhpc_pulp_repo_rocky_9_highavailability_version: "{{ stackhpc_pulp_repo_rocky_9_highavailability_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rocky_9_highavailability_x86_64_version }}" -stackhpc_pulp_repo_rocky_9_security_version: "{{ stackhpc_pulp_repo_rocky_9_security_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rocky_9_security_x86_64_version }}" - -# Rocky 9 architecture-specific snapshot versions. -stackhpc_pulp_repo_rocky_9_baseos_x86_64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_baseos_version') }}" -stackhpc_pulp_repo_rocky_9_appstream_x86_64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_appstream_version') }}" -stackhpc_pulp_repo_rocky_9_extras_x86_64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_extras_version') }}" -stackhpc_pulp_repo_rocky_9_crb_x86_64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_crb_version') }}" -stackhpc_pulp_repo_rocky_9_highavailability_x86_64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_highavailability_version') }}" -stackhpc_pulp_repo_rocky_9_security_x86_64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_security_version') }}" -stackhpc_pulp_repo_rocky_9_baseos_aarch64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_baseos_aarch64_version') }}" -stackhpc_pulp_repo_rocky_9_appstream_aarch64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_appstream_aarch64_version') }}" -stackhpc_pulp_repo_rocky_9_extras_aarch64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_extras_aarch64_version') }}" -stackhpc_pulp_repo_rocky_9_crb_aarch64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_crb_aarch64_version') }}" -stackhpc_pulp_repo_rocky_9_highavailability_aarch64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_highavailability_aarch64_version') }}" -stackhpc_pulp_repo_rocky_9_security_aarch64_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_security_aarch64_version') }}" - -# Rocky 9 Multiarch repositories -#NOTE(bbezak): Versioned Erlang repos (aarch64 only). Fallback to generic Erlang version if not defined. -stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel9_rabbitmq_erlang' ~ arch_suffix ~ '_version', default=stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version) }}" -stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_26_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel9_rabbitmq_erlang_26' ~ arch_suffix ~ '_version', default=stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_version) }}" -stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_27_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel9_rabbitmq_erlang_27' ~ arch_suffix ~ '_version', default=stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_version) }}" -stackhpc_pulp_repo_multiarch_centos_stream_9_nfv_openvswitch_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_centos_stream_9_openstack_epoxy_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_openstack_epoxy' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_centos_stream_9_opstools_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_opstools' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_centos_stream_9_storage_ceph_squid_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_centos_stream_9_docker_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_docker' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_rhel_9_treasuredata_5_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_9_treasuredata_5' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_rhel_9_mariadb_10_11_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_9_mariadb_10_11' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_rhel_9_influxdb_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_9_influxdb' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_epel_9_version: "{{ lookup('vars', 'stackhpc_pulp_repo_epel_9' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_rocky_9_sig_security_common_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_sig_security_common' ~ arch_suffix ~ '_version') }}" - -# Whether to sync packages common to all RHEL 9 derivatives. -stackhpc_pulp_sync_el_9: "{{ stackhpc_pulp_sync_rocky_9 | bool }}" - # RPM architectures to sync from StackHPC Ark Pulp into local Pulp. # Valid values are "x86_64" and "aarch64". stackhpc_pulp_rpm_architectures: @@ -268,7 +217,7 @@ stackhpc_pulp_rpm_architectures: # Whether to sync Rocky Linux 10 packages. stackhpc_pulp_sync_rocky_10: "{{ os_distribution == 'rocky' and os_release == '10' }}" # Rocky 10 minor version number. Supported values: 1. Default is 1 -stackhpc_pulp_repo_rocky_10_minor_version: '1' +stackhpc_pulp_repo_rocky_10_minor_version: '2' # Rocky 10 Snapshot versions. The defaults use the appropriate version from # pulp-repo-versions.yml for the selected minor release. @@ -303,8 +252,11 @@ stackhpc_pulp_repo_multiarch_centos_stream_10_openstack_epoxy_version: "{{ looku stackhpc_pulp_repo_multiarch_centos_stream_10_ovn_lts_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_10_ovn_lts' ~ arch_suffix ~ '_version') }}" stackhpc_pulp_repo_multiarch_centos_stream_10_storage_ceph_squid_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_10_storage_ceph_squid' ~ arch_suffix ~ '_version') }}" stackhpc_pulp_repo_multiarch_centos_stream_10_docker_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_10_docker' ~ arch_suffix ~ '_version') }}" -stackhpc_pulp_repo_multiarch_rhel_10_mariadb_10_11_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_10_mariadb_10_11' ~ arch_suffix ~ '_version') }}" +stackhpc_pulp_repo_multiarch_rhel_10_mariadb_11_4_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_10_mariadb_11_4' ~ arch_suffix ~ '_version') }}" stackhpc_pulp_repo_multiarch_epel_10_version: "{{ lookup('vars', 'stackhpc_pulp_repo_epel_10' ~ arch_suffix ~ '_version') }}" +# These are still el9 upstream +stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel9_rabbitmq_erlang' ~ arch_suffix ~ '_version', default=stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version) }}" +stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_27_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel9_rabbitmq_erlang_27' ~ arch_suffix ~ '_version', default=stackhpc_pulp_repo_multiarch_rhel9_rabbitmq_erlang_version) }}" # Whether to sync packages common to all RHEL 10 derivatives. stackhpc_pulp_sync_el_10: "{{ stackhpc_pulp_sync_rocky_10 | bool }}" @@ -322,287 +274,6 @@ stackhpc_pulp_rpm_repos_default_config: state: present stackhpc_pulp_rpm_repos: - # Repositories common to both Rocky 9 and 10 - - name: Grafana - url: "{{ stackhpc_release_pulp_content_url }}/grafana/oss/rpm/{{ stackhpc_pulp_repo_grafana_version }}" - distribution_name: "grafana-" - base_path: "grafana/oss/rpm/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) }}" - - - name: RabbitMQ - Erlang - RHEL 9 - url: "{{ stackhpc_release_pulp_content_url }}/rabbitmq/erlang/el/9/x86_64/{{ stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version }}" - distribution_name: "rhel9-rabbitmq-erlang-" - base_path: "rabbitmq/erlang/el/9/x86_64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: RabbitMQ - Erlang 26 - RHEL 9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rabbitmq/erlang-26/el/9/aarch64/{{ stackhpc_pulp_repo_rhel9_rabbitmq_erlang_26_aarch64_version }}" - distribution_name: "rhel9-rabbitmq-erlang-26-aarch64-" - base_path: "rabbitmq/erlang-26/el/9/aarch64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: RabbitMQ - Erlang 27 - RHEL 9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rabbitmq/erlang-27/el/9/aarch64/{{ stackhpc_pulp_repo_rhel9_rabbitmq_erlang_27_aarch64_version }}" - distribution_name: "rhel9-rabbitmq-erlang-27-aarch64-" - base_path: "rabbitmq/erlang-27/el/9/aarch64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: RabbitMQ - Server - RHEL 9 - url: "{{ stackhpc_release_pulp_content_url }}/rabbitmq/rabbitmq-server/el/9/noarch/{{ stackhpc_pulp_repo_rhel9_rabbitmq_server_version }}" - distribution_name: "rhel9-rabbitmq-server-" - base_path: "rabbitmq/rabbitmq-server/el/9/x86_64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) }}" - - - name: TreasureData 5 for RHEL 9 - url: "{{ stackhpc_release_pulp_content_url }}/treasuredata/lts/5/redhat/9/x86_64/{{ stackhpc_pulp_repo_rhel_9_treasuredata_5_version }}" - distribution_name: "rhel-9-treasuredata-5-" - base_path: "treasuredata/5/redhat/9/x86_64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: TreasureData 5 for RHEL 9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/treasuredata/lts/5/redhat/9/aarch64/{{ stackhpc_pulp_repo_rhel_9_treasuredata_5_aarch64_version }}" - distribution_name: "rhel-9-treasuredata-5-aarch64-" - base_path: "treasuredata/5/redhat/9/aarch64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: InfluxDB for RHEL 9 - url: "{{ stackhpc_release_pulp_content_url }}/influxdb/rhel/9/x86_64/stable/{{ stackhpc_pulp_repo_rhel_9_influxdb_version }}" - distribution_name: "rhel-9-influxdb-" - base_path: "influxdb/rhel/9/x86_64/stable/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: OpenSearch 2.x - url: "{{ stackhpc_release_pulp_content_url }}/opensearch/2.x/yum/{{ stackhpc_pulp_repo_opensearch_2_x_version }}" - distribution_name: "opensearch-2-x-" - base_path: "opensearch/2.x/yum/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) }}" - - - name: OpenSearch Dashboards 2.x - url: "{{ stackhpc_release_pulp_content_url }}/opensearch-dashboards/2.x/yum/{{ stackhpc_pulp_repo_opensearch_dashboards_2_x_version }}" - distribution_name: "opensearch-dashboards-2-x-" - base_path: "opensearch-dashboards/2.x/yum/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) }}" - - - name: ProxySQL 2.7 for AlmaLinux 9 - url: "{{ stackhpc_release_pulp_content_url }}/ProxySQL/proxysql-2.7.x/almalinux/9/{{ stackhpc_pulp_repo_almalinux_9_proxysql_2_7_version }}" - distribution_name: "almalinux-9-proxysql-2.7-" - base_path: "ProxySQL/proxysql-2.7.x/almalinux/9/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and (stackhpc_pulp_sync_el_9 | bool or stackhpc_pulp_sync_el_10 | bool) }}" - - # Base Rocky 9 repositories - - name: Rocky Linux 9 - AppStream - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/AppStream/x86_64/os/{{ stackhpc_pulp_repo_rocky_9_appstream_x86_64_version }}" - distribution_name: "rocky-9-appstream-" - base_path: "rocky/9/AppStream/x86_64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - AppStream - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/AppStream/aarch64/os/{{ stackhpc_pulp_repo_rocky_9_appstream_aarch64_version }}" - distribution_name: "rocky-9-appstream-aarch64-" - base_path: "rocky/9/AppStream/aarch64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - BaseOS - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/BaseOS/x86_64/os/{{ stackhpc_pulp_repo_rocky_9_baseos_x86_64_version }}" - distribution_name: "rocky-9-baseos-" - base_path: "rocky/9/BaseOS/x86_64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - BaseOS - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/BaseOS/aarch64/os/{{ stackhpc_pulp_repo_rocky_9_baseos_aarch64_version }}" - distribution_name: "rocky-9-baseos-aarch64-" - base_path: "rocky/9/BaseOS/aarch64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - Extras - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/extras/x86_64/os/{{ stackhpc_pulp_repo_rocky_9_extras_x86_64_version }}" - distribution_name: "rocky-9-extras-" - base_path: "rocky/9/extras/x86_64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - Extras - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/extras/aarch64/os/{{ stackhpc_pulp_repo_rocky_9_extras_aarch64_version }}" - distribution_name: "rocky-9-extras-aarch64-" - base_path: "rocky/9/extras/aarch64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - CRB - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/CRB/x86_64/os/{{ stackhpc_pulp_repo_rocky_9_crb_x86_64_version }}" - distribution_name: "rocky-9-crb-" - base_path: "rocky/9/CRB/x86_64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - CRB - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/CRB/aarch64/os/{{ stackhpc_pulp_repo_rocky_9_crb_aarch64_version }}" - distribution_name: "rocky-9-crb-aarch64-" - base_path: "rocky/9/CRB/aarch64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - HighAvailability - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/highavailability/x86_64/os/{{ stackhpc_pulp_repo_rocky_9_highavailability_x86_64_version }}" - distribution_name: "rocky-9-highavailability-" - base_path: "rocky/9/highavailability/x86_64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - HighAvailability - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/highavailability/aarch64/os/{{ stackhpc_pulp_repo_rocky_9_highavailability_aarch64_version }}" - distribution_name: "rocky-9-highavailability-aarch64-" - base_path: "rocky/9/highavailability/aarch64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - Security - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/security/x86_64/os/{{ stackhpc_pulp_repo_rocky_9_security_x86_64_version }}" - distribution_name: "rocky-9-security-" - base_path: "rocky/9/security/x86_64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - Security - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/security/aarch64/os/{{ stackhpc_pulp_repo_rocky_9_security_aarch64_version }}" - distribution_name: "rocky-9-security-aarch64-" - base_path: "rocky/9/security/aarch64/os/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - SIG Security Common - url: "{{ stackhpc_release_pulp_content_url }}/rocky/sig/9/security/x86_64/security-common/{{ stackhpc_pulp_repo_rocky_9_sig_security_common_version }}" - distribution_name: rocky-9-sig-security-common- - base_path: "rocky/sig/9/security/x86_64/security-common/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Rocky Linux 9 - SIG Security Common - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/rocky/sig/9/security/aarch64/security-common/{{ stackhpc_pulp_repo_rocky_9_sig_security_common_aarch64_version }}" - distribution_name: rocky-9-sig-security-common-aarch64- - base_path: "rocky/sig/9/security/aarch64/security-common/" - required: "{{ stackhpc_pulp_sync_rocky_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - # Additional CentOS Stream 9 repositories - - name: CentOS Stream 9 - NFV OpenvSwitch - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/nfv/x86_64/openvswitch-2/{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version }}" - distribution_name: "centos-stream-9-nfv-openvswitch-" - base_path: "centos/9-stream/nfv/x86_64/openvswitch-2/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS Stream 9 - NFV OpenvSwitch - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/nfv/aarch64/openvswitch-2/{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_aarch64_version }}" - distribution_name: "centos-stream-9-nfv-openvswitch-aarch64-" - base_path: "centos/9-stream/nfv/aarch64/openvswitch-2/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS Stream 9 - OpenStack Epoxy - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/cloud/x86_64/openstack-epoxy/{{ stackhpc_pulp_repo_centos_stream_9_openstack_epoxy_version }}" - distribution_name: "centos-stream-9-openstack-epoxy-" - base_path: "centos/9-stream/cloud/x86_64/openstack-epoxy/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS Stream 9 - OpenStack Epoxy - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/cloud/aarch64/openstack-epoxy/{{ stackhpc_pulp_repo_centos_stream_9_openstack_epoxy_aarch64_version }}" - distribution_name: "centos-stream-9-openstack-epoxy-aarch64-" - base_path: "centos/9-stream/cloud/aarch64/openstack-epoxy/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS 9 - OpsTools - collectd - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/opstools/x86_64/collectd-5/{{ stackhpc_pulp_repo_centos_stream_9_opstools_version }}" - distribution_name: "centos-9-opstools-collectd-" - base_path: "centos/9-stream/opstools/x86_64/collectd-5/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS 9 - OpsTools - collectd - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/opstools/aarch64/collectd-5/{{ stackhpc_pulp_repo_centos_stream_9_opstools_aarch64_version }}" - distribution_name: "centos-9-opstools-collectd-aarch64-" - base_path: "centos/9-stream/opstools/aarch64/collectd-5/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS Stream 9 - Ceph Squid - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/storage/x86_64/ceph-squid/{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version }}" - distribution_name: "centos-stream-9-ceph-squid-" - base_path: "centos/9-stream/storage/x86_64/ceph-squid/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS Stream 9 - Ceph Squid - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/centos/9-stream/storage/aarch64/ceph-squid/{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_aarch64_version }}" - distribution_name: "centos-stream-9-ceph-squid-aarch64-" - base_path: "centos/9-stream/storage/aarch64/ceph-squid/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - # EPEL 9 repository - - name: Extra Packages for Enterprise Linux 9 - x86_64 - url: "{{ stackhpc_release_pulp_content_url }}/epel/9/Everything/x86_64/{{ stackhpc_pulp_repo_epel_9_version }}" - distribution_name: "extra-packages-for-enterprise-linux-9-x86_64-" - base_path: "epel/9/Everything/x86_64/" - sync_policy: mirror_content_only - required: "{{ stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Extra Packages for Enterprise Linux 9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/epel/9/Everything/aarch64/{{ stackhpc_pulp_repo_epel_9_aarch64_version }}" - distribution_name: "extra-packages-for-enterprise-linux-9-aarch64-" - base_path: "epel/9/Everything/aarch64/" - sync_policy: mirror_content_only - required: "{{ stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - # ELRepo 9 repository - - name: ELRepo.org Community Enterprise Linux Repository - el9 - url: "{{ stackhpc_release_pulp_content_url }}/elrepo/elrepo/el9/x86_64/{{ stackhpc_pulp_repo_elrepo_9_version }}" - distribution_name: elrepo-el9-x86_64- - base_path: elrepo/elrepo/el9/x86_64/ - sync_policy: mirror_content_only - required: "{{ stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: ELRepo.org Community Enterprise Linux Repository - el9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/elrepo/elrepo/el9/aarch64/{{ stackhpc_pulp_repo_elrepo_9_aarch64_version }}" - distribution_name: elrepo-el9-aarch64- - base_path: elrepo/elrepo/el9/aarch64/ - sync_policy: mirror_content_only - required: "{{ stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - # Third-party repositories - - name: Docker CE for CentOS 9 - url: "{{ stackhpc_release_pulp_content_url }}/docker-ce/centos/9/x86_64/stable/{{ stackhpc_pulp_repo_centos_stream_9_docker_version }}" - distribution_name: "docker-ce-for-centos-9-" - base_path: "docker-ce/centos/9/x86_64/stable/" - required: "{{ stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: Docker CE for CentOS 9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/docker-ce/centos/9/aarch64/stable/{{ stackhpc_pulp_repo_centos_stream_9_docker_aarch64_version }}" - distribution_name: "docker-ce-for-centos-9-aarch64-" - base_path: "docker-ce/centos/9/aarch64/stable/" - required: "{{ stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - # Additional RHEL 9 repositories - - name: MariaDB 10.11 for RHEL 9 - url: "{{ stackhpc_release_pulp_content_url }}/mariadb-10.11/yum/rhel/9/x86_64/{{ stackhpc_pulp_repo_rhel_9_mariadb_10_11_version }}" - distribution_name: "rhel-9-mariadb-10-11-" - base_path: "mariadb-10.11/yum/rhel/9/x86_64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: MariaDB 10.11 for RHEL 9 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/mariadb-10.11/yum/rhel/9/aarch64/{{ stackhpc_pulp_repo_rhel_9_mariadb_10_11_aarch64_version }}" - distribution_name: "rhel-9-mariadb-10-11-aarch64-" - base_path: "mariadb-10.11/yum/rhel/9/aarch64/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: DOCA Online Repo {{ stackhpc_pulp_doca_version }} - RHEL {{ doca_rocky_9_minor_dot }} - url: "{{ stackhpc_release_pulp_content_url }}/doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/x86_64/{{ stackhpc_pulp_repo_rhel9_doca_version }}" - distribution_name: "doca-{{ stackhpc_pulp_doca_version }}-rhel{{ doca_rocky_9_minor_dot }}-" - base_path: "doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/x86_64/" - required: "{{ stackhpc_pulp_sync_ofed | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: DOCA Online Repo {{ stackhpc_pulp_doca_version }} - RHEL {{ doca_rocky_9_minor_dot }} aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/aarch64/{{ stackhpc_pulp_repo_rhel9_doca_aarch64_version }}" - distribution_name: "doca-{{ stackhpc_pulp_doca_version }}-rhel{{ doca_rocky_9_minor_dot }}-aarch64-" - base_path: "doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/aarch64/" - required: "{{ stackhpc_pulp_sync_ofed | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - - - name: OFED Kernel modules for DOCA {{ stackhpc_pulp_doca_version }} - RHEL 9.{{ stackhpc_pulp_repo_rocky_9_minor_version }} - url: "{{ stackhpc_release_pulp_content_url }}/doca-modules/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/x86_64/{{ stackhpc_pulp_repo_rhel9_doca_modules_version }}" - distribution_name: "doca-modules-{{ stackhpc_pulp_doca_version }}-rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}-" - base_path: "doca-modules/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/x86_64/" - required: "{{ stackhpc_pulp_sync_ofed | bool and stackhpc_pulp_sync_el_9 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: OFED Kernel modules for DOCA {{ stackhpc_pulp_doca_version }} - RHEL 9.{{ stackhpc_pulp_repo_rocky_9_minor_version }} aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/doca-modules/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/aarch64/{{ stackhpc_pulp_repo_rhel9_doca_modules_aarch64_version }}" - distribution_name: "doca-modules-{{ stackhpc_pulp_doca_version }}-rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}-aarch64-" - base_path: "doca-modules/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/aarch64/" - required: "{{ stackhpc_pulp_sync_ofed | bool and stackhpc_pulp_sync_el_9 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - # Base Rocky 10 repositories - name: Rocky Linux 10 - AppStream url: "{{ stackhpc_release_pulp_content_url }}/rocky/10.{{ stackhpc_pulp_repo_rocky_10_minor_version }}/AppStream/x86_64/os/{{ stackhpc_pulp_repo_rocky_10_appstream_x86_64_version }}" @@ -713,19 +384,6 @@ stackhpc_pulp_rpm_repos: base_path: "centos/10-stream/storage/aarch64/ceph-squid/" required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_10 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - # NOTE(owenjones): only needed for previous LTS versions of OVN/OVS in Rocky 10 - - name: CentOS Stream 10 - OVN/OVS LTS for Epoxy - url: "{{ stackhpc_release_pulp_content_url }}/centos/10-stream/ovn/x86_64/ovn-lts/{{ stackhpc_pulp_repo_centos_stream_10_ovn_lts_version }}" - distribution_name: "centos-stream-10-ovn-lts-" - base_path: "centos/10-stream/ovn/x86_64/ovn-lts/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_10 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - - name: CentOS Stream 10 - OVN/OVS LTS for Epoxy aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/centos/10-stream/ovn/aarch64/ovn-lts/{{ stackhpc_pulp_repo_centos_stream_10_ovn_lts_aarch64_version }}" - distribution_name: "centos-stream-10-ovn-lts-aarch64-" - base_path: "centos/10-stream/ovn/aarch64/ovn-lts/" - required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_10 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - # EPEL 10 repository - name: Extra Packages for Enterprise Linux 10 - x86_64 url: "{{ stackhpc_release_pulp_content_url }}/epel/10/Everything/x86_64/{{ stackhpc_pulp_repo_epel_10_version }}" @@ -770,16 +428,16 @@ stackhpc_pulp_rpm_repos: required: "{{ stackhpc_pulp_sync_el_10 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" # Additional RHEL 10 repositories - - name: MariaDB 10.11 for RHEL 10 - url: "{{ stackhpc_release_pulp_content_url }}/mariadb-10.11/yum/rhel/10/x86_64/{{ stackhpc_pulp_repo_rhel_10_mariadb_10_11_version }}" - distribution_name: "rhel-10-mariadb-10-11-" - base_path: "mariadb-10.11/yum/rhel/10/x86_64/" + - name: MariaDB 11.6 for RHEL 10 + url: "{{ stackhpc_release_pulp_content_url }}/mariadb-11.6/yum/rhel/10/x86_64/{{ stackhpc_pulp_repo_rhel_10_mariadb_11_6_version }}" + distribution_name: "rhel-10-mariadb-11-6-" + base_path: "mariadb-11.6/yum/rhel/10/x86_64/" required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_10 | bool and 'x86_64' in stackhpc_pulp_rpm_architectures }}" - - name: MariaDB 10.11 for RHEL 10 - aarch64 - url: "{{ stackhpc_release_pulp_content_url }}/mariadb-10.11/yum/rhel/10/aarch64/{{ stackhpc_pulp_repo_rhel_10_mariadb_10_11_aarch64_version }}" - distribution_name: "rhel-10-mariadb-10-11-aarch64-" - base_path: "mariadb-10.11/yum/rhel/10/aarch64/" + - name: MariaDB 11.6 for RHEL 10 - aarch64 + url: "{{ stackhpc_release_pulp_content_url }}/mariadb-11.6/yum/rhel/10/aarch64/{{ stackhpc_pulp_repo_rhel_10_mariadb_11_6_aarch64_version }}" + distribution_name: "rhel-10-mariadb-11-6-aarch64-" + base_path: "mariadb-11.6/yum/rhel/10/aarch64/" required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_10 | bool and 'aarch64' in stackhpc_pulp_rpm_architectures }}" - name: DOCA Online Repo 3.2.2 - RHEL 10 diff --git a/etc/kayobe/stackhpc.yml b/etc/kayobe/stackhpc.yml index 9504b80189..66a78dfe35 100644 --- a/etc/kayobe/stackhpc.yml +++ b/etc/kayobe/stackhpc.yml @@ -25,7 +25,6 @@ stackhpc_repo_distribution: "development" # Whether or not to include the os minor version in the url for rocky yum repositories stackhpc_include_os_minor_version_in_repo_url: false -stackhpc_rocky_9_url_version: "{{ '9.' + stackhpc_pulp_repo_rocky_9_minor_version | string if stackhpc_include_os_minor_version_in_repo_url | bool else '9' }}" stackhpc_rocky_10_url_version: "{{ '10.' + stackhpc_pulp_repo_rocky_10_minor_version | string if stackhpc_include_os_minor_version_in_repo_url | bool else '10' }}" ############################################################################### @@ -46,6 +45,42 @@ stackhpc_repo_ubuntu_cloud_archive_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_docker_ce_ubuntu_noble_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/docker-ce/ubuntu-noble/{{ stackhpc_repo_docker_ce_ubuntu_noble_version }}" stackhpc_repo_docker_ce_ubuntu_noble_version: "{{ stackhpc_repo_distribution }}" +# Grafana for Ubuntu Noble +stackhpc_repo_grafana_apt_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/grafana/oss/apt/{{ stackhpc_repo_grafana_apt_version }}" +stackhpc_repo_grafana_apt_version: "{{ stackhpc_repo_distribution }}" + +# OpenSearch for Ubuntu Noble +stackhpc_repo_opensearch_3_x_apt_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/opensearch/3.x/apt/{{ stackhpc_repo_opensearch_3_x_apt_version }}" +stackhpc_repo_opensearch_3_x_apt_version: "{{ stackhpc_repo_distribution }}" + +# OpenSearch Dashboards for Ubuntu Noble +stackhpc_repo_opensearch_dashboards_3_x_apt_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/opensearch_dashboards/3.x/apt/{{ stackhpc_repo_opensearch_dashboards_3_x_apt_version }}" +stackhpc_repo_opensearch_dashboards_3_x_apt_version: "{{ stackhpc_repo_distribution }}" + +# RabbitMQ - Erlang for Ubuntu Noble +stackhpc_repo_ubuntu_noble_rabbitmq_erlang_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rabbitmq/erlang/ubuntu/noble/$basearch/{{ stackhpc_repo_ubuntu_noble_rabbitmq_erlang_version }}" +stackhpc_repo_ubuntu_noble_rabbitmq_erlang_version: "{{ stackhpc_repo_distribution }}" + +# Docker CE for Ubuntu Noble +stackhpc_repo_ubuntu_noble_docker_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/docker-ce/ubuntu-noble/{{ stackhpc_repo_ubuntu_noble_docker_version }}" +stackhpc_repo_ubuntu_noble_docker_version: "{{ stackhpc_repo_distribution }}" + +# Fluentd 6 for Ubuntu Noble +stackhpc_repo_ubuntu_noble_fluent_6_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/fluentd/lts/6/ubuntu/noble/{{ stackhpc_repo_ubuntu_noble_fluent_6_version }}" +stackhpc_repo_ubuntu_noble_fluent_6_version: "{{ stackhpc_repo_distribution }}" + +# MariaDB 11.4 for Ubuntu Noble +stackhpc_repo_ubuntu_noble_mariadb_11_4_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/mariadb-server/mariadb-11.4/repo/ubuntu/{{ stackhpc_repo_ubuntu_noble_mariadb_11_4_version }}" +stackhpc_repo_ubuntu_noble_mariadb_11_4_version: "{{ stackhpc_repo_distribution }}" + +# ProxySQL for Ubuntu Noble +stackhpc_repo_ubuntu_noble_proxysql_3_0_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/ProxySQL/proxysql-3.0.x/noble/{{ stackhpc_repo_ubuntu_noble_proxysql_3_0_version }}" +stackhpc_repo_ubuntu_noble_proxysql_3_0_version: "{{ stackhpc_repo_distribution }}" + +# RabbitMQ for Ubuntu Noble +stackhpc_repo_ubuntu_noble_rabbitmq_server_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rabbitmq/rabbitmq-server/ubuntu/noble/noarch/{{ stackhpc_repo_ubuntu_noble_rabbitmq_server_version }}" +stackhpc_repo_ubuntu_noble_rabbitmq_server_version: "{{ stackhpc_repo_distribution }}" + ############################################################################### # RPMs @@ -57,7 +92,7 @@ stackhpc_repo_rhel9_doca_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_rhel9_doca_modules_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/doca-modules/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/$basearch/{{ stackhpc_repo_rhel9_doca_modules_version }}" stackhpc_repo_rhel9_doca_modules_version: "{{ stackhpc_repo_distribution }}" -# Grafana +# Grafana for RL10 stackhpc_repo_grafana_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/grafana/oss/rpm/{{ stackhpc_repo_grafana_version }}" stackhpc_repo_grafana_version: "{{ stackhpc_repo_distribution }}" @@ -65,10 +100,6 @@ stackhpc_repo_grafana_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_rhel9_rabbitmq_erlang_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rabbitmq/erlang/el/9/$basearch/{{ stackhpc_repo_rhel9_rabbitmq_erlang_version }}" stackhpc_repo_rhel9_rabbitmq_erlang_version: "{{ stackhpc_repo_distribution }}" -# RabbitMQ - Erlang 26 for RHEL 9 (aarch64) -stackhpc_repo_rhel9_rabbitmq_erlang_26_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rabbitmq/erlang-26/el/9/aarch64/{{ stackhpc_repo_rhel9_rabbitmq_erlang_26_version }}" -stackhpc_repo_rhel9_rabbitmq_erlang_26_version: "{{ stackhpc_repo_distribution }}" - # RabbitMQ - Erlang 27 for RHEL 9 (aarch64) stackhpc_repo_rhel9_rabbitmq_erlang_27_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rabbitmq/erlang-27/el/9/aarch64/{{ stackhpc_repo_rhel9_rabbitmq_erlang_27_version }}" stackhpc_repo_rhel9_rabbitmq_erlang_27_version: "{{ stackhpc_repo_distribution }}" @@ -81,82 +112,6 @@ stackhpc_repo_rhel9_rabbitmq_server_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/nfv/$basearch/openvswitch-2/{{ stackhpc_repo_centos_stream_9_nfv_openvswitch_version }}" stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_repo_distribution }}" -# CentOS Stream 9 - OpenStack Epoxy -stackhpc_repo_centos_stream_9_openstack_epoxy_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/cloud/$basearch/openstack-epoxy/{{ stackhpc_repo_centos_stream_9_openstack_epoxy_version }}" -stackhpc_repo_centos_stream_9_openstack_epoxy_version: "{{ stackhpc_repo_distribution }}" - -# CentOS Stream 9 - OpsTools - collectd -stackhpc_repo_centos_stream_9_opstools_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/opstools/$basearch/collectd-5/{{ stackhpc_repo_centos_stream_9_opstools_version }}" -stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_repo_distribution }}" - -# CentOS Stream 9 - Ceph Squid -stackhpc_repo_centos_stream_9_storage_ceph_squid_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/9-stream/storage/$basearch/ceph-squid/{{ stackhpc_repo_centos_stream_9_storage_ceph_squid_version }}" -stackhpc_repo_centos_stream_9_storage_ceph_squid_version: "{{ stackhpc_repo_distribution }}" - -# CentOS Stream 9 Docker CE -stackhpc_repo_centos_stream_9_docker_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/docker-ce/centos/9/$basearch/stable/{{ stackhpc_repo_centos_stream_9_docker_version }}" -stackhpc_repo_centos_stream_9_docker_version: "{{ stackhpc_repo_distribution }}" - -# TreasureData 5 for RHEL 9 -stackhpc_repo_rhel_9_treasuredata_5_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/treasuredata/5/redhat/9/$basearch/{{ stackhpc_repo_rhel_9_treasuredata_5_version }}" -stackhpc_repo_rhel_9_treasuredata_5_version: "{{ stackhpc_repo_distribution }}" - -# MariaDB 10.11 for RHEL 9 -stackhpc_repo_rhel_9_mariadb_10_11_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/mariadb-10.11/yum/rhel/9/$basearch/{{ stackhpc_repo_rhel_9_mariadb_10_11_version }}" -stackhpc_repo_rhel_9_mariadb_10_11_version: "{{ stackhpc_repo_distribution }}" - -# InfluxDB for RHEL 9 -stackhpc_repo_rhel_9_influxdb_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/influxdb/rhel/9/$basearch/stable/{{ stackhpc_repo_rhel_9_influxdb_version }}" -stackhpc_repo_rhel_9_influxdb_version: "{{ stackhpc_repo_distribution }}" - -# OpenSearch for RHEL 9 -stackhpc_repo_opensearch_2_x_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/opensearch/2.x/yum/{{ stackhpc_repo_opensearch_2_x_version }}" -stackhpc_repo_opensearch_2_x_version: "{{ stackhpc_repo_distribution }}" - -# OpenSearch Dashboards for RHEL 9 -stackhpc_repo_opensearch_dashboards_2_x_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/opensearch-dashboards/2.x/yum/{{ stackhpc_repo_opensearch_dashboards_2_x_version }}" -stackhpc_repo_opensearch_dashboards_2_x_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 ProxySQL -stackhpc_repo_almalinux_9_proxysql_2_7_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/ProxySQL/proxysql-2.7.x/almalinux/9/{{ stackhpc_repo_almalinux_9_proxysql_2_7_version }}" -stackhpc_repo_almalinux_9_proxysql_2_7_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 AppStream -stackhpc_repo_rocky_9_appstream_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_9_url_version }}/AppStream/$basearch/os/{{ stackhpc_repo_rocky_9_appstream_version }}" -stackhpc_repo_rocky_9_appstream_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 BaseOS -stackhpc_repo_rocky_9_baseos_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_9_url_version }}/BaseOS/$basearch/os/{{ stackhpc_repo_rocky_9_baseos_version }}" -stackhpc_repo_rocky_9_baseos_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 CRB -stackhpc_repo_rocky_9_crb_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_9_url_version }}/CRB/$basearch/os/{{ stackhpc_repo_rocky_9_crb_version }}" -stackhpc_repo_rocky_9_crb_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 extras -stackhpc_repo_rocky_9_extras_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_9_url_version }}/extras/$basearch/os/{{ stackhpc_repo_rocky_9_extras_version }}" -stackhpc_repo_rocky_9_extras_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 highavailability -stackhpc_repo_rocky_9_highavailability_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_9_url_version }}/highavailability/$basearch/os/{{ stackhpc_repo_rocky_9_highavailability_version }}" -stackhpc_repo_rocky_9_highavailability_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 Security -stackhpc_repo_rocky_9_security_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_9_url_version }}/security/$basearch/os/{{ stackhpc_repo_rocky_9_security_version }}" -stackhpc_repo_rocky_9_security_version: "{{ stackhpc_repo_distribution }}" - -# Rocky 9 SIG Security Common -stackhpc_repo_rocky_9_sig_security_common_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/sig/9/security/$basearch/security-common/{{ stackhpc_repo_rocky_9_sig_security_common_version }}" -stackhpc_repo_rocky_9_sig_security_common_version: "{{ stackhpc_repo_distribution }}" - -# EPEL 9 -stackhpc_repo_epel_9_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/epel/9/Everything/$basearch/{{ stackhpc_repo_epel_9_version }}" -stackhpc_repo_epel_9_version: "{{ stackhpc_repo_distribution }}" - -# ELRepo 9 -stackhpc_repo_elrepo_9_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/elrepo/elrepo/el9/$basearch/{{ stackhpc_repo_elrepo_9_version }}" -stackhpc_repo_elrepo_9_version: "{{ stackhpc_repo_distribution }}" - # Rocky 10 AppStream stackhpc_repo_rocky_10_appstream_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/rocky/{{ stackhpc_rocky_10_url_version }}/AppStream/$basearch/os/{{ stackhpc_repo_rocky_10_appstream_version }}" stackhpc_repo_rocky_10_appstream_version: "{{ stackhpc_repo_distribution }}" @@ -185,10 +140,6 @@ stackhpc_repo_rocky_10_security_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_centos_stream_10_nfv_openvswitch_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/10-stream/nfv/$basearch/openvswitch-2/{{ stackhpc_repo_centos_stream_10_nfv_openvswitch_version }}" stackhpc_repo_centos_stream_10_nfv_openvswitch_version: "{{ stackhpc_repo_distribution }}" -# CentOS Stream 10 - OpenStack Epoxy -stackhpc_repo_centos_stream_10_openstack_epoxy_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/10-stream/cloud/$basearch/openstack-epoxy/{{ stackhpc_repo_centos_stream_10_openstack_epoxy_version }}" -stackhpc_repo_centos_stream_10_openstack_epoxy_version: "{{ stackhpc_repo_distribution }}" - # CentOS Stream 10 - OVN/OVS LTS for Epoxy stackhpc_repo_centos_stream_10_ovn_lts_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/centos/10-stream/ovn/{{ kolla_base_arch }}/ovn-lts/{{ stackhpc_repo_centos_stream_10_ovn_lts_version }}" stackhpc_repo_centos_stream_10_ovn_lts_version: "{{ stackhpc_repo_distribution }}" @@ -209,14 +160,30 @@ stackhpc_repo_elrepo_10_version: "{{ stackhpc_repo_distribution }}" stackhpc_repo_centos_stream_10_docker_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/docker-ce/centos/10/$basearch/stable/{{ stackhpc_repo_centos_stream_10_docker_version }}" stackhpc_repo_centos_stream_10_docker_version: "{{ stackhpc_repo_distribution }}" -# MariaDB 10.11 for RHEL 10 -stackhpc_repo_rhel_10_mariadb_10_11_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/mariadb-10.11/yum/rhel/10/$basearch/{{ stackhpc_repo_rhel_10_mariadb_10_11_version }}" -stackhpc_repo_rhel_10_mariadb_10_11_version: "{{ stackhpc_repo_distribution }}" +# MariaDB 11.4 for RHEL 10 +stackhpc_repo_rhel_10_mariadb_11_4_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/mariadb-11.4/yum/rhel/10/$basearch/{{ stackhpc_repo_rhel_10_mariadb_11_4_version }}" +stackhpc_repo_rhel_10_mariadb_11_4_version: "{{ stackhpc_repo_distribution }}" + +# Fluentd 6 for RHEL 10 +stackhpc_repo_rhel_10_fluent_6_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/fluentd/lts/6/redhat/10/$basearch/{{ stackhpc_repo_rhel_10_fluent_6_version }}" +stackhpc_repo_rhel_10_fluent_6_version: "{{ stackhpc_repo_distribution }}" # DOCA Repository 3.2.2 for RHEL 10 stackhpc_repo_rhel10_doca_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/doca/3.2.2/rhel10/$basearch/{{ stackhpc_repo_rhel10_doca_version }}" stackhpc_repo_rhel10_doca_version: "{{ stackhpc_repo_distribution }}" +# OpenSearch for RHEL 10 +stackhpc_repo_opensearch_3_x_yum_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/opensearch/3.x/yum/{{ stackhpc_repo_opensearch_3_x_yum_version }}" +stackhpc_repo_opensearch_3_x_yum_version: "{{ stackhpc_repo_distribution }}" + +# OpenSearch Dashboards for RHEL 10 +stackhpc_repo_opensearch_dashboards_3_x_yum_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/opensearch-dashboards/3.x/yum/{{ stackhpc_repo_opensearch_dashboards_3_x_yum_version }}" +stackhpc_repo_opensearch_dashboards_3_x_yum_version: "{{ stackhpc_repo_distribution }}" + +# Rocky 10 ProxySQL +stackhpc_repo_almalinux_10_proxysql_3_0_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/ProxySQL/proxysql-3.0.x/almalinux/10/{{ stackhpc_repo_almalinux_10_proxysql_3_0_version }}" +stackhpc_repo_almalinux_10_proxysql_3_0_version: "{{ stackhpc_repo_distribution }}" + ############################################################################### # Sources @@ -226,7 +193,7 @@ stackhpc_kolla_source_version: stackhpc/20.4.0.3 # Kolla Ansible source repository. stackhpc_kolla_ansible_source_url: "https://github.com/stackhpc/kolla-ansible" -stackhpc_kolla_ansible_source_version: stackhpc/20.4.0.3 +stackhpc_kolla_ansible_source_version: stackhpc/2026.1 ############################################################################### # Container image registry diff --git a/etc/kayobe/trivy/allowed-vulnerabilities.yml b/etc/kayobe/trivy/allowed-vulnerabilities.yml index bbf86047bc..b2304bff0e 100644 --- a/etc/kayobe/trivy/allowed-vulnerabilities.yml +++ b/etc/kayobe/trivy/allowed-vulnerabilities.yml @@ -12,96 +12,62 @@ # # barbican_api_allowed_vulnerabilities: # - CVE-2023-31047 + +bifrost_base_allowed_vulnerabilities: + - CVE-2025-68121 + +bifrost_deploy_allowed_vulnerabilities: + - CVE-2025-68121 + etcd_allowed_vulnerabilities: - - CVE-2026-33186 -fluentd_allowed_vulnerabilities: - - CVE-2024-27280 - - CVE-2026-27820 -grafana_allowed_vulnerabilities: - - CVE-2024-8986 - - CVE-2025-68121 # the opensearch datasource plugin is still vulnerable - - CVE-2026-33816 -influxdb_allowed_vulnerabilities: - - CVE-2024-45337 - CVE-2025-68121 - CVE-2026-33186 -ironic_neutron_agent_allowed_vulnerabilities: - - CVE-2025-68121 + +fluentd_allowed_vulnerabilities: + - CVE-2026-42257 + - CVE-2026-42258 + letsencrypt_lego_allowed_vulnerabilities: - CVE-2025-68121 - CVE-2026-33186 -magnum_conductor_allowed_vulnerabilities: - - CVE-2024-45337 - - CVE-2025-68121 -neutron_base_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_bgp_dragent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_dhcp_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_l3_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_linuxbridge_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_metadata_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_mlnx_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_openvswitch_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_ovn_agent_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_server_allowed_vulnerabilities: - - CVE-2025-68121 -neutron_sriov_agent_allowed_vulnerabilities: - - CVE-2025-68121 -opensearch_dashboards_allowed_vulnerabilities: - - CVE-2025-68428 - - CVE-2026-27699 - - CVE-2026-31938 - - CVE-2026-33937 + prometheus_alertmanager_allowed_vulnerabilities: - - CVE-2025-68121 + - CVE-2026-33186 + prometheus_blackbox_exporter_allowed_vulnerabilities: - - CVE-2024-24790 - - CVE-2024-45337 - CVE-2025-68121 - CVE-2026-33186 -prometheus_memcached_exporter_allowed_vulnerabilities: - - CVE-2024-45337 - - CVE-2025-68121 -prometheus_mysqld_exporter_allowed_vulnerabilities: - - CVE-2024-45337 + +prometheus_cadvisor_allowed_vulnerabilities: - CVE-2025-68121 + - CVE-2026-33186 + prometheus_elasticsearch_exporter_allowed_vulnerabilities: - - CVE-2024-45337 - CVE-2025-68121 -prometheus_node_exporter_allowed_vulnerabilities: - - CVE-2024-45337 + +prometheus_libvirt_exporter_allowed_vulnerabilities: - CVE-2025-68121 -prometheus_openstack_exporter_allowed_vulnerabilities: - - CVE-2024-24790 - - CVE-2024-45337 + +prometheus_memcached_exporter_allowed_vulnerabilities: - CVE-2025-68121 -prometheus_ovn_exporter_allowed_vulnerabilities: + +prometheus_mtail_allowed_vulnerabilities: - CVE-2024-24790 - CVE-2025-68121 -prometheus_libvirt_exporter_allowed_vulnerabilities: - - CVE-2024-45337 + - CVE-2026-33186 + +prometheus_mysqld_exporter_allowed_vulnerabilities: - CVE-2025-68121 -prometheus_cadvisor_allowed_vulnerabilities: - - CVE-2024-41110 - - CVE-2024-45337 + +prometheus_node_exporter_allowed_vulnerabilities: - CVE-2025-68121 - - CVE-2026-33186 -prometheus_mtail_allowed_vulnerabilities: + +prometheus_openstack_exporter_allowed_vulnerabilities: - CVE-2024-24790 - CVE-2025-68121 - - CVE-2026-33186 -prometheus_server_allowed_vulnerabilities: - - CVE-2024-45337 + +prometheus_openstack_network_exporter_allowed_vulnerabilities: - CVE-2025-68121 - - CVE-2026-33186 ############################################################################### # Dummy variable to allow Ansible to accept this file. diff --git a/releasenotes/notes/aio-env-split-c33cc5b84a7d7c27.yaml b/releasenotes/notes/aio-env-split-c33cc5b84a7d7c27.yaml new file mode 100644 index 0000000000..e0a6ca3515 --- /dev/null +++ b/releasenotes/notes/aio-env-split-c33cc5b84a7d7c27.yaml @@ -0,0 +1,16 @@ +--- +features: + - | + The ``ci-aio`` Kayobe environment has been split into two distinct + environments: + + * ``aio``: Designed for manual deployment, making it significantly easier + for users to set up an environment for testing and development. + * ``ci-aio``: Dedicated to CI testing. + + The ``aio`` environment contains the core logic, while ``ci-aio`` inherits + from it and applies CI-specific overrides. + + Note that the ``aio`` environment continues to use StackHPC Release Train + content, and therefore still requires credentials for ``ark.stackhpc.com`` + to run. diff --git a/requirements.txt b/requirements.txt index c697bedbbe..64e89a8392 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -kayobe@git+https://github.com/stackhpc/kayobe@stackhpc/20.0.0.5 +kayobe@git+https://github.com/stackhpc/kayobe@878fe4ca8fa1ef424d7d1d5cae9a6d37ff168185 ansible-modules-hashivault>=5.3.0 pulp-glue==0.33.* pulp-glue-deb==0.3.* diff --git a/terraform/aio/README.rst b/terraform/aio/README.rst index 60382ebac9..f9e1e5bdfa 100644 --- a/terraform/aio/README.rst +++ b/terraform/aio/README.rst @@ -144,11 +144,11 @@ Build a Kayobe image: sudo DOCKER_BUILDKIT=1 docker build --file .automation/docker/kayobe/Dockerfile --tag kayobe:latest . -Use the ci-aio environment: +Use the aio environment: .. code-block:: console - export KAYOBE_ENVIRONMENT=ci-aio + export KAYOBE_ENVIRONMENT=aio Set the Kayobe Vault password env var: diff --git a/tools/multiarch-manifests.sh b/tools/multiarch-manifests.sh index ec08c4b395..a373e28d04 100755 --- a/tools/multiarch-manifests.sh +++ b/tools/multiarch-manifests.sh @@ -27,10 +27,10 @@ for base_image in $manifest_images; do arch_images="$arch_images $arch_image" fi done + if [ -n "$arch_images" ]; then echo "Creating manifest for $base_image with images:$arch_images" | tee -a logs/manifest-creation.log - docker manifest create "$base_image" $arch_images | tee -a logs/manifest-creation.log - docker manifest push "$base_image" | tee -a logs/manifest-creation.log + docker buildx imagetools create -t "$base_image" $arch_images | tee -a logs/manifest-creation.log else echo "No images found for $base_image, skipping." | tee -a logs/manifest-creation.log fi diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 5b787b43a5..5b2eca7b5b 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -20,6 +20,7 @@ - ^releasenotes/.* - ^tox.ini$ - ^etc/kayobe/environments/aufn-ceph/.* + - ^etc/kayobe/environments/aio/.* - ^etc/kayobe/environments/ci-aio/.* - ^etc/kayobe/environments/ci-builder/.* - ^etc/kayobe/environments/ci-doca-builder/.*