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: - uses: actions/checkout@v2.3.4 - name: Install Nix uses: cachix/install-nix-action@v13 with: nix_path: nixpkgs=channel:nixos-unstable - 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