CI / build-and-test (push) Failing after 39s
actions/checkout requires Node.js, which isn't in archlinux:latest. Manual git clone + checkout FETCH_HEAD instead. Adds git to pacman.
40 lines
877 B
YAML
40 lines
877 B
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
|
|
jobs:
|
|
build-and-test:
|
|
runs-on: ubuntu-latest
|
|
container: archlinux:latest
|
|
steps:
|
|
- name: Install dependencies
|
|
run: |
|
|
pacman -Syu --noconfirm
|
|
pacman -S --noconfirm clang cmake ninja git
|
|
|
|
- name: Checkout
|
|
run: |
|
|
git clone --depth 1 "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY" .
|
|
git fetch origin "$GITHUB_REF"
|
|
git checkout FETCH_HEAD
|
|
|
|
- name: Build kappa
|
|
run: |
|
|
cmake -B build -G Ninja \
|
|
-DCMAKE_C_COMPILER=clang \
|
|
-DCMAKE_CXX_COMPILER=clang++
|
|
cmake --build build
|
|
|
|
- name: DSL and CLI tests
|
|
run: ./test.sh
|
|
|
|
- name: Init-switching tests
|
|
run: ./test-init-switch.sh
|
|
|
|
- name: Comprehensive tests
|
|
run: ./test-full.sh
|