From 74c06392eb4ff902bdd3c2b4eb8aff57f35fc132 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Sat, 28 Dec 2024 13:17:13 +0000 Subject: [PATCH 1/2] Add minor upgrade option to MN deploy workflow --- .github/workflows/multinode-inputs.py | 6 +++--- .github/workflows/stackhpc-multinode.yml | 12 ++++++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/.github/workflows/multinode-inputs.py b/.github/workflows/multinode-inputs.py index c64b73544..6971bf778 100644 --- a/.github/workflows/multinode-inputs.py +++ b/.github/workflows/multinode-inputs.py @@ -26,7 +26,7 @@ class Scenario: openstack_release: OpenStackRelease os_release: OSRelease neutron_plugin: str - upgrade: bool + upgrade: str ROCKY_9 = OSRelease("rocky", "9", "cloud-user") @@ -50,7 +50,7 @@ def random_scenario() -> Scenario: openstack_release = random.choice(OPENSTACK_RELEASES) os_release = random.choice(openstack_release.os_releases) neutron_plugin = random.choice(NEUTRON_PLUGINS) - upgrade = random.random() > 0.6 + upgrade = 'major' if random.random() > 0.6 else 'none' return Scenario(openstack_release, os_release, neutron_plugin, upgrade) @@ -62,7 +62,7 @@ def generate_inputs(scenario: Scenario) -> t.Dict[str, str]: "os_release": scenario.os_release.release, "ssh_username": scenario.os_release.ssh_username, "neutron_plugin": scenario.neutron_plugin, - "upgrade": str(scenario.upgrade).lower(), + "upgrade": scenario.upgrade, "stackhpc_kayobe_config_version": branch, "stackhpc_kayobe_config_previous_version": previous_branch, } diff --git a/.github/workflows/stackhpc-multinode.yml b/.github/workflows/stackhpc-multinode.yml index 86a79b11d..88cef1cc3 100644 --- a/.github/workflows/stackhpc-multinode.yml +++ b/.github/workflows/stackhpc-multinode.yml @@ -27,8 +27,12 @@ name: Multinode - ovs upgrade: description: Whether to perform an upgrade - type: boolean - default: false + default: none + type: choice + options: + - none + - minor + - major break_on: description: When to break execution for manual interaction type: choice @@ -52,7 +56,7 @@ name: Multinode jobs: multinode: name: Multinode - uses: stackhpc/stackhpc-openstack-gh-workflows/.github/workflows/multinode.yml@1.2.0 + uses: stackhpc/stackhpc-openstack-gh-workflows/.github/workflows/multinode.yml@1.4.0 with: multinode_name: ${{ inputs.multinode_name }} os_distribution: ${{ inputs.os_distribution }} @@ -66,6 +70,6 @@ jobs: ssh_key: ${{ inputs.ssh_key }} stackhpc_kayobe_config_version: ${{ github.ref_name }} # NOTE(upgrade): Reference the PREVIOUS release here. - stackhpc_kayobe_config_previous_version: stackhpc/zed + stackhpc_kayobe_config_previous_version: ${{ inputs.upgrade == 'major' && 'stackhpc/zed' || 'stackhpc/2023.1' }} terraform_kayobe_multinode_version: ${{ inputs.terraform_kayobe_multinode_version }} secrets: inherit From 900c80b19b59c5990ee4a2afc2d327e61bb32697 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Mon, 13 Jan 2025 16:34:13 +0000 Subject: [PATCH 2/2] Update periodic multinode workflow to SOGW 1.4.0 This change bumps the stackhpc-openstack-gh-workflows pin for periodic multinodes to 1.4.0 The only breaking change is that the upgrade input is now a string (none, minor, major), previously was a bool. The invocation has been updated to match. --- .github/workflows/stackhpc-multinode-periodic.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stackhpc-multinode-periodic.yml b/.github/workflows/stackhpc-multinode-periodic.yml index 7debe8fa3..7b275dc53 100644 --- a/.github/workflows/stackhpc-multinode-periodic.yml +++ b/.github/workflows/stackhpc-multinode-periodic.yml @@ -35,14 +35,14 @@ jobs: name: Multinode periodic needs: - generate-inputs - uses: stackhpc/stackhpc-openstack-gh-workflows/.github/workflows/multinode.yml@1.2.0 + uses: stackhpc/stackhpc-openstack-gh-workflows/.github/workflows/multinode.yml@1.4.0 with: multinode_name: mn-prdc-${{ github.run_id }} os_distribution: ${{ needs.generate-inputs.outputs.os_distribution }} os_release: ${{ needs.generate-inputs.outputs.os_release }} ssh_username: ${{ needs.generate-inputs.outputs.ssh_username }} neutron_plugin: ${{ needs.generate-inputs.outputs.neutron_plugin }} - upgrade: ${{ needs.generate-inputs.outputs.upgrade == 'true' }} + upgrade: ${{ needs.generate-inputs.outputs.upgrade }} stackhpc_kayobe_config_version: ${{ needs.generate-inputs.outputs.stackhpc_kayobe_config_version }} stackhpc_kayobe_config_previous_version: ${{ needs.generate-inputs.outputs.stackhpc_kayobe_config_previous_version }} enable_slack_alert: true