57 lines
1.4 KiB
YAML
57 lines
1.4 KiB
YAML
name: CI
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
|
|
jobs:
|
|
build-nix:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2.4.0
|
|
|
|
- name: Install Nix
|
|
uses: cachix/install-nix-action@v15
|
|
with:
|
|
install_url: https://nixos-nix-install-tests.cachix.org/serve/i6laym9jw3wg9mw6ncyrk6gjx4l34vvx/install
|
|
install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve'
|
|
extra_nix_config: |
|
|
experimental-features = nix-command flakes
|
|
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Build with cachix
|
|
uses: cachix/cachix-action@v10
|
|
with:
|
|
name: hakyll-nix-template
|
|
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
|
|
|
|
- run: nix build
|
|
|
|
- name: Artifact pages
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: pages
|
|
path: result/dist
|
|
|
|
deploy:
|
|
if: github.ref == 'refs/heads/main'
|
|
runs-on: ubuntu-latest
|
|
needs: [build-nix]
|
|
|
|
steps:
|
|
- name: Download artifact
|
|
uses: actions/download-artifact@v2
|
|
with:
|
|
name: pages
|
|
path: result
|
|
|
|
- name: GitHub Pages
|
|
if: success()
|
|
uses: crazy-max/ghaction-github-pages@v2.5.0
|
|
with:
|
|
build_dir: result
|
|
target_branch: gh-pages
|
|
keep_history: false
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|