This repository has been archived by the owner on Feb 4, 2024. It is now read-only.
ci: Test build on Linux 6.6 #67
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: Continuous Integration | |
on: | |
push: | |
branches: [ patch-linux4.7 ] | |
pull_request: | |
branches: [ patch-linux4.7 ] | |
permissions: {} | |
jobs: | |
build: | |
name: Build Kernel Module | |
# Linux runners do not currently support nested virtualization (KVM) | |
runs-on: macos-12 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- kernel: '5.19' | |
os: f37 | |
- kernel: '6.0' | |
os: f37 | |
- kernel: '6.1' | |
os: f37 | |
- kernel: '6.2' | |
os: f38 | |
- kernel: '6.3' | |
os: f38 | |
- kernel: '6.4' | |
os: f38 | |
- kernel: '6.5' | |
os: f38 | |
- kernel: '6.6' | |
os: f40 | |
steps: | |
- name: Get QEMU image info | |
id: image | |
# The outputs of this step are solely used for generating a cache key. | |
# The fedora-qemu-img-info Action is also used from within the | |
# kernel-devel-vm Action to generate the Lima instance config. It is | |
# expected, but not guaranteed, that both invocations will return the | |
# same image checksum. For instance, not all mirrors synchronize at the | |
# same frequency, so different image versions may be found in different | |
# mirrors for a given OS version, especially shortly after a new release | |
# occurs upstream. | |
uses: antoineco/fedora-qemu-img-info-action@v1 | |
with: | |
os: ${{ matrix.os }} | |
- name: Lima image cache | |
uses: actions/cache@v3 | |
with: | |
path: ~/Library/Caches/lima/download | |
key: ${{ github.job }}-${{ runner.os }}-lima-${{ matrix.os }}-${{ steps.image.outputs.sha256sum }} | |
- uses: actions/checkout@v3 | |
- name: Bootstrap Lima instance | |
id: builder | |
uses: antoineco/kernel-devel-vm-action@v1 | |
with: | |
kernel: ${{ matrix.kernel }} | |
os: ${{ matrix.os }} | |
- name: Build wl module | |
run: | | |
lima make | |
lima make clean | |
- name: Collect cloud-init logs from Lima instance | |
if: failure() && steps.builder.outcome != 'skipped' && env.LIMA_INSTANCE | |
run: mv -v ${{ steps.builder.outputs.logs }}/cloud-*.log ~/.lima/${{ env.LIMA_INSTANCE }}/ | |
- name: Upload Lima instance logs | |
if: failure() && steps.builder.outcome != 'skipped' && env.LIMA_INSTANCE | |
uses: actions/upload-artifact@v3 | |
with: | |
name: lima-logs-${{ matrix.kernel }} | |
path: ~/.lima/${{ env.LIMA_INSTANCE }}/*.log |