Enable subset of image builds in PRs

Signed-off-by: Evan Lezar <elezar@nvidia.com>
This commit is contained in:
Evan Lezar 2024-02-02 09:12:42 +01:00
parent 2f3600af9a
commit da68ad393c

View File

@ -16,6 +16,13 @@
name: image name: image
on: on:
pull_request:
types:
- opened
- synchronize
branches:
- main
- release-*
push: push:
branches: branches:
- main - main
@ -26,13 +33,24 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
matrix: matrix:
package: target:
- ubuntu18.04-arm64 - ubuntu18.04-arm64
- ubuntu18.04-amd64 - ubuntu18.04-amd64
- ubuntu18.04-ppc64le - ubuntu18.04-ppc64le
- centos7-aarch64 - centos7-aarch64
- centos7-x86_64 - centos7-x86_64
- centos8-ppc64le - centos8-ppc64le
ispr:
- ${{github.event_name == 'pull_request'}}
exclude:
- ispr: true
target: ubuntu18.04-arm64
- ispr: true
target: ubuntu18.04-ppc64le
- ispr: true
target: centos7-aarch64
- ispr: true
target: centos8-ppc64le
fail-fast: false fail-fast: false
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -41,23 +59,34 @@ jobs:
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v3
- name: build ${{ matrix.package }} packages - name: build ${{ matrix.target }} packages
run: | run: |
sudo apt-get install -y coreutils build-essential sed git bash make sudo apt-get install -y coreutils build-essential sed git bash make
echo "Building packages" echo "Building packages"
./scripts/build-packages.sh ${{ matrix.package }} ./scripts/build-packages.sh ${{ matrix.target }}
- name: 'Upload Artifacts' - name: 'Upload Artifacts'
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
compression-level: 0 compression-level: 0
name: toolkit-container-${{ matrix.package }}-${{ github.run_id }} name: toolkit-container-${{ matrix.target }}-${{ github.run_id }}
path: ${{ github.workspace }}/dist/* path: ${{ github.workspace }}/dist/*
image: image:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
matrix: matrix:
image: [ubuntu20.04, centos7, ubi8, packaging] dist:
- ubuntu20.04
- centos7
- ubi8
- packaging
ispr:
- ${{github.event_name == 'pull_request'}}
exclude:
- ispr: true
dist: ubi8
- ispr: true
dist: centos7
needs: packages needs: packages
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -70,7 +99,7 @@ jobs:
REPO_FULL_NAME="${{ github.event.pull_request.head.repo.full_name }}" REPO_FULL_NAME="${{ github.event.pull_request.head.repo.full_name }}"
echo "${REPO_FULL_NAME}" echo "${REPO_FULL_NAME}"
echo "LABEL_IMAGE_SOURCE=https://github.com/${REPO_FULL_NAME}" >> $GITHUB_ENV echo "LABEL_IMAGE_SOURCE=https://github.com/${REPO_FULL_NAME}" >> $GITHUB_ENV
GENERATE_ARTIFACTS="false" GENERATE_ARTIFACTS="false"
if [[ "${{ github.actor }}" == "dependabot[bot]" ]]; then if [[ "${{ github.actor }}" == "dependabot[bot]" ]]; then
GENERATE_ARTIFACTS="false" GENERATE_ARTIFACTS="false"
@ -90,7 +119,7 @@ jobs:
uses: actions/download-artifact@v4 uses: actions/download-artifact@v4
with: with:
path: ${{ github.workspace }}/dist/ path: ${{ github.workspace }}/dist/
pattern: toolkit-container-* pattern: toolkit-container-*-${{ github.run_id }}
merge-multiple: true merge-multiple: true
- name: Login to GitHub Container Registry - name: Login to GitHub Container Registry
@ -105,4 +134,4 @@ jobs:
VERSION: ${COMMIT_SHORT_SHA} VERSION: ${COMMIT_SHORT_SHA}
run: | run: |
echo "${VERSION}" echo "${VERSION}"
make -f build/container/Makefile build-${{ matrix.image }} make -f build/container/Makefile build-${{ matrix.dist }}