Skip to content

Commit 2b55882

Browse files
committed
Merge branch 'stackhpc/2024.1' into sync-2024.1
2 parents f46c161 + 97815e2 commit 2b55882

File tree

59 files changed

+1004
-318
lines changed

Some content is hidden

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

59 files changed

+1004
-318
lines changed

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

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,16 @@ jobs:
271271
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
272272
if: inputs.ubuntu-noble && steps.build_ubuntu_noble_ipa.outcome == 'success'
273273

274+
- name: Show last error logs
275+
continue-on-error: true
276+
run: |
277+
source venvs/kayobe/bin/activate &&
278+
source src/kayobe-config/kayobe-env --environment ci-builder &&
279+
kayobe seed host command run --command "tail -200 /opt/kayobe/images/ipa/ipa.stdout" --show-output
280+
env:
281+
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
282+
if: steps.build_ubuntu_noble_ipa.outcome == 'failure'
283+
274284
- name: Build a Rocky 9 IPA image
275285
id: build_rocky_9_ipa
276286
continue-on-error: true

.github/workflows/overcloud-host-image-build.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -360,6 +360,16 @@ jobs:
360360
OS_APPLICATION_CREDENTIAL_SECRET: ${{ secrets.OS_APPLICATION_CREDENTIAL_SECRET_OTHER_CLOUD }}
361361
if: inputs.ubuntu-noble && steps.build_ubuntu_noble.outcome == 'success'
362362

363+
- name: Show last error logs
364+
continue-on-error: true
365+
run: |
366+
source venvs/kayobe/bin/activate &&
367+
source src/kayobe-config/kayobe-env --environment ci-builder &&
368+
kayobe seed host command run --command "tail -200 /opt/kayobe/images/overcloud-ubuntu-noble/overcloud-ubuntu-noble.stdout" --show-output
369+
env:
370+
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD }}
371+
if: steps.build_ubuntu_noble.outcome == 'failure'
372+
363373
- name: Copy logs back
364374
continue-on-error: true
365375
run: |

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

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -412,7 +412,9 @@ jobs:
412412
-v $(pwd)/sct-results:/stack/sct-results \
413413
-e KAYOBE_ENVIRONMENT -e KAYOBE_VAULT_PASSWORD -e KAYOBE_AUTOMATION_SSH_PRIVATE_KEY \
414414
$KAYOBE_IMAGE \
415-
/stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/stackhpc-cloud-tests.yml' -e sct_version=${{ inputs.stackhpc_cloud_tests_version }}
415+
/stack/kayobe-automation-env/src/kayobe-config/.automation/pipeline/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/stackhpc-cloud-tests.yml' \
416+
${{ inputs.upgrade && '-e selinux_state=disabled' }} \
417+
-e sct_version=${{ inputs.stackhpc_cloud_tests_version }}
416418
env:
417419
KAYOBE_AUTOMATION_SSH_PRIVATE_KEY: ${{ steps.ssh_key.outputs.ssh_key }}
418420

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

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@ on:
2828
type: boolean
2929
required: false
3030
default: true
31+
ubuntu-noble:
32+
description: Build Ubuntu Noble 24.04 images?
33+
type: boolean
34+
required: false
35+
default: true
3136
push:
3237
description: Whether to push images
3338
type: boolean
@@ -92,17 +97,21 @@ jobs:
9297
- name: Generate build matrix
9398
id: set-matrix
9499
run: |
95-
comma=""
96-
echo -n "matrix={\"distro\": [" >> $GITHUB_OUTPUT
100+
output="{'distro': ["
97101
if [[ ${{ inputs.rocky-linux-9 }} == 'true' ]]; then
98-
echo -n "$comma\"rocky\"" >> $GITHUB_OUTPUT
99-
comma=", "
102+
output+="{'name': 'rocky', 'release': 9},"
100103
fi
101104
if [[ ${{ inputs.ubuntu-noble }} == 'true' ]]; then
102105
echo -n "$comma\"ubuntu\"" >> $GITHUB_OUTPUT
103106
comma=", "
104107
fi
105-
echo "]}" >> $GITHUB_OUTPUT
108+
if [[ ${{ inputs.ubuntu-noble }} == 'true' ]]; then
109+
output+="{'name': 'ubuntu', 'release': 'noble'},"
110+
fi
111+
# remove trailing comma
112+
output="${output%,}"
113+
output+="]}"
114+
echo "matrix=$output" >> $GITHUB_OUTPUT
106115
107116
- name: Display container datetime tag
108117
run: |
@@ -203,7 +212,8 @@ jobs:
203212
continue-on-error: true
204213
run: |
205214
args="${{ inputs.regexes }}"
206-
args="$args -e kolla_base_distro=${{ matrix.distro }}"
215+
args="$args -e kolla_base_distro=${{ matrix.distro.name }}"
216+
args="$args -e kolla_base_distro_version=${{ matrix.distro.release }}"
207217
args="$args -e kolla_tag=${{ steps.write-kolla-tag.outputs.kolla-tag }}"
208218
args="$args -e stackhpc_repo_mirror_auth_proxy_enabled=true"
209219
source venvs/kayobe/bin/activate &&
@@ -221,7 +231,8 @@ jobs:
221231
id: build_seed_images
222232
continue-on-error: true
223233
run: |
224-
args="-e kolla_base_distro=${{ matrix.distro }}"
234+
args="-e kolla_base_distro=${{ matrix.distro.name }}"
235+
args="$args -e kolla_base_distro_version=${{ matrix.distro.release }}"
225236
args="$args -e kolla_tag=${{ steps.write-kolla-tag.outputs.kolla-tag }}"
226237
args="$args -e stackhpc_repo_mirror_auth_proxy_enabled=true"
227238
source venvs/kayobe/bin/activate &&
@@ -236,13 +247,13 @@ jobs:
236247
if: inputs.seed
237248

238249
- name: Get built container images
239-
run: docker image ls --filter "reference=ark.stackhpc.com/stackhpc-dev/*:${{ steps.write-kolla-tag.outputs.kolla-tag }}" > ${{ matrix.distro }}-container-images
250+
run: docker image ls --filter "reference=ark.stackhpc.com/stackhpc-dev/*:${{ steps.write-kolla-tag.outputs.kolla-tag }}" > ${{ matrix.distro.name }}-${{ matrix.distro.release }}-container-images
240251

241252
- name: Fail if no images have been built
242-
run: if [ $(wc -l < ${{ matrix.distro }}-container-images) -le 1 ]; then exit 1; fi
253+
run: if [ $(wc -l < ${{ matrix.distro.name }}-${{ matrix.distro.release }}-container-images) -le 1 ]; then exit 1; fi
243254

244255
- name: Scan built container images
245-
run: src/kayobe-config/tools/scan-images.sh ${{ matrix.distro }} ${{ steps.write-kolla-tag.outputs.kolla-tag }}
256+
run: src/kayobe-config/tools/scan-images.sh ${{ matrix.distro.name }}-${{ matrix.distro.release }} ${{ steps.write-kolla-tag.outputs.kolla-tag }}
246257

247258
- name: Move image scan logs to output artifact
248259
run: mv image-scan-output image-build-logs/image-scan-output
@@ -297,7 +308,7 @@ jobs:
297308
- name: Upload output artifact
298309
uses: actions/upload-artifact@v4
299310
with:
300-
name: ${{ matrix.distro }}-logs
311+
name: ${{ matrix.distro.name }}-${{ matrix.distro.release }}-logs
301312
path: image-build-logs
302313
retention-days: 7
303314
if: ${{ !cancelled() }}

.github/workflows/stackhpc-pull-request.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,40 @@ jobs:
161161
secrets: inherit
162162
if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }}
163163

164+
all-in-one-ubuntu-noble-ovs:
165+
name: aio (Ubuntu Noble OVS)
166+
needs:
167+
- check-changes
168+
- build-kayobe-image
169+
uses: ./.github/workflows/stackhpc-all-in-one.yml
170+
with:
171+
kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }}
172+
os_distribution: ubuntu
173+
os_release: noble
174+
ssh_username: ubuntu
175+
neutron_plugin: ovs
176+
OS_CLOUD: openstack
177+
if: ${{ needs.check-changes.outputs.aio == 'true' }}
178+
secrets: inherit
179+
if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }}
180+
181+
all-in-one-ubuntu-noble-ovn:
182+
name: aio (Ubuntu Noble OVN)
183+
needs:
184+
- check-changes
185+
- build-kayobe-image
186+
uses: ./.github/workflows/stackhpc-all-in-one.yml
187+
with:
188+
kayobe_image: ${{ needs.build-kayobe-image.outputs.kayobe_image }}
189+
os_distribution: ubuntu
190+
os_release: noble
191+
ssh_username: ubuntu
192+
neutron_plugin: ovn
193+
OS_CLOUD: openstack
194+
if: ${{ needs.check-changes.outputs.aio == 'true' }}
195+
secrets: inherit
196+
if: ${{ ! failure() && ! cancelled() && github.repository == 'stackhpc/stackhpc-kayobe-config' }}
197+
164198
all-in-one-rocky-9-ovs:
165199
name: aio (Rocky 9 OVS)
166200
needs:
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Update Kolla versions
2+
3+
on:
4+
# Allow manual executions
5+
workflow_dispatch:
6+
# Run weekly on Tuesday
7+
schedule:
8+
- cron: '0 0 * * 2'
9+
10+
jobs:
11+
update-from-branch:
12+
name: Update dependencies
13+
strategy:
14+
matrix:
15+
include:
16+
- version: stackhpc/2023.1
17+
codename: Antelope
18+
- version: stackhpc/2024.1
19+
codename: Caracal
20+
uses: ./.github/workflows/update-dependencies.yml
21+
with:
22+
openstack_version: ${{ matrix.version }}
23+
openstack_codename: ${{ matrix.codename }}
24+
permissions:
25+
contents: write
26+
pull-requests: write
27+
if: github.repository == 'stackhpc/stackhpc-kayobe-config'

.github/workflows/update-dependencies.yml

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
name: Update dependencies
22

33
on:
4-
# Allow manual executions
5-
workflow_dispatch:
6-
# Run nightly
7-
schedule:
8-
- cron: '0 0 * * *'
4+
workflow_call:
5+
inputs:
6+
openstack_version:
7+
description: OpenStack version
8+
type: string
9+
required: true
10+
openstack_codename:
11+
description: OpenStack codename
12+
type: string
13+
required: true
914

1015
jobs:
1116
propose_github_release_updates:
@@ -38,20 +43,14 @@ jobs:
3843
- name: Checkout
3944
uses: actions/checkout@v4
4045
with:
46+
ref: ${{ inputs.openstack_version }}
4147
path: ${{ github.workspace }}/src/kayobe-config
4248

43-
- name: Determine OpenStack release
44-
id: openstack_release
45-
run: |
46-
BRANCH=$(awk -F'=' '/defaultbranch/ {print $2}' .gitreview)
47-
echo "openstack_release=${BRANCH}" | sed -E "s,(stable|unmaintained)/,," >> $GITHUB_OUTPUT
48-
working-directory: ${{ github.workspace }}/src/kayobe-config
49-
5049
- name: Checkout the dependency repo
5150
uses: actions/checkout@v4
5251
with:
5352
repository: ${{ matrix.repository }}
54-
ref: stackhpc/${{ steps.openstack_release.outputs.openstack_release }}
53+
ref: ${{ inputs.openstack_version }}
5554
fetch-tags: true
5655
path: ${{ github.workspace }}/src/${{ matrix.key }}
5756

@@ -78,10 +77,17 @@ jobs:
7877
path: ${{ github.workspace }}/src/kayobe-config
7978
commit-message: >-
8079
Bump ${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}
81-
branch: update-dependency/${{ matrix.key }}
80+
author: stackhpc-ci <22933334+stackhpc-ci@users.noreply.github.com>
81+
branch: update-dependency/${{ matrix.key }}/${{ inputs.openstack_version }}
8282
delete-branch: true
8383
title: >-
8484
Bump ${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}
8585
body: >
86-
This PR was created automatically to update
86+
This PR was created automatically to update ${{ inputs.openstack_version }}
8787
${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}.
88+
89+
GitHub Release Changelog:
90+
https://github.com/stackhpc/${{ matrix.key }}/releases/tag/${{ steps.latest_tag.outputs.latest_tag }}
91+
labels: |
92+
automated
93+
${{ inputs.openstack_codename }}

doc/source/configuration/cephadm.rst

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -206,8 +206,8 @@ Pools
206206
~~~~~
207207

208208
The following example pools should be sufficient to work with the
209-
default `external Ceph
210-
configuration <https://docs.openstack.org/kolla-ansible/latest/reference/storage/external-ceph-guide.html>`__
209+
default :kolla-ansible-doc:`external Ceph
210+
configuration <reference/storage/external-ceph-guide.html>`
211211
for Cinder, Cinder backup, Glance, and Nova in Kolla Ansible.
212212

213213
.. code:: yaml
@@ -234,8 +234,8 @@ Keys
234234
~~~~
235235

236236
The following example keys should be sufficient to work with the default
237-
`external Ceph
238-
configuration <https://docs.openstack.org/kolla-ansible/latest/reference/storage/external-ceph-guide.html>`__
237+
:kolla-ansible-doc:`external Ceph
238+
configuration <reference/storage/external-ceph-guide.html>`
239239
for Cinder, Cinder backup, Glance, and Nova in Kolla Ansible.
240240

241241
.. code:: yaml
@@ -351,7 +351,7 @@ RADOS Gateways
351351

352352
RADOS Gateway integration is described in the :kolla-ansible-doc:`Kolla Ansible
353353
documentation
354-
<https://docs.openstack.org/kolla-ansible/latest/reference/storage/external-ceph-guide.html#radosgw>`.
354+
<reference/storage/external-ceph-guide.html#radosgw>`.
355355

356356
RADOS Gateways (RGWs) are defined with the following:
357357

doc/source/configuration/ci-cd.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ Runner Deployment
118118
The repository permissions for a fine-grained personal access token should be; :code:`Actions: R/W, Administration: R/W, Metadata: R`
119119
Once the key has been obtained, add it to :code:`secrets.yml` under :code:`secrets_github_access_token`
120120

121-
7. If the host is an actual Infra VM then please refer to upstream `Infrastructure VMs <https://docs.openstack.org/kayobe/latest/configuration/reference/infra-vms.html>`__ documentation for additional configuration and steps.
121+
7. If the host is an actual Infra VM then please refer to upstream :kayobe-doc:`Infrastructure VMs <configuration/reference/infra-vms.html>` documentation for additional configuration and steps.
122122

123123
8. Run :code:`kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/deploy-github-runner.yml`
124124

doc/source/configuration/cloudkitty.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ Configuring in kayobe-config
88
By default, CloudKitty uses Gnocchi and Ceilometer as the collector and fetcher
99
backends. Unless the system has a specific reason not to, we recommend instead
1010
using Prometheus as the backend for both. The following instructions explain
11-
how to do this. Also, see the `Kolla Ansible docs on CloudKitty
12-
<https://docs.openstack.org/kolla-ansible/latest/reference/rating/cloudkitty-guide.html>`__
11+
how to do this. Also, see the :kolla-ansible-doc:`Kolla Ansible docs on CloudKitty
12+
<reference/rating/cloudkitty-guide.html>`
1313
for more details.
1414

1515
Enable CloudKitty and disable InfluxDB, as we are using OpenSearch as the

0 commit comments

Comments
 (0)