atrip/.github/workflows/main.yml

76 lines
1.6 KiB
YAML

name: CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.4
- name: Install Nix
uses: cachix/install-nix-action@v13
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Tangle
run: nix-shell --run 'make tangle'
## TODO: do this in a matrix
- name: gcc → Build external dependencies
run: nix-shell --run 'make extern CONFIG=gcc'
- name: gcc → Build lib
run: nix-shell --run 'make lib CONFIG=gcc'
- name: gcc → Build bench
run: nix-shell --run 'make bench CONFIG=gcc'
- name: clang → Build external dependencies
run: nix-shell --arg with-clang true --run 'make extern CONFIG=clang'
- name: clang → Build lib
run: nix-shell --arg with-clang true --run 'make lib CONFIG=clang'
- name: clang → Build bench
run: nix-shell --arg with-clang true --run 'make bench CONFIG=clang'
documentation:
runs-on: ubuntu-latest
steps:
- name: create doc
run: |
mkdir -p doc
cd doc
nix-shell --run 'make all'
echo hello world > index.html
- name: create atrip.html
run: |
nix-shell --run 'make html'
mv atrip.html doc/
- name: create doxygen
run: |
nix-shell --run 'make -C ./doc all'
cd doc
- name: Deploy
uses: JamesIves/github-pages-deploy-action@4.1.0
with:
branch: gh-pages
folder: ./doc
#- name: Upload dist
#uses: actions/upload-artifacts@v1
#with:
#name: lib
#path: ./lib