summaryrefslogtreecommitdiff
path: root/.github/workflows/pullrequest.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/pullrequest.yml')
-rw-r--r--.github/workflows/pullrequest.yml186
1 files changed, 162 insertions, 24 deletions
diff --git a/.github/workflows/pullrequest.yml b/.github/workflows/pullrequest.yml
index 2821b2f4..41ca282c 100644
--- a/.github/workflows/pullrequest.yml
+++ b/.github/workflows/pullrequest.yml
@@ -1,15 +1,129 @@
-name: pull-request-builds
+name: pull-request
on:
+ push:
+ branches:
+ - main
pull_request:
branches:
- main
- - sbat
jobs:
- pull-request-intel:
+ cross-build-pull-request:
+ runs-on: ubuntu-20.04
+ container: vathpela/efi-ci:${{ matrix.distro }}-x64
+ name: ${{ matrix.distro }} ${{ matrix.efiarch }} cross-build
+
+ strategy:
+ matrix:
+ include:
+ - arch: amd64
+ efiarch: aa64
+ gccarch: aarch64
+ makearch: aarch64
+ distro: f35
+ - arch: amd64
+ efiarch: aa64
+ gccarch: aarch64
+ makearch: aarch64
+ distro: f34
+ - arch: amd64
+ efiarch: aa64
+ gccarch: aarch64
+ makearch: aarch64
+ distro: f33
+ - arch: amd64
+ efiarch: aa64
+ gccarch: aarch64
+ makearch: aarch64
+ distro: f32
+ - arch: amd64
+ efiarch: arm
+ gccarch: arm
+ makearch: arm
+ distro: f35
+ - arch: amd64
+ efiarch: arm
+ gccarch: arm
+ makearch: arm
+ distro: f34
+ - arch: amd64
+ efiarch: arm
+ gccarch: arm
+ makearch: arm
+ distro: f33
+ - arch: amd64
+ efiarch: arm
+ gccarch: arm
+ makearch: arm
+ distro: f32
+ - arch: amd64
+ efiarch: x64
+ gccarch: x86_64
+ makearch: x86_64
+ distro: f35
+ - arch: amd64
+ efiarch: x64
+ gccarch: x86_64
+ makearch: x86_64
+ distro: f34
+ - arch: amd64
+ efiarch: x64
+ gccarch: x86_64
+ makearch: x86_64
+ distro: f33
+ - arch: amd64
+ efiarch: x64
+ gccarch: x86_64
+ makearch: x86_64
+ distro: f32
+ - arch: amd64
+ efiarch: ia32
+ gccarch: x86_64
+ makearch: ia32
+ distro: f35
+ - arch: amd64
+ efiarch: ia32
+ gccarch: x86_64
+ makearch: ia32
+ distro: f34
+ - arch: amd64
+ efiarch: ia32
+ gccarch: x86_64
+ makearch: ia32
+ distro: f33
+ - arch: amd64
+ efiarch: ia32
+ gccarch: x86_64
+ makearch: ia32
+ distro: f32
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+ with:
+ # otherwise we are testing target branch instead of the PR branch (see pull_request_target trigger)
+ ref: ${{ github.event.pull_request.head.sha }}
+ fetch-depth: 0
+ submodules: recursive
+ - name: Update submodules on ${{ matrix.distro }} for ${{ matrix.efiarch }}
+ id: update-submodules
+ run: |
+ make update
+ - name: Do the build on ${{ matrix.distro }} for ${{ matrix.efiarch }}
+ id: build
+ run: |
+ make -s CROSS_COMPILE=${{ matrix.gccarch }}-linux-gnu- ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true clean all || make CROSS_COMPILE=${{ matrix.gccarch }}-linux-gnu- ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true clean all
+ - name: Install on ${{ matrix.distro }} for ${{ matrix.efiarch }}
+ id: install
+ run: |
+ make -s CROSS_COMPILE=${{ matrix.gccarch }}-linux-gnu- ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true install || make CROSS_COMPILE=${{ matrix.gccarch }}-linux-gnu- ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true install
+ echo 'results:'
+ find /destdir -type f
+
+ build-pull-request-intel:
runs-on: ubuntu-20.04
- container: vathpela/efi-ci:f34-x64
+ container: vathpela/efi-ci:${{ matrix.distro }}-x64
name: ${{ matrix.distro }} ${{ matrix.efiarch }} build
strategy:
@@ -18,33 +132,51 @@ jobs:
- arch: amd64
efiarch: x64
makearch: x86_64
- distro: efi-ci-f34
- libdir: /usr/lib64
+ distro: f35
+ - arch: amd64
+ efiarch: x64
+ makearch: x86_64
+ distro: f34
+ - arch: amd64
+ efiarch: x64
+ makearch: x86_64
+ distro: f33
+ - arch: amd64
+ efiarch: x64
+ makearch: x86_64
+ distro: f32
- arch: amd64
efiarch: x64
makearch: x86_64
- distro: efi-ci-f33
- libdir: /usr/lib64
+ distro: centos8
- arch: amd64
efiarch: x64
makearch: x86_64
- distro: efi-ci-f32
- libdir: /usr/lib64
+ distro: centos7
+ - arch: amd64
+ efiarch: ia32
+ makearch: ia32
+ distro: f35
- arch: amd64
efiarch: ia32
makearch: ia32
- distro: efi-ci-f34
- libdir: /usr/lib
+ distro: f34
- arch: amd64
efiarch: ia32
makearch: ia32
- distro: efi-ci-f33
- libdir: /usr/lib
+ distro: f33
- arch: amd64
efiarch: ia32
makearch: ia32
- distro: efi-ci-f32
- libdir: /usr/lib
+ distro: f32
+ - arch: amd64
+ efiarch: ia32
+ makearch: ia32
+ distro: centos8
+ - arch: amd64
+ efiarch: ia32
+ makearch: ia32
+ distro: centos7
steps:
- name: Checkout
@@ -53,16 +185,22 @@ jobs:
# otherwise we are testing target branch instead of the PR branch (see pull_request_target trigger)
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
+ submodules: recursive
+ - name: Update submodules on ${{ matrix.distro }} for ${{ matrix.efiarch }}
+ id: update-submodules
+ run: |
+ make update
+ - name: Run tests on ${{ matrix.distro }} for ${{ matrix.efiarch }}
+ id: test
+ run: |
+ make -s ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true test || make ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true test
- name: Do the build on ${{ matrix.distro }} for ${{ matrix.efiarch }}
id: build
run: |
- make -s ARCH=${{ matrix.makearch }} PREFIX=/usr LIBDIR=${{ matrix.libdir }} DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true clean all
- make -s ARCH=${{ matrix.makearch }} PREFIX=/usr LIBDIR=${{ matrix.libdir }} DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true install
+ make -s ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true clean all || make ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true clean all
+ - name: Install on ${{ matrix.distro }} for ${{ matrix.efiarch }}
+ id: install
+ run: |
+ make -s ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true install || make ARCH=${{ matrix.makearch }} PREFIX=/usr DESTDIR=/destdir EFIDIR=test ENABLE_SHIM_HASH=true install
echo 'results:'
find /destdir -type f
-# - name: Archive production artifacts
-# uses: actions/upload-artifact@v2
-# with:
-# name: shim
-# path: |
-# /destdir