Skip to content

Commit c51d21c

Browse files
authored
Merge branch 'stackhpc/2024.1' into aarch64-image-build
2 parents 6003442 + 58a3f5a commit c51d21c

Some content is hidden

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

41 files changed

+2287
-84
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Update Kolla versions
2+
3+
on:
4+
# Allow manual executions
5+
workflow_dispatch:
6+
# Run nightly
7+
schedule:
8+
- cron: '0 0 * * *'
9+
10+
jobs:
11+
update-from-branch:
12+
name: Update dependencies
13+
strategy:
14+
matrix:
15+
include:
16+
- version: stackhpc/2023.1
17+
- version: stackhpc/2024.1
18+
uses: ./.github/workflows/update-dependencies.yml
19+
with:
20+
openstack_version: ${{ matrix.version }}
21+
permissions:
22+
contents: write
23+
pull-requests: write

.github/workflows/update-dependencies.yml

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
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
910

1011
jobs:
1112
propose_github_release_updates:
@@ -38,20 +39,14 @@ jobs:
3839
- name: Checkout
3940
uses: actions/checkout@v4
4041
with:
42+
ref: ${{ inputs.openstack_version }}
4143
path: ${{ github.workspace }}/src/kayobe-config
4244

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-
5045
- name: Checkout the dependency repo
5146
uses: actions/checkout@v4
5247
with:
5348
repository: ${{ matrix.repository }}
54-
ref: stackhpc/${{ steps.openstack_release.outputs.openstack_release }}
49+
ref: ${{ inputs.openstack_version }}
5550
fetch-tags: true
5651
path: ${{ github.workspace }}/src/${{ matrix.key }}
5752

@@ -78,10 +73,10 @@ jobs:
7873
path: ${{ github.workspace }}/src/kayobe-config
7974
commit-message: >-
8075
Bump ${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}
81-
branch: update-dependency/${{ matrix.key }}
76+
branch: update-dependency/${{ matrix.key }}/${{ inputs.openstack_version }}
8277
delete-branch: true
8378
title: >-
84-
Bump ${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}
79+
Bump ${{ inputs.openstack_version }} ${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}
8580
body: >
86-
This PR was created automatically to update
81+
This PR was created automatically to update ${{ inputs.openstack_version }}
8782
${{ matrix.key }} to ${{ steps.latest_tag.outputs.latest_tag }}.

doc/source/configuration/cephadm.rst

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
====
2-
Ceph
3-
====
1+
.. _cephadm-kayobe:
2+
3+
================
4+
Cephadm & Kayobe
5+
================
46

57
This section describes how to use the Cephadm integration included in StackHPC
68
Kayobe configuration to deploy Ceph.
@@ -204,8 +206,8 @@ Pools
204206
~~~~~
205207

206208
The following example pools should be sufficient to work with the
207-
default `external Ceph
208-
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>`
209211
for Cinder, Cinder backup, Glance, and Nova in Kolla Ansible.
210212

211213
.. code:: yaml
@@ -232,8 +234,8 @@ Keys
232234
~~~~
233235

234236
The following example keys should be sufficient to work with the default
235-
`external Ceph
236-
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>`
237239
for Cinder, Cinder backup, Glance, and Nova in Kolla Ansible.
238240

239241
.. code:: yaml
@@ -349,7 +351,7 @@ RADOS Gateways
349351

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

354356
RADOS Gateways (RGWs) are defined with the following:
355357

doc/source/configuration/ci-cd.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,26 +57,26 @@ Runner Deployment
5757
Ideally an Infra VM could be used here or failing that the control host.
5858
Wherever it is deployed the host will need access to the :code:`admin_network`, :code:`public_network` and the :code:`pulp registry` on the seed.
5959

60-
2. Edit the environment's :code:`${KAYOBE_CONFIG_PATH}/environments/${KAYOBE_ENVIRONMENT}/inventory/groups` to add the predefined :code:`github-runners` group to :code:`infra-vms`
60+
2. Edit the environment's :code:`$KAYOBE_CONFIG_PATH/environments/$KAYOBE_ENVIRONMENT/inventory/groups` to add the predefined :code:`github-runners` group to :code:`infra-vms`
6161

6262
.. code-block:: ini
6363
6464
[infra-vms:children]
6565
github-runners
6666
67-
3. Edit the environment's :code:`${KAYOBE_CONFIG_PATH}/environments/${KAYOBE_ENVIRONMENT}/inventory/hosts` to define the host(s) that will host the runners.
67+
3. Edit the environment's :code:`$KAYOBE_CONFIG_PATH/environments/$KAYOBE_ENVIRONMENT/inventory/hosts` to define the host(s) that will host the runners.
6868

6969
.. code-block:: ini
7070
7171
[github-runners]
7272
prod-runner-01
7373
74-
4. Provide all the relevant Kayobe :code:`group_vars` for :code:`github-runners` under :code:`${KAYOBE_CONFIG_PATH}/environments/${KAYOBE_ENVIRONMENT}/inventory/group_vars/github-runners`
74+
4. Provide all the relevant Kayobe :code:`group_vars` for :code:`github-runners` under :code:`$KAYOBE_CONFIG_PATH/environments/$KAYOBE_ENVIRONMENT/inventory/group_vars/github-runners`
7575
* `infra-vms` ensuring all required `infra_vm_extra_network_interfaces` are defined
7676
* `network-interfaces`
7777
* `python-interpreter.yml` ensuring that `ansible_python_interpreter: /usr/bin/python3` has been set
7878

79-
5. Edit the ``${KAYOBE_CONFIG_PATH}/inventory/group_vars/github-runners/runners.yml`` file which will contain the variables required to deploy a series of runners.
79+
5. Edit the ``$KAYOBE_CONFIG_PATH/inventory/group_vars/github-runners/runners.yml`` file which will contain the variables required to deploy a series of runners.
8080
Below is a core set of variables that will require consideration and modification for successful deployment of the runners.
8181
The number of runners deployed can be configured by removing and extending the dict :code:`github-runners`.
8282
As for how many runners present three is suitable number as this would prevent situations where long running jobs could halt progress other tasks whilst waiting for a free runner.
@@ -118,9 +118,9 @@ 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

123-
8. Run :code:`kayobe playbook run ${KAYOBE_CONFIG_PATH}/ansible/deploy-github-runner.yml`
123+
8. Run :code:`kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/deploy-github-runner.yml`
124124

125125
9. Check runners have registered properly by visiting the repository's :code:`Action` tab -> :code:`Runners` -> :code:`Self-hosted runners`
126126

@@ -130,9 +130,9 @@ Runner Deployment
130130
Workflow Deployment
131131
-------------------
132132

133-
1. Edit :code:`${KAYOBE_CONFIG_PATH}/inventory/group_vars/github-writer/writer.yml` in the base configuration making the appropriate changes to your deployments specific needs. See documentation for `stackhpc.kayobe_workflows.github <https://github.com/stackhpc/ansible-collection-kayobe-workflows/tree/main/roles/github>`__.
133+
1. Edit :code:`$KAYOBE_CONFIG_PATH/inventory/group_vars/github-writer/writer.yml` in the base configuration making the appropriate changes to your deployments specific needs. See documentation for `stackhpc.kayobe_workflows.github <https://github.com/stackhpc/ansible-collection-kayobe-workflows/tree/main/roles/github>`__.
134134

135-
2. Run :code:`kayobe playbook run ${KAYOBE_CONFIG_PATH}/ansible/write-github-workflows.yml`
135+
2. Run :code:`kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/write-github-workflows.yml`
136136

137137
3. Add all required secrets and variables to repository either via the GitHub UI or GitHub CLI (may require repository owner)
138138

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

doc/source/configuration/lvm.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,6 @@ hosts:
9393

9494
.. code-block:: console
9595
96-
mkdir -p ${KAYOBE_CONFIG_PATH}/hooks/overcloud-host-configure/pre.d
97-
cd ${KAYOBE_CONFIG_PATH}/hooks/overcloud-host-configure/pre.d
96+
mkdir -p $KAYOBE_CONFIG_PATH/hooks/overcloud-host-configure/pre.d
97+
cd $KAYOBE_CONFIG_PATH/hooks/overcloud-host-configure/pre.d
9898
ln -s ../../../ansible/growroot.yml 30-growroot.yml

doc/source/configuration/monitoring.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
Monitoring
33
==========
44

5+
.. _monitoring-service-configuration:
6+
57
Monitoring Configuration
68
========================
79

doc/source/configuration/release-train.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
.. _stackhpc_release_train:
1+
.. _stackhpc-release-train:
22

33
======================
44
StackHPC Release Train

doc/source/configuration/vault.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
.. _hashicorp-vault:
2+
13
================================
24
Hashicorp Vault for internal PKI
35
================================
@@ -168,6 +170,9 @@ Certificates generation
168170
Create the external TLS certificates (testing only)
169171
---------------------------------------------------
170172

173+
This method should only be used for testing. For external TLS on production systems,
174+
See `Installing External TLS Certificates <installing-external-tls-certificates>`__.
175+
171176
Typically external API TLS certificates should be generated by a organisation's trusted internal or third-party CA.
172177
For test and development purposes it is possible to use Vault as a CA for the external API.
173178

0 commit comments

Comments
 (0)