Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
abf4976
Validate inputs to github workflows
Alex-Welsh Oct 1, 2024
7732ad1
Add step to re-run cephadm playbook before deploy manila
seunghun1ee Oct 4, 2024
8776e3d
Minor wording changes
seunghun1ee Oct 9, 2024
4964c88
Update testing Ubuntu image to 22.04
seunghun1ee Oct 9, 2024
f5bd9f9
Only run necessary playbooks
seunghun1ee Oct 9, 2024
2b1df12
Update Manila commands
seunghun1ee Oct 9, 2024
1c412a9
Add seed host configure step for storage network
seunghun1ee Oct 9, 2024
afa18fd
Revert "Update testing Ubuntu image to 22.04"
seunghun1ee Oct 9, 2024
d6acc56
Merge separated share type set
seunghun1ee Oct 10, 2024
9d34477
Fix rabbitmq-reset.yml trying to restart wrong services
darmach May 15, 2024
98a9d28
Merge pull request #1323 from stackhpc/2023.1-rabbitmq-reset-fix
MoteHue Oct 10, 2024
fb25947
Merge pull request #1310 from stackhpc/container-image-build
Alex-Welsh Oct 10, 2024
c74aad8
Add upgrade-prerequisites script for CI (#1308)
Alex-Welsh Oct 11, 2024
e95a020
Fix unassigned rabbitmq container name (#1330)
seunghun1ee Oct 15, 2024
bad366e
Build Octavia from StackHPC fork
priteau Oct 15, 2024
ddac1ab
Merge pull request #1331 from stackhpc/octavia-fork
priteau Oct 15, 2024
57287fb
feat: update `kayobe-automation` submodule and `workflows` (#1309)
jackhodgkiss Oct 16, 2024
0205825
trivy: Add more repositories to handle rate limits
bbezak Oct 17, 2024
2e70ea9
Merge pull request #1336 from stackhpc/trivy-fix-2023.1
Alex-Welsh Oct 17, 2024
c8330ce
Merge branch 'stackhpc/2023.1' into sync-antelope-caracal
Alex-Welsh Oct 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .automation.conf/run-books/pulp-sync-content.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/bin/bash

set -euE
set -o pipefail

PARENT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
KAYOBE_AUTOMATION_DIR="$(realpath "${PARENT}/../../.automation")"

function main {
if [ "${PULP_DO_CONTAINER_SYNC:-}" = true ]; then
${KAYOBE_AUTOMATION_DIR}/scripts/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/pulp-container-sync.yml' -e stackhpc_pulp_images_kolla_filter="${PULP_KOLLA_FILTER:-}"
fi
if [ "${PULP_DO_CONTAINER_PUBLISH:-}" = true ]; then
${KAYOBE_AUTOMATION_DIR}/scripts/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/pulp-container-publish.yml' -e stackhpc_pulp_images_kolla_filter="${PULP_KOLLA_FILTER:-}"
fi
if [ "${PULP_DO_REPO_SYNC:-}" = true ]; then
${KAYOBE_AUTOMATION_DIR}/scripts/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/pulp-repo-sync.yml'
fi
if [ "${PULP_DO_REPO_PUBLISH:-}" = true ]; then
${KAYOBE_AUTOMATION_DIR}/scripts/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/pulp-repo-publish.yml'
fi
if [ "${PULP_DO_REPO_PROMOTE:-}" = true ]; then
${KAYOBE_AUTOMATION_DIR}/scripts/playbook-run.sh '$KAYOBE_CONFIG_PATH/ansible/pulp-repo-promote-production.yml'
fi
}

if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
main
fi
7 changes: 7 additions & 0 deletions .github/workflows/overcloud-host-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ jobs:
runs-on: arc-skc-host-image-builder-runner
permissions: {}
steps:
- name: Validate inputs
run: |
if [[ ${{ inputs.rocky9 }} == 'false' && ${{ inputs.ubuntu-jammy }} == 'false' ]]; then
echo "At least one distribution must be selected"
exit 1
fi

- name: Install Package
uses: ConorMacBride/install-package@main
with:
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/overcloud-host-image-promote.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,13 @@ jobs:
if: github.repository == 'stackhpc/stackhpc-kayobe-config'
runs-on: ubuntu-22.04
steps:
- name: Validate inputs
run: |
if [[ ${{ inputs.rocky9 }} == 'false' && ${{ inputs.ubuntu-jammy }} == 'false' ]]; then
echo "At least one distribution must be selected"
exit 1
fi

- uses: actions/checkout@v4
with:
path: src/kayobe-config
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/overcloud-host-image-upload.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,13 @@ jobs:
runs-on: arc-skc-host-image-builder-runner
permissions: {}
steps:
- name: Validate inputs
run: |
if [[ ${{ inputs.rocky9 }} == 'false' && ${{ inputs.ubuntu-jammy }} == 'false' ]]; then
echo "At least one distribution must be selected"
exit 1
fi

- name: Install package dependencies
run: |
sudo apt update
Expand Down
15 changes: 13 additions & 2 deletions .github/workflows/stackhpc-container-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ on:
required: false
default: ""
overcloud:
description: Build overcloud images?
description: Build container images for overcloud services?
type: boolean
required: false
default: true
seed:
description: Build seed images?
description: Build container images for seed services?
type: boolean
required: false
default: false
Expand Down Expand Up @@ -52,6 +52,17 @@ jobs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
openstack_release: ${{ steps.openstack_release.outputs.openstack_release }}
steps:
- name: Validate inputs
run: |
if [[ ${{ inputs.rocky-linux-9 }} == 'false' && ${{ inputs.ubuntu-jammy }} == 'false' ]]; then
echo "At least one distribution must be selected"
exit 1
fi
if [[ ${{ inputs.overcloud }} == 'false' && ${{ inputs.seed }} == 'false' ]]; then
echo "At least one of overcloud or seed must be selected"
exit 1
fi

- name: Checkout
uses: actions/checkout@v4

Expand Down
27 changes: 17 additions & 10 deletions doc/source/contributor/environments/ci-multinode.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,15 @@ is not enabled by default. To enable it, set the following in
kolla_enable_manila: true
kolla_enable_manila_backend_cephfs_native: true

And re-run ``kayobe overcloud service deploy`` if you are working on an existing
deployment.
If you are working on an existing deployment, you need to do the following first.

1. Create CephFS pools: ``kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/cephadm-pools.yml``
2. Create cephx key for Manila: ``kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/cephadm-keys.yml``
3. Run Manila related Ceph commands: ``kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/cephadm-commands-post.yml``
4. Gather Ceph configuration and keyring for Manila: ``kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/cephadm-gather-keys.yml``
5. Configure Storage network on Seed node: ``kayobe seed host configure -t network,ip-allocation,snat``

Then, run ``kayobe overcloud service deploy`` to deploy Manila.

To test it, you will need two virtual machines. Cirros does not support the Ceph
kernel client, so you will need to use a different image. Any regular Linux
Expand Down Expand Up @@ -108,35 +115,35 @@ Then create a share type and share:

.. code-block:: bash

manila type-create cephfs-type false --is_public true
manila type-key cephfs-type set vendor_name=Ceph storage_protocol=CEPHFS
manila create --name test-share --share-type cephfs-type CephFS 2
openstack share type create cephfs-type false --public true
openstack share type set cephfs-type --extra-specs vendor_name=Ceph, storage_protocol=CEPHFS
openstack share create --name test-share --share-type cephfs-type --public true CephFS 2

Wait until the share is available:

.. code-block:: bash

manila list
openstack share list

Then allow access to the shares to two users:

.. code-block:: bash

manila access-allow test-share cephx alice
manila access-allow test-share cephx bob
openstack share access create test-share cephx alice
openstack share access create test-share cephx bob

Show the access list to make sure the state of both entries is ``active`` and
take note of the access keys:

.. code-block:: bash

manila access-list test-share
openstack share access list test-share

And take note of the path to the share:

.. code-block:: bash

manila share-export-location-list test-share
openstack share export location list test-share

SSH into the first instance, create a directory for the share, and mount it:

Expand Down
2 changes: 1 addition & 1 deletion etc/kayobe/ansible/requirements.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ collections:
- name: stackhpc.hashicorp
version: 2.5.1
- name: stackhpc.kayobe_workflows
version: 1.0.3
version: 1.1.0
roles:
- src: stackhpc.vxlan
- name: ansible-lockdown.ubuntu22_cis
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
fixes:
- |
Fixes creation and failover of Octavia TLS-terminated load balancers when
storing the certificate and key as a PKCS12 bundle in Barbican.
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
features:
- |
Upgrades kayobe-automation submodule to ``7676aa8``.

Upgrades kayobe-workflows collection to ``v1.1.0``.

Kayobe-automation config-diff now runs in parallel and generates both
the old and new configuration at the same time. This should improve
config-diff wait times.

Add support for the `pulp-sync-content` run book.
deprecations:
- |
Kayobe-automation will now automatically detect vaulted files for the
purpose of config-diff therefore, ``KAYOBE_CONFIG_SECRET_PATHS_EXTRA`` and
``KAYOBE_CONFIG_VAULTED_FILES_PATHS_EXTRA`` are no longer used
security:
- |
The upgraded kayobe-workflows collection increases the version of various
Actions and containers used within GitHub based workflows, including increasing
Docker in Docker to version ``27.3.1`` thus removing the vunerabilities present
in ``24.0-git``.
4 changes: 4 additions & 0 deletions tools/scan-images.sh
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ for image in $images; do
--severity HIGH,CRITICAL \
--output image-scan-output/${filename}.json \
--ignore-unfixed \
--db-repository ghcr.io/aquasecurity/trivy-db:2 \
--db-repository public.ecr.aws/aquasecurity/trivy-db \
--java-db-repository ghcr.io/aquasecurity/trivy-java-db:1 \
--java-db-repository public.ecr.aws/aquasecurity/trivy-java-db \
$image); then
# Clean up the output file for any images with no vulnerabilities
rm -f image-scan-output/${filename}.json
Expand Down
Loading