Skip to content

Commit ba12ced

Browse files
committed
Merge remote-tracking branch 'origin/stackhpc/2025.1' into test-mariadb-11-8
2 parents 86fb574 + 7f778d1 commit ba12ced

File tree

154 files changed

+4198
-1699
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

154 files changed

+4198
-1699
lines changed

.automation

.github/workflows/ipa-image-build.yml

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -248,8 +248,7 @@ jobs:
248248
-e artifact_tag=${{ steps.ipa_image_tag.outputs.ipa_image_tag }} \
249249
-e os_distribution="ubuntu" \
250250
-e os_release="noble" \
251-
-e file_regex='*.kernel' \
252-
-e upload_checksum=true
251+
-e file_regex='*.kernel'
253252
env:
254253
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
255254
if: inputs.ubuntu-noble && steps.build_ubuntu_noble_ipa.outcome == 'success'
@@ -265,8 +264,7 @@ jobs:
265264
-e artifact_tag=${{ steps.ipa_image_tag.outputs.ipa_image_tag }} \
266265
-e os_distribution="ubuntu" \
267266
-e os_release="noble" \
268-
-e file_regex='*.initramfs' \
269-
-e upload_checksum=true
267+
-e file_regex='*.initramfs'
270268
env:
271269
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
272270
if: inputs.ubuntu-noble && steps.build_ubuntu_noble_ipa.outcome == 'success'
@@ -307,8 +305,7 @@ jobs:
307305
-e artifact_tag=${{ steps.ipa_image_tag.outputs.ipa_image_tag }} \
308306
-e os_distribution="rocky" \
309307
-e os_release="9" \
310-
-e file_regex='*.kernel' \
311-
-e upload_checksum=true
308+
-e file_regex='*.kernel'
312309
env:
313310
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
314311
if: inputs.rocky9 && steps.build_rocky_9_ipa.outcome == 'success'
@@ -324,8 +321,7 @@ jobs:
324321
-e artifact_tag=${{ steps.ipa_image_tag.outputs.ipa_image_tag }} \
325322
-e os_distribution="rocky" \
326323
-e os_release="9" \
327-
-e file_regex='*.initramfs' \
328-
-e upload_checksum=true
324+
-e file_regex='*.initramfs'
329325
env:
330326
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
331327
if: inputs.rocky9 && steps.build_rocky_9_ipa.outcome == 'success'

.github/workflows/multinode-inputs.py

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ class OSRelease:
1717
@dataclass
1818
class OpenStackRelease:
1919
version: str
20-
previous_version: str
2120
os_releases: t.List[OSRelease]
2221

2322

@@ -34,11 +33,12 @@ class Scenario:
3433
UBUNTU_NOBLE = OSRelease("ubuntu", "noble", "ubuntu")
3534
# NOTE(upgrade): Add supported releases here.
3635
OPENSTACK_RELEASES = [
37-
OpenStackRelease("2023.1", "zed", [ROCKY_9, UBUNTU_JAMMY]),
38-
OpenStackRelease("2024.1", "2023.1", [ROCKY_9, UBUNTU_JAMMY]),
39-
OpenStackRelease("master", "2024.1", [ROCKY_9, UBUNTU_NOBLE]),
36+
OpenStackRelease("2023.1", [ROCKY_9, UBUNTU_JAMMY]),
37+
OpenStackRelease("2024.1", [ROCKY_9, UBUNTU_JAMMY]),
38+
OpenStackRelease("2025.1", [ROCKY_9, UBUNTU_NOBLE]),
4039
]
4140
NEUTRON_PLUGINS = ["ovs", "ovn"]
41+
VERSION_HIERARCHY = ["zed", "2023.1", "2024.1", "2025.1"]
4242

4343

4444
def main() -> None:
@@ -52,13 +52,20 @@ def random_scenario() -> Scenario:
5252
openstack_release = random.choice(OPENSTACK_RELEASES)
5353
os_release = random.choice(openstack_release.os_releases)
5454
neutron_plugin = random.choice(NEUTRON_PLUGINS)
55-
upgrade = 'major' if random.random() > 0.6 else 'none'
55+
upgrade = "major" if random.random() > 0.6 else "none"
5656
return Scenario(openstack_release, os_release, neutron_plugin, upgrade)
5757

5858

5959
def generate_inputs(scenario: Scenario) -> t.Dict[str, str]:
6060
branch = get_branch(scenario.openstack_release.version)
61-
previous_branch = get_branch(scenario.openstack_release.previous_version)
61+
previous_branch = get_branch(
62+
VERSION_HIERARCHY[
63+
VERSION_HIERARCHY.index(scenario.openstack_release.version) - 1
64+
]
65+
)
66+
terraform_kayobe_multinode_version = get_tkm_version(
67+
scenario.openstack_release.version
68+
)
6269
inputs = {
6370
"os_distribution": scenario.os_release.distribution,
6471
"os_release": scenario.os_release.release,
@@ -67,6 +74,7 @@ def generate_inputs(scenario: Scenario) -> t.Dict[str, str]:
6774
"upgrade": scenario.upgrade,
6875
"stackhpc_kayobe_config_version": branch,
6976
"stackhpc_kayobe_config_previous_version": previous_branch,
77+
"terraform_kayobe_multinode_version": terraform_kayobe_multinode_version,
7078
}
7179
return inputs
7280

@@ -75,6 +83,13 @@ def get_branch(version: str) -> str:
7583
return f"stackhpc/{version}"
7684

7785

86+
def get_tkm_version(version: str) -> str:
87+
if version in ["zed", "2023.1"]:
88+
return "ea61ea1730e179e05e8f0e58b759267664c555e7"
89+
else:
90+
return "main"
91+
92+
7893
def write_output(name: str, value: str) -> None:
7994
print(f"{name}={value}")
8095

.github/workflows/package-build-ofed.yml

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@ jobs:
2828
runs-on: arc-skc-host-image-builder-runner
2929
permissions: {}
3030
steps:
31+
- name: Generate OFED tag
32+
id: ofed_tag
33+
run: |
34+
echo "ofed_tag=$(date +%Y%m%dT%H%M%S)" >> $GITHUB_OUTPUT
35+
3136
- name: Install Package
3237
uses: ConorMacBride/install-package@main
3338
with:
@@ -42,32 +47,14 @@ jobs:
4247
with:
4348
path: src/kayobe-config
4449

45-
- name: Determine OpenStack release
46-
id: openstack_release
47-
run: |
48-
BRANCH=$(awk -F'=' '/defaultbranch/ {print $2}' src/kayobe-config/.gitreview)
49-
echo "openstack_release=${BRANCH}" | sed -E "s,(stable|unmaintained)/,," >> $GITHUB_OUTPUT
50-
51-
- name: Generate OFED tag
52-
id: ofed_tag
53-
run: |
54-
echo "ofed_tag=$(date +%Y%m%dT%H%M%S)" >> $GITHUB_OUTPUT
55-
56-
- name: Clone StackHPC Kayobe repository
57-
uses: actions/checkout@v4
58-
with:
59-
repository: stackhpc/kayobe
60-
ref: refs/heads/stackhpc/${{ steps.openstack_release.outputs.openstack_release }}
61-
path: src/kayobe
62-
6350
- name: Install Kayobe
6451
run: |
6552
mkdir -p venvs &&
6653
pushd venvs &&
6754
python3 -m venv kayobe &&
6855
source kayobe/bin/activate &&
6956
pip install -U pip &&
70-
pip install ../src/kayobe
57+
pip install -r ../src/kayobe-config/requirements.txt
7158
7259
- name: Install terraform
7360
uses: hashicorp/setup-terraform@v2

.github/workflows/stackhpc-all-in-one.yml

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ jobs:
176176
VM_NAME: "skc-ci-aio-${{ inputs.neutron_plugin }}-${{ github.run_id }}"
177177
VM_IMAGE: ${{ steps.image_name.outputs.image_name }}
178178
VM_INTERFACE: ${{ inputs.vm_interface }}
179-
VM_VOLUME_SIZE: ${{ inputs.upgrade && '65' || '50' }}
179+
VM_VOLUME_SIZE: ${{ inputs.upgrade && '75' || '50' }}
180180
VM_TAGS: '["skc-ci-aio", "PR=${{ github.event.number }}"]'
181181

182182
- name: Terraform Plan
@@ -326,6 +326,29 @@ jobs:
326326
env:
327327
KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }}
328328

329+
- name: Upgrade host OS
330+
run: |
331+
docker run -t --rm \
332+
-v $(pwd):/stack/kayobe-automation-env/src/kayobe-config \
333+
-e KAYOBE_ENVIRONMENT -e KAYOBE_VAULT_PASSWORD -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \
334+
-e KAYOBE_PATH=/stack/kayobe-automation-env/src/kayobe \
335+
${{ steps.kayobe_image.outputs.kayobe_image }} \
336+
/stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/script-run.sh tools/ubuntu-upgrade-overcloud.sh all
337+
env:
338+
KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }}
339+
if: inputs.upgrade && inputs.os_release == 'jammy'
340+
341+
- name: Deploy services that are built for later OS
342+
run: |
343+
docker run -t --rm \
344+
-v $(pwd):/stack/kayobe-automation-env/src/kayobe-config \
345+
-e KAYOBE_ENVIRONMENT -e KAYOBE_VAULT_PASSWORD -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \
346+
${{ steps.kayobe_image.outputs.kayobe_image }} \
347+
/stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/overcloud-service-deploy.sh
348+
env:
349+
KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }}
350+
if: inputs.upgrade && inputs.os_release == 'jammy'
351+
329352
- name: Run upgrade prerequisites
330353
run: |
331354
docker run -t --rm \
@@ -391,6 +414,11 @@ jobs:
391414
KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }}
392415
if: inputs.upgrade
393416

417+
- name: Prune unused docker images
418+
run: |
419+
docker image prune -af
420+
if: inputs.upgrade
421+
394422
- name: Tempest tests
395423
id: tempest
396424
run: |

.github/workflows/stackhpc-build-kayobe-image.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
push:
99
branches:
1010
# NOTE(upgrade): Reference only the current release branch here.
11-
- stackhpc/master
11+
- stackhpc/2025.1
1212

1313
workflow_call:
1414
inputs:

0 commit comments

Comments
 (0)