name: Check flake on: push: branches: [main] path: - ./**.nix - ./flake.lock pull_request: jobs: check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: DeterminateSystems/nix-installer-action@v13 with: source-url: "https://install.lix.systems/lix/lix-installer-x86_64-linux" - uses: DeterminateSystems/magic-nix-cache-action@v7 - name: Run `nix flake check` run: | nix flake check --verbose --keep-going nix run nixpkgs#statix -- check . build-docs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: DeterminateSystems/magic-nix-cache-action@v7 - uses: DeterminateSystems/nix-installer-action@v13 with: source-url: "https://install.lix.systems/lix/lix-installer-x86_64-linux" - name: Build documentation run: nix build .#docs --print-build-logs - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: path: ./result deploy-docs: runs-on: ubuntu-latest needs: build-docs if: ${{ github.event_name == 'push' }} # only run on main branch permissions: pages: write id-token: write environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4