mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-25 15:02:45 +00:00
workflows: Ensure shim-v2 is built as the last asset
By doing this we can ensure that whenever the rootfs changes, we'll be able to get the new root_hash.txt and use it. This is the very first step to bring the measured rootfs tests back. Signed-off-by: Fabiano Fidêncio <fabiano@fidencio.org>
This commit is contained in:
parent
3de6d09a86
commit
67a8665f51
@ -59,7 +59,6 @@ jobs:
|
|||||||
- rootfs-initrd
|
- rootfs-initrd
|
||||||
- rootfs-initrd-confidential
|
- rootfs-initrd-confidential
|
||||||
- runk
|
- runk
|
||||||
- shim-v2
|
|
||||||
- trace-forwarder
|
- trace-forwarder
|
||||||
- virtiofsd
|
- virtiofsd
|
||||||
stage:
|
stage:
|
||||||
@ -143,9 +142,58 @@ jobs:
|
|||||||
retention-days: 15
|
retention-days: 15
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
create-kata-tarball:
|
build-asset-shim-v2:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
needs: build-asset
|
needs: build-asset
|
||||||
|
steps:
|
||||||
|
- name: Login to Kata Containers quay.io
|
||||||
|
if: ${{ inputs.push-to-registry == 'yes' }}
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: quay.io
|
||||||
|
username: ${{ secrets.QUAY_DEPLOYER_USERNAME }}
|
||||||
|
password: ${{ secrets.QUAY_DEPLOYER_PASSWORD }}
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: ${{ inputs.commit-hash }}
|
||||||
|
fetch-depth: 0 # This is needed in order to keep the commit ids history
|
||||||
|
|
||||||
|
- name: Rebase atop of the latest target branch
|
||||||
|
run: |
|
||||||
|
./tests/git-helper.sh "rebase-atop-of-the-latest-target-branch"
|
||||||
|
env:
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
|
||||||
|
- name: Build shim-v2
|
||||||
|
id: build
|
||||||
|
run: |
|
||||||
|
make "${KATA_ASSET}-tarball"
|
||||||
|
build_dir=$(readlink -f build)
|
||||||
|
# store-artifact does not work with symlink
|
||||||
|
mkdir -p kata-build && cp "${build_dir}"/kata-static-${KATA_ASSET}*.tar.* kata-build/.
|
||||||
|
env:
|
||||||
|
KATA_ASSET: shim-v2
|
||||||
|
TAR_OUTPUT: shim-v2.tar.gz
|
||||||
|
PUSH_TO_REGISTRY: ${{ inputs.push-to-registry }}
|
||||||
|
ARTEFACT_REGISTRY: ghcr.io
|
||||||
|
ARTEFACT_REGISTRY_USERNAME: ${{ github.actor }}
|
||||||
|
ARTEFACT_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
RELEASE: ${{ inputs.stage == 'release' && 'yes' || 'no' }}
|
||||||
|
|
||||||
|
- name: store-artifact shim-v2
|
||||||
|
if: ${{ matrix.stage != 'release' }}
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: kata-artifacts-amd64-shim-v2${{ inputs.tarball-suffix }}
|
||||||
|
path: kata-build/kata-static-shim-v2.tar.xz
|
||||||
|
retention-days: 15
|
||||||
|
if-no-files-found: error
|
||||||
|
|
||||||
|
create-kata-tarball:
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
needs: [build-asset, build-asset-shim-v2]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
|
@ -37,7 +37,6 @@ jobs:
|
|||||||
- stratovirt
|
- stratovirt
|
||||||
- rootfs-image
|
- rootfs-image
|
||||||
- rootfs-initrd
|
- rootfs-initrd
|
||||||
- shim-v2
|
|
||||||
- virtiofsd
|
- virtiofsd
|
||||||
steps:
|
steps:
|
||||||
- name: Login to Kata Containers quay.io
|
- name: Login to Kata Containers quay.io
|
||||||
@ -84,9 +83,57 @@ jobs:
|
|||||||
retention-days: 15
|
retention-days: 15
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
create-kata-tarball:
|
build-asset-shim-v2:
|
||||||
runs-on: arm64-builder
|
runs-on: arm64-builder
|
||||||
needs: build-asset
|
needs: build-asset
|
||||||
|
steps:
|
||||||
|
- name: Login to Kata Containers quay.io
|
||||||
|
if: ${{ inputs.push-to-registry == 'yes' }}
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: quay.io
|
||||||
|
username: ${{ secrets.QUAY_DEPLOYER_USERNAME }}
|
||||||
|
password: ${{ secrets.QUAY_DEPLOYER_PASSWORD }}
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: ${{ inputs.commit-hash }}
|
||||||
|
fetch-depth: 0 # This is needed in order to keep the commit ids history
|
||||||
|
|
||||||
|
- name: Rebase atop of the latest target branch
|
||||||
|
run: |
|
||||||
|
./tests/git-helper.sh "rebase-atop-of-the-latest-target-branch"
|
||||||
|
env:
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
|
||||||
|
- name: Build shim-v2
|
||||||
|
run: |
|
||||||
|
make "${KATA_ASSET}-tarball"
|
||||||
|
build_dir=$(readlink -f build)
|
||||||
|
# store-artifact does not work with symlink
|
||||||
|
mkdir -p kata-build && cp "${build_dir}"/kata-static-${KATA_ASSET}*.tar.* kata-build/.
|
||||||
|
env:
|
||||||
|
KATA_ASSET: shim-v2
|
||||||
|
TAR_OUTPUT: shim-v2.tar.gz
|
||||||
|
PUSH_TO_REGISTRY: ${{ inputs.push-to-registry }}
|
||||||
|
ARTEFACT_REGISTRY: ghcr.io
|
||||||
|
ARTEFACT_REGISTRY_USERNAME: ${{ github.actor }}
|
||||||
|
ARTEFACT_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
RELEASE: ${{ inputs.stage == 'release' && 'yes' || 'no' }}
|
||||||
|
|
||||||
|
- name: store-artifact shim-v2
|
||||||
|
if: ${{ inputs.stage != 'release' }}
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: kata-artifacts-arm64-shim-v2${{ inputs.tarball-suffix }}
|
||||||
|
path: kata-build/kata-static-shim-v2.tar.xz
|
||||||
|
retention-days: 15
|
||||||
|
if-no-files-found: error
|
||||||
|
|
||||||
|
create-kata-tarball:
|
||||||
|
runs-on: arm64-builder
|
||||||
|
needs: [build-asset, build-asset-shim-v2]
|
||||||
steps:
|
steps:
|
||||||
- name: Adjust a permission for repo
|
- name: Adjust a permission for repo
|
||||||
run: |
|
run: |
|
||||||
|
@ -31,7 +31,6 @@ jobs:
|
|||||||
- kernel
|
- kernel
|
||||||
- qemu
|
- qemu
|
||||||
- rootfs-initrd
|
- rootfs-initrd
|
||||||
- shim-v2
|
|
||||||
- virtiofsd
|
- virtiofsd
|
||||||
stage:
|
stage:
|
||||||
- ${{ inputs.stage }}
|
- ${{ inputs.stage }}
|
||||||
@ -85,9 +84,62 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
create-kata-tarball:
|
build-asset-shim-v2:
|
||||||
runs-on: ppc64le
|
runs-on: ppc64le
|
||||||
needs: build-asset
|
needs: build-asset
|
||||||
|
steps:
|
||||||
|
- name: Prepare the self-hosted runner
|
||||||
|
run: |
|
||||||
|
${HOME}/scripts/prepare_runner.sh
|
||||||
|
sudo rm -rf $GITHUB_WORKSPACE/*
|
||||||
|
|
||||||
|
- name: Login to Kata Containers quay.io
|
||||||
|
if: ${{ inputs.push-to-registry == 'yes' }}
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: quay.io
|
||||||
|
username: ${{ secrets.QUAY_DEPLOYER_USERNAME }}
|
||||||
|
password: ${{ secrets.QUAY_DEPLOYER_PASSWORD }}
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: ${{ inputs.commit-hash }}
|
||||||
|
fetch-depth: 0 # This is needed in order to keep the commit ids history
|
||||||
|
|
||||||
|
- name: Rebase atop of the latest target branch
|
||||||
|
run: |
|
||||||
|
./tests/git-helper.sh "rebase-atop-of-the-latest-target-branch"
|
||||||
|
env:
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
|
||||||
|
- name: Build shim-v2
|
||||||
|
run: |
|
||||||
|
make "${KATA_ASSET}-tarball"
|
||||||
|
build_dir=$(readlink -f build)
|
||||||
|
# store-artifact does not work with symlink
|
||||||
|
mkdir -p kata-build && cp "${build_dir}"/kata-static-${KATA_ASSET}*.tar.* kata-build/.
|
||||||
|
env:
|
||||||
|
KATA_ASSET: shim-v2
|
||||||
|
TAR_OUTPUT: shim-v2.tar.gz
|
||||||
|
PUSH_TO_REGISTRY: ${{ inputs.push-to-registry }}
|
||||||
|
ARTEFACT_REGISTRY: ghcr.io
|
||||||
|
ARTEFACT_REGISTRY_USERNAME: ${{ github.actor }}
|
||||||
|
ARTEFACT_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
RELEASE: ${{ inputs.stage == 'release' && 'yes' || 'no' }}
|
||||||
|
|
||||||
|
- name: store-artifact shim-v2
|
||||||
|
if: ${{ inputs.stage != 'release' }}
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: kata-artifacts-ppc64le-shim-v2${{ inputs.tarball-suffix }}
|
||||||
|
path: kata-build/kata-static-shim-v2.tar.xz
|
||||||
|
retention-days: 1
|
||||||
|
if-no-files-found: error
|
||||||
|
|
||||||
|
create-kata-tarball:
|
||||||
|
runs-on: ppc64le
|
||||||
|
needs: [build-asset, build-asset-shim-v2]
|
||||||
steps:
|
steps:
|
||||||
- name: Adjust a permission for repo
|
- name: Adjust a permission for repo
|
||||||
run: |
|
run: |
|
||||||
|
@ -42,7 +42,6 @@ jobs:
|
|||||||
- rootfs-image-confidential
|
- rootfs-image-confidential
|
||||||
- rootfs-initrd
|
- rootfs-initrd
|
||||||
- rootfs-initrd-confidential
|
- rootfs-initrd-confidential
|
||||||
- shim-v2
|
|
||||||
- virtiofsd
|
- virtiofsd
|
||||||
env:
|
env:
|
||||||
PERFORM_ATTESTATION: ${{ matrix.asset == 'agent' && inputs.push-to-registry == 'yes' && 'yes' || 'no' }}
|
PERFORM_ATTESTATION: ${{ matrix.asset == 'agent' && inputs.push-to-registry == 'yes' && 'yes' || 'no' }}
|
||||||
@ -163,9 +162,58 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
|
build-asset-shim-v2:
|
||||||
|
runs-on: s390x
|
||||||
|
needs: build-asset
|
||||||
|
steps:
|
||||||
|
- name: Login to Kata Containers quay.io
|
||||||
|
if: ${{ inputs.push-to-registry == 'yes' }}
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: quay.io
|
||||||
|
username: ${{ secrets.QUAY_DEPLOYER_USERNAME }}
|
||||||
|
password: ${{ secrets.QUAY_DEPLOYER_PASSWORD }}
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: ${{ inputs.commit-hash }}
|
||||||
|
fetch-depth: 0 # This is needed in order to keep the commit ids history
|
||||||
|
|
||||||
|
- name: Rebase atop of the latest target branch
|
||||||
|
run: |
|
||||||
|
./tests/git-helper.sh "rebase-atop-of-the-latest-target-branch"
|
||||||
|
env:
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
|
||||||
|
- name: Build shim-v2
|
||||||
|
id: build
|
||||||
|
run: |
|
||||||
|
make "${KATA_ASSET}-tarball"
|
||||||
|
build_dir=$(readlink -f build)
|
||||||
|
# store-artifact does not work with symlink
|
||||||
|
mkdir -p kata-build && cp "${build_dir}"/kata-static-${KATA_ASSET}*.tar.* kata-build/.
|
||||||
|
env:
|
||||||
|
KATA_ASSET: shim-v2
|
||||||
|
TAR_OUTPUT: shim-v2.tar.gz
|
||||||
|
PUSH_TO_REGISTRY: ${{ inputs.push-to-registry }}
|
||||||
|
ARTEFACT_REGISTRY: ghcr.io
|
||||||
|
ARTEFACT_REGISTRY_USERNAME: ${{ github.actor }}
|
||||||
|
ARTEFACT_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
TARGET_BRANCH: ${{ inputs.target-branch }}
|
||||||
|
RELEASE: ${{ inputs.stage == 'release' && 'yes' || 'no' }}
|
||||||
|
|
||||||
|
- name: store-artifact shim-v2
|
||||||
|
if: ${{ inputs.stage != 'release' }}
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: kata-artifacts-s390x-shim-v2${{ inputs.tarball-suffix }}
|
||||||
|
path: kata-build/kata-static-shim-v2.tar.xz
|
||||||
|
retention-days: 15
|
||||||
|
if-no-files-found: error
|
||||||
|
|
||||||
create-kata-tarball:
|
create-kata-tarball:
|
||||||
runs-on: s390x
|
runs-on: s390x
|
||||||
needs: [build-asset, build-asset-boot-image-se]
|
needs: [build-asset, build-asset-boot-image-se, build-asset-shim-v2]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
|
Loading…
Reference in New Issue
Block a user