-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gha: limit nixos builds to master and manual
Running these on every PR or every push to a PR quickly gets us ratelimited by github. Its unclear if theres a way around this cache ratelimit: https://github.com/DeterminateSystems/magic-nix-cache-action?tab=readme-ov-file#usage-notes Moving this to only running on `master` and manually should do the trick for now. If it persists we might have to move it to a scheduled job like openwrt builds.
- Loading branch information
1 parent
1d68dd5
commit 5e01386
Showing
2 changed files
with
40 additions
and
30 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
name: ci-nixos | ||
on: | ||
push: # This is only run when PRs are merged into master | ||
branches: | ||
- master | ||
workflow_dispatch: | ||
# These jobs can take a long time and potentially cause use to bump up against CI | ||
# rate limits, there for we've opted to run these only on merges to master. We might | ||
# have to limit these further if the rate limiting remains | ||
jobs: | ||
nixos_configs_get: | ||
name: nixos configurations get name | ||
runs-on: ubuntu-latest | ||
outputs: | ||
nixosconfignames: ${{ steps.nixosconfigsget.outputs.nixosconfignames }} | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: DeterminateSystems/nix-installer-action@main | ||
- uses: DeterminateSystems/magic-nix-cache-action@main | ||
- name: Get all NixOS configurations | ||
id: nixosconfigsget | ||
run: | | ||
nixosconfignames=$(nix eval .\#nixosConfigurations --apply builtins.attrNames --json) | ||
echo "$nixosconfignames" | ||
echo "nixosconfignames=$nixosconfignames" >> $GITHUB_OUTPUT | ||
nixos_configs_build: | ||
name: build ${{ matrix.configName }} nixos configuration | ||
needs: nixos_configs_get | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
configName: ${{ fromJSON(needs.nixos_configs_get.outputs.nixosconfignames) }} | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: DeterminateSystems/nix-installer-action@main | ||
- uses: DeterminateSystems/magic-nix-cache-action@main | ||
- name: Build ${{ matrix.configName }} nixos configuration | ||
run: | | ||
nix build -L .#nixosConfigurations.${{ matrix.configName }}.config.system.build.toplevel |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters