Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
8a1a2b4
Only create one PR when updating dependencies
Alex-Welsh Oct 14, 2025
53f38d3
Make update-dependencies.yml sed more readable
Alex-Welsh Nov 17, 2025
d15aa3b
CI: Update to latest GitHub Actions workflows
priteau Feb 6, 2026
82102a1
Pins actions/checkout to de0fac2e4500dabe0009e67214ff5f5447ce83dd
Alex-Welsh Apr 1, 2026
7b1e24c
Updates actions/download-artifact and pins to 3e5f45b2cfb9172054b4087…
Alex-Welsh Apr 1, 2026
bd39866
Pins actions/setup-python to a309ff8b426b58ec0e2a45f0f869d46889d02405
Alex-Welsh Apr 1, 2026
f2e78a3
Updates actions/upload-artifact and pins to bbbca2ddaa5d8feaa63e36b76…
Alex-Welsh Apr 1, 2026
8d4585d
Updates docker/build-push-action and pins to d08e5c354a6adb9ed34480a0…
Alex-Welsh Apr 1, 2026
6732233
Updates docker/login-action and pins to b45d80f862d83dbcd57f89517bcf5…
Alex-Welsh Apr 1, 2026
87811d7
Updates docker/metadata-action and pins to 030e881283bb7a6894de51c315…
Alex-Welsh Apr 1, 2026
1809d4d
Updates docker/setup-buildx-action and pins to 4d04d5d9486b7bd6fa91e7…
Alex-Welsh Apr 1, 2026
6c47d29
Updates dorny/paths-filter and pins to fbd0ab8f3e69293af611ebaee6363f…
Alex-Welsh Apr 1, 2026
7c22c4f
Updates hashicorp/setup-terraform and pins to 5e8dbf3c6d9deaf4193ca7a…
Alex-Welsh Apr 1, 2026
14dc8ce
Updates slackapi/slack-github-action and pins to af78098f536edbc4de71…
Alex-Welsh Apr 1, 2026
d2b7dbc
Remove ConorMacBride/install-package action
Alex-Welsh Mar 31, 2026
6e87c77
Update Slack action invocation for v3 spec
Alex-Welsh Apr 1, 2026
972fb43
Update actions to org-wide pins
Alex-Welsh Apr 27, 2026
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
14 changes: 7 additions & 7 deletions .github/workflows/amphora-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,17 +39,17 @@ jobs:
permissions: {}
steps:

- name: Install Package
uses: ConorMacBride/install-package@main
with:
apt: git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq
- name: Install Package dependencies
run: |
sudo apt update &&
sudo apt install -y git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq

- name: Start the SSH service
run: |
sudo /etc/init.d/ssh start

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down Expand Up @@ -80,7 +80,7 @@ jobs:
pip install -r ../src/kayobe-config/requirements.txt

- name: Install terraform
uses: hashicorp/setup-terraform@v2
uses: hashicorp/setup-terraform@5e8dbf3c6d9deaf4193ca7a8fb23f2ac83bb6c85 # v4.0.0

- name: Initialise terraform
run: terraform init
Expand Down Expand Up @@ -255,7 +255,7 @@ jobs:
if: steps.build_amphora.outcome == 'failure'

- name: Upload logs & image artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: amphora-image-build-log
path: ./artifact
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/amphora-image-promote.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
if: github.repository == 'stackhpc/stackhpc-kayobe-config'
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/ipa-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,17 @@ jobs:
- runner-selection
permissions: {}
steps:
- name: Install Package
uses: ConorMacBride/install-package@main
with:
apt: git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq
- name: Install Package dependencies
run: |
sudo apt update &&
sudo apt install -y git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq

- name: Start the SSH service
run: |
sudo /etc/init.d/ssh start

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down Expand Up @@ -95,7 +95,7 @@ jobs:
pip install -r ../src/kayobe-config/requirements.txt

- name: Install terraform
uses: hashicorp/setup-terraform@v2
uses: hashicorp/setup-terraform@5e8dbf3c6d9deaf4193ca7a8fb23f2ac83bb6c85 # v4.0.0

- name: Initialise terraform
run: terraform init
Expand Down Expand Up @@ -401,7 +401,7 @@ jobs:
if: always()

- name: Upload logs artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: Build logs
path: ./logs
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ipa-image-promote.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
exit 1
fi
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/overcloud-host-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,17 +57,17 @@ jobs:
exit 1
fi

- name: Install Package
uses: ConorMacBride/install-package@main
with:
apt: git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq
- name: Install Package dependencies
run: |
sudo apt update &&
sudo apt install -y git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq gh

- name: Start the SSH service
run: |
sudo /etc/init.d/ssh start

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down Expand Up @@ -102,7 +102,7 @@ jobs:
pip install -r ../src/kayobe-config/requirements.txt

- name: Install terraform
uses: hashicorp/setup-terraform@v2
uses: hashicorp/setup-terraform@5e8dbf3c6d9deaf4193ca7a8fb23f2ac83bb6c85 # v4.0.0

- name: Initialise terraform
run: terraform init
Expand Down Expand Up @@ -450,7 +450,7 @@ jobs:
steps.build_ubuntu_noble.outcome == 'failure'

- name: Upload logs artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: Build logs
path: ./logs
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/overcloud-host-image-promote.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
exit 1
fi
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/overcloud-host-image-upload.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
sudo apt update
sudo apt install -y build-essential git unzip nodejs python3-wheel python3-pip python3-venv
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/package-build-ofed.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,17 @@ jobs:
run: |
echo "ofed_tag=$(date +%Y%m%dT%H%M%S)" >> $GITHUB_OUTPUT

- name: Install Package
uses: ConorMacBride/install-package@main
with:
apt: git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq
- name: Install Package dependencies
run: |
sudo apt update &&
sudo apt install -y git unzip nodejs python3-pip python3-venv openssh-server openssh-client jq

- name: Start the SSH service
run: |
sudo /etc/init.d/ssh start

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand All @@ -57,7 +57,7 @@ jobs:
pip install -r ../src/kayobe-config/requirements.txt

- name: Install terraform
uses: hashicorp/setup-terraform@v2
uses: hashicorp/setup-terraform@5e8dbf3c6d9deaf4193ca7a8fb23f2ac83bb6c85 # v4.0.0

- name: Initialise terraform
run: terraform init
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/stackhpc-all-in-one.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,14 +96,14 @@ jobs:
# NOTE(upgrade): Reference the PREVIOUS release branch here.
PREVIOUS_BRANCH: stackhpc/2023.1
steps:
- name: Install Package
uses: ConorMacBride/install-package@main
with:
apt: git unzip nodejs openssh-client
- name: Install Package dependencies
run: |
sudo apt update &&
sudo apt install -y git unzip nodejs openssh-client

# If testing upgrade, checkout previous release, otherwise checkout current branch
- name: Checkout ${{ inputs.upgrade && 'previous release' || 'current' }} config
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: ${{ inputs.repository }}
ref: ${{ inputs.upgrade && env.PREVIOUS_BRANCH || inputs.github_ref }}
Expand Down Expand Up @@ -139,7 +139,7 @@ jobs:
fi

- name: Install terraform
uses: hashicorp/setup-terraform@v2
uses: hashicorp/setup-terraform@5e8dbf3c6d9deaf4193ca7a8fb23f2ac83bb6c85 # v4.0.0

- name: Initialise terraform
run: terraform init
Expand Down Expand Up @@ -394,7 +394,7 @@ jobs:
if: inputs.upgrade

- name: Checkout current release config
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: ${{ inputs.repository }}
ref: ${{ inputs.github_ref }}
Expand Down Expand Up @@ -500,7 +500,7 @@ jobs:
if: ${{ !cancelled() && steps.tf_apply.outcome == 'success' }}

- name: Upload test result artifacts
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: test-results-${{ inputs.os_distribution }}-${{ inputs.os_release }}-${{ inputs.neutron_plugin }}${{ inputs.upgrade && '-upgrade' || '' }}
path: |
Expand Down
13 changes: 7 additions & 6 deletions .github/workflows/stackhpc-build-kayobe-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,25 +51,25 @@ jobs:
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Checkout kayobe config
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: true

- name: Log in to the Container registry
uses: docker/login-action@v3
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v5
uses: docker/metadata-action@030e881283bb7a6894de51c315a6bfe6a94e05cf # v6.0.0
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
with:
driver-opts: |
image=moby/buildkit:master
Expand All @@ -85,7 +85,7 @@ jobs:
# Setting KAYOBE_USER_UID and KAYOBE_USER_GID to 1001 to match docker's defaults
# so that docker can run as a privileged user within the Kayobe image.
- name: Build and push Docker image
uses: docker/build-push-action@v5
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
with:
file: ./.automation/docker/kayobe/Dockerfile
context: .
Expand All @@ -100,8 +100,9 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}

- name: Send message to Slack via Workflow Builder
uses: slackapi/slack-github-action@v1.26.0
uses: slackapi/slack-github-action@af78098f536edbc4de71162a307590698245be95 # v3.0.1
with:
webhook-type: "incoming-webhook"
payload: |
{
"channel-id": "${{ env.SLACK_CHANNEL_ID }}",
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/stackhpc-check-tags.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
sudo apt install -y git unzip nodejs
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: true

Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/stackhpc-ci-cleanup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@ jobs:
environment: ${{ matrix.environment }}
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

- name: Setup Python
uses: actions/setup-python@v5
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0

- name: Generate clouds.yaml
run: |
Expand Down Expand Up @@ -101,8 +101,9 @@ jobs:
OS_APPLICATION_CREDENTIAL_SECRET: ${{ secrets.OS_APPLICATION_CREDENTIAL_SECRET }}

- name: Send message to Slack via Workflow Builder
uses: slackapi/slack-github-action@v1.26.0
uses: slackapi/slack-github-action@af78098f536edbc4de71162a307590698245be95 # v3.0.1
with:
webhook-type: "incoming-webhook"
payload: |
{
"channel-id": "${{ env.SLACK_CHANNEL_ID }}",
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/stackhpc-container-image-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ jobs:
fi

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Determine OpenStack release
id: openstack_release
Expand Down Expand Up @@ -153,7 +153,7 @@ jobs:
sudo apt install -y build-essential git unzip nodejs python3-wheel python3-pip python3-venv curl jq wget

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

Expand Down Expand Up @@ -318,7 +318,7 @@ jobs:
if: inputs.push

- name: Upload output artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: ${{ matrix.distro.name }}-${{ matrix.distro.release }}-${{ matrix.distro.arch }}-logs
path: image-build-logs
Expand Down Expand Up @@ -362,29 +362,29 @@ jobs:
- runner-selection
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1

- name: Combine pushed images lists
run: |
find . -name 'push-attempt-images.txt' -exec cat {} + > all-pushed-images.txt

- name: Log in to container registry
uses: docker/login-action@v3
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
with:
registry: ark.stackhpc.com
username: ${{ secrets.RLS_TRAIN_CI_ARK_REGISTRY_USER }}
password: ${{ secrets.RLS_TRAIN_CI_ARK_REGISTRY_PASS }}

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: src/kayobe-config

- name: Create and push Docker manifests
run: src/kayobe-config/tools/multiarch-manifests.sh

- name: Upload manifest logs
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: manifest-logs
path: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/stackhpc-multinode-periodic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
stackhpc_kayobe_config_previous_version: ${{ steps.generate-inputs.outputs.stackhpc_kayobe_config_previous_version }}
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Generate inputs for multinode workflow
id: generate-inputs
Expand Down
Loading
Loading