name: Build all NixOS Configurations on: push: branches: - '**' schedule: - cron: '40 12 * * *' # not to frequent, GitHub only allows a few pulls per hour jobs: nix build: runs-on: native steps: - uses: actions/checkout@v4 - name: update nix flakes if: ${{ github.event_name == 'schedule' }} run: | cat < .ssh_key ${{ secrets.SSH_KEY }} EOF chmod 600 .ssh_key eval $(ssh-agent) ssh-add .ssh_key nix flake update echo $SSH_AGENT_PID kill $SSH_AGENT_PID rm .ssh_key - name: nix flake archive run: | cat < .id_rsa ${{ secrets.SSH_KEY }} EOF chmod 600 .id_rsa eval $(ssh-agent) ssh-add .id_rsa nix flake archive nix flake check --verbose --log-format raw echo $SSH_AGENT_PID kill $SSH_AGENT_PID rm .id_rsa - name: nix build orbi run: nix build .#nixosConfigurations.orbi.config.system.build.toplevel - name: nix build cream run: nix build .#nixosConfigurations.cream.config.system.build.toplevel - name: nix build cherry run: nix build .#nixosConfigurations.cherry.config.system.build.toplevel - name: nix build chungus run: nix build .#nixosConfigurations.chungus.config.system.build.toplevel - name: push if all fine if: ${{ github.event_name == 'schedule' }} run: | git config --local user.email "action@git.ingolf-wagner.de" git config --local user.name "Forgejo Action" git diff --quiet && \ git diff --staged --quiet || \ (git commit -am "Update Nix flakes" && git push) #name: Build all NixOS Configurations #on: # - push # #schedule: # # - cron: "20 12 * * *" # not to frequent, GitHub only allows a few pulls per hour #jobs: # nix build: # runs-on: native # steps: # - name: checkout repository # uses: actions/checkout@v2 # with: # depth: 0 # - name: update nix flakes # #if: github.event_name == 'schedule' # run: | # cat < .ssh_key # ${{ secrets.SSH_KEY }} # EOF # chmod 600 .ssh_key # eval $(ssh-agent) # ssh-add .ssh_key # nix flake update # # echo $SSH_AGENT_PID # kill $SSH_AGENT_PID # rm .ssh_key # - name: fetch and check # run: | # cat < .ssh_key # ${{ secrets.SSH_KEY }} # EOF # chmod 600 .ssh_key # eval $(ssh-agent) # ssh-add .ssh_key # nix flake archive # nix flake check --verbose --log-format raw # # echo $SSH_AGENT_PID # kill $SSH_AGENT_PID # rm .ssh_key # - name: nix build orbi # run: nix build .#nixosConfigurations.orbi.config.system.build.toplevel # - name: nix build cream # run: nix build .#nixosConfigurations.cream.config.system.build.toplevel # - name: nix build cherry # run: nix build .#nixosConfigurations.cherry.config.system.build.toplevel # - name: nix build chungus # run: nix build .#nixosConfigurations.chungus.config.system.build.toplevel