This repository has been archived by the owner on Aug 6, 2024. It is now read-only.
Apply crun workaround for github actions #65
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Repo | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
workflow_dispatch: | |
jobs: | |
debian-repo: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
arch: [ amd64, arm64 ] | |
steps: | |
- uses: actions/checkout@v4 | |
# Workaround for https://github.com/actions/runner-images/issues/9425, to be removed once the issue is resolved | |
- name: patch crun (Workaround for https://github.com/actions/runner-images/issues/9425) | |
run: | | |
tmpdir="$(mktemp -d)" | |
pushd "$tmpdir" | |
if [ "${{ matrix.arch }}" = "amd64" ]; then | |
curl -Lo ./crun https://github.com/containers/crun/releases/download/1.14.3/crun-1.14.3-linux-amd64 | |
GOOD_SHA=80c5ab9422d4672f650f2bad3da933568349b64117d055486abc3534517be2af | |
elif [ "${{ matrix.arch }}" = "arm64" ]; then | |
curl -Lo ./crun https://github.com/containers/crun/releases/download/1.14.3/crun-1.14.3-linux-arm64 | |
GOOD_SHA=0486629e1599c3bccded279f6555ff22691958cde56203ceca099af6f2407263 | |
fi | |
sha256sum ./crun | |
OUR_SHA=$(sha256sum ./crun | awk '{ print $1 }') | |
if [[ "$GOOD_SHA" == "$OUR_SHA" ]]; then | |
sudo install crun /usr/bin/crun | |
else | |
echo "Checksums do not match" | |
exit 1 | |
fi | |
popd | |
rm -rf "$tmpdir" | |
shell: bash | |
- name: Show crun version after the patch | |
shell: bash | |
run: | | |
crun --version | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Build the repo | |
run: ./build ostreeRepo-${{ matrix.arch }} | |
working-directory: ./debian | |
- name: Rename build artifact | |
run: mv ostreeRepo-${{ matrix.arch }}-trixie*.ostreeRepo.tar.gz ostree-debian-repo-${{ matrix.arch }}.tar.gz | |
working-directory: ./debian/.build | |
- name: Upload debian ${{ matrix.arch }} repo | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ostree-debian-repo-${{ matrix.arch }} | |
path: debian/.build/ostree-debian-repo-${{ matrix.arch }}.tar.gz | |
retention-days: 2 | |
gardenlinux-repo: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
arch: [ amd64, arm64 ] | |
platform: [ kvm, metal ] | |
steps: | |
- uses: actions/checkout@v4 | |
# Workaround for https://github.com/actions/runner-images/issues/9425, to be removed once the issue is resolved | |
- name: patch crun (Workaround for https://github.com/actions/runner-images/issues/9425) | |
run: | | |
tmpdir="$(mktemp -d)" | |
pushd "$tmpdir" | |
if [ "${{ matrix.arch }}" = "amd64" ]; then | |
curl -Lo ./crun https://github.com/containers/crun/releases/download/1.14.3/crun-1.14.3-linux-amd64 | |
GOOD_SHA=80c5ab9422d4672f650f2bad3da933568349b64117d055486abc3534517be2af | |
elif [ "${{ matrix.arch }}" = "arm64" ]; then | |
curl -Lo ./crun https://github.com/containers/crun/releases/download/1.14.3/crun-1.14.3-linux-arm64 | |
GOOD_SHA=0486629e1599c3bccded279f6555ff22691958cde56203ceca099af6f2407263 | |
fi | |
sha256sum ./crun | |
OUR_SHA=$(sha256sum ./crun | awk '{ print $1 }') | |
if [[ "$GOOD_SHA" == "$OUR_SHA" ]]; then | |
sudo install crun /usr/bin/crun | |
else | |
echo "Checksums do not match" | |
exit 1 | |
fi | |
popd | |
rm -rf "$tmpdir" | |
shell: bash | |
- name: Show crun version after the patch | |
shell: bash | |
run: | | |
crun --version | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Configure Build Variant | |
run: echo ${{ matrix.platform }} > features/ostreeRepo/BUILD_VARIANT | |
working-directory: ./gardenlinux | |
- name: Build the repo | |
run: ./build ${{ matrix.platform }}_dev_curl-ostreeRepo-${{ matrix.arch }} | |
working-directory: ./gardenlinux | |
- name: Rename build artifact | |
run: mv ${{ matrix.platform }}*${{ matrix.arch }}*.ostreeRepo.tar.gz ostree-gardenlinux-repo-${{ matrix.platform }}-${{ matrix.arch }}.tar.gz | |
working-directory: ./gardenlinux/.build | |
- name: Upload gardenlinux ${{ matrix.platform }} ${{ matrix.arch }} repo | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ostree-gardenlinux-repo-${{ matrix.platform }}-${{ matrix.arch }} | |
path: gardenlinux/.build/ostree-gardenlinux-repo-${{ matrix.platform }}-${{ matrix.arch }}.tar.gz | |
retention-days: 2 |