name: "Build ISO"
on:
  push:
    branches:
      - master
    paths:
      - 'flake.nix'
      - 'flake.lock'
      - 'machines/**/autoinstall.nix'
      - 'machines/Flakes-ISO/**'
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Install nix
      uses: cachix/install-nix-action@v21
      with:
        nix_path: 'nixpkgs=channel:nixos-unstable'
        extra_nix_config: |
          access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
          substituters = https://cache.nixos.org https://nix-community.cachix.org https://ataraxiadev-foss.cachix.org https://cache.ataraxiadev.com/ataraxiadev
          trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs= ataraxiadev-foss.cachix.org-1:ws/jmPRUF5R8TkirnV1b525lP9F/uTBsz2KraV61058= ataraxiadev:/V5bNjSzHVGx6r2XA2fjkgUYgqoz9VnrAHq45+2FJAs=
    - name: Build ISO
      run: |
        nix build .#Flakes-ISO
    - name: Push ISO to artifacts
      uses: actions/upload-artifact@v3
      with:
        name: nix-flakes.iso.zip
        path: result/iso/*.iso
        if-no-files-found: error
        retention-days: 30