Skip to content

Remove duplicated mkvirtdisk #1140

Remove duplicated mkvirtdisk

Remove duplicated mkvirtdisk #1140

Workflow file for this run

# Copyright 2024, UNSW
#
# SPDX-License-Identifier: BSD-2-Clause
name: CI
on:
pull_request:
push:
branches: [ "main" ]
env:
MICROKIT_VERSION: 2.0.1
MICROKIT_URL: https://github.com/seL4/microkit/releases/download/2.0.1/microkit-sdk-2.0.1
SDFGEN_VERSION: 0.26.0
ZIG_VERSION: 0.15.1
jobs:
build_manual:
name: Build manual
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Nix
uses: cachix/install-nix-action@v31
- name: Create nix-shell and build PDF
run: |
cd docs
nix develop .#docs --ignore-environment -c bash -c 'pandoc MANUAL.md -o MANUAL.pdf'
- name: Upload manual PDF
uses: actions/upload-artifact@v4
with:
name: MANUAL
path: docs/MANUAL.pdf
build_linux_x86_64:
name: Build and run examples (Linux x86-64)
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: 'true'
- name: Download Microkit SDK
run: |
wget ${{ env.MICROKIT_URL }}-linux-x86-64.tar.gz
tar xf microkit-sdk-${{ env.MICROKIT_VERSION }}-linux-x86-64.tar.gz
- name: Install dependencies (via apt)
# 'expect' is only a dependency for CI testing
run: sudo apt update && sudo apt install -y make clang lld llvm qemu-system-arm device-tree-compiler expect gcc-aarch64-linux-gnu
- name: Install Zig
uses: mlugg/setup-zig@v2.0.5
with:
version: ${{ env.ZIG_VERSION }}
- name: Setup pyenv
run: |
python3 -m venv venv
./venv/bin/pip install --upgrade sdfgen==${{ env.SDFGEN_VERSION }}
- name: Build and run examples
run: ./ci/examples.sh ${PWD}/microkit-sdk-${{ env.MICROKIT_VERSION }}
shell: bash
env:
PYTHON: ${{ github.workspace }}/venv/bin/python
build_macos_arm64:
name: Build and run examples (macOS ARM64)
runs-on: macos-14
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: 'true'
- name: Download Microkit SDK
run: |
wget ${{ env.MICROKIT_URL }}-macos-aarch64.tar.gz
tar xf microkit-sdk-${{ env.MICROKIT_VERSION }}-macos-aarch64.tar.gz
- name: Install dependencies (via Homebrew)
# 'expect' is only a dependency for CI testing
run: |
brew install llvm lld qemu dtc make dosfstools expect
echo "/opt/homebrew/opt/llvm/bin:$PATH" >> $GITHUB_PATH
- name: Install Zig
uses: mlugg/setup-zig@v2.0.5
with:
version: ${{ env.ZIG_VERSION }}
- name: Setup pyenv
run: |
python3.13 -m venv venv
./venv/bin/pip install --upgrade sdfgen==${{ env.SDFGEN_VERSION }}
- name: Build and run examples
run: ./ci/examples.sh ${PWD}/microkit-sdk-${{ env.MICROKIT_VERSION }}
shell: bash
env:
PYTHON: ${{ github.workspace }}/venv/bin/python
build_linux_x86_64_nix:
name: Build and run examples (Linux x86-64 via Nix)
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install Nix
uses: cachix/install-nix-action@v25
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Build and run examples
run: nix develop --ignore-environment -c bash -c './ci/examples.sh $MICROKIT_SDK'