Skip to content

build(deps): bump actions/checkout from 4 to 5 #77

build(deps): bump actions/checkout from 4 to 5

build(deps): bump actions/checkout from 4 to 5 #77

Workflow file for this run

name: Build
on:
merge_group:
pull_request:
push:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
flake_check:
name: "nix flake check (evaluation, style)"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: cachix/install-nix-action@v31
- uses: DeterminateSystems/magic-nix-cache-action@main
- run: nix flake check
build_regular:
name: "Regular Build + Run Unit Tests"
runs-on: ubuntu-latest
env:
CC: gcc-11
CXX: g++-11
steps:
- uses: actions/checkout@v5
- name: install pre-requisites
run: sudo apt-get update && sudo apt-get install -y catch2 cmake gcc-11 g++-11
- name: Build
run: |
mkdir build_dev
cd build_dev
cmake .. \
-DCMAKE_BUILD_TYPE=Debug \
-DBUILD_TESTING=On
make -j $(nproc)
make -j $(nproc) test
cd -
- name: Build (Release)
run: |
mkdir build_release
cd build_release
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_TESTING=On
make -j $(nproc)
make -j $(nproc) test
cd -
nix_shell:
name: "nix shell works"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: cachix/install-nix-action@v31
- uses: DeterminateSystems/magic-nix-cache-action@main
- run: nix develop . --command bash -c "echo hi"
nix_build_tests_flake:
name: "Nix Flake: Build all Guest Tests"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: cachix/install-nix-action@v31
- uses: DeterminateSystems/magic-nix-cache-action@main
- name: "Test run: hello-world, efi, qemu"
run: nix build .#guest-tests
- name: Verify tests exist in all variants
run: |
test -f result/hello-world.efi
test -f result/hello-world.elf32
test -f result/hello-world.elf64
test -f result/hello-world.iso
# Transitively builds the CMake project in Nix and executes the specified
# local VMM test runs.
nix_mandatory_local_test_runs:
name: "Run hello-world in all variants"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: cachix/install-nix-action@v31
- name: "Test run: hello-world, efi, qemu"
run: |
nix-build -A testRuns.qemu.kvm.efi.hello-world
nix build .#testRun_qemu_kvm_efi_hello-world
- name: "Test run: hello-world, iso-uefi, qemu"
run: |
nix-build -A testRuns.qemu.kvm.iso-uefi.hello-world
nix build .#testRun_qemu_kvm_efi_hello-world
- name: "Test run: hello-world, iso, qemu"
run: |
nix-build -A testRuns.qemu.kvm.iso.hello-world
nix build .#testRun_qemu_kvm_iso_hello-world
- name: "Test run: hello-world, multiboot, qemu"
run: |
nix-build -A testRuns.qemu.kvm.multiboot.hello-world
nix build .#testRun_qemu_kvm_multiboot_hello-world
- name: "Test run: hello-world, xen-pvh, qemu"
run: |
nix-build -A testRuns.chv.kvm.xen-pvh.hello-world
nix build .#testRun_chv_kvm_xen-pvh_hello-world