This commit is contained in:
@@ -18,19 +18,16 @@ jobs:
|
||||
- name: Check Flake
|
||||
run: nix flake check --all-systems --print-build-logs --log-format raw --show-trace
|
||||
|
||||
- name: Debug
|
||||
env:
|
||||
ATTIC_ENDPOINT_VAR: ${{ vars.ATTIC_ENDPOINT }}
|
||||
ATTIC_TOKEN_VAR: ${{ secrets.ATTIC_TOKEN }}
|
||||
run: |
|
||||
echo "Endpoint length: ${#ATTIC_ENDPOINT_VAR}"
|
||||
echo "Token length: ${#ATTIC_TOKEN_VAR}"
|
||||
|
||||
- name: Push to cache
|
||||
env:
|
||||
XDG_CONFIG_HOME: ${{ runner.temp }}/.config
|
||||
run: |
|
||||
attic login local "${{ vars.ATTIC_ENDPOINT }}" "${{ secrets.ATTIC_TOKEN }}"
|
||||
nix eval .#nixosConfigurations --apply 'cs: map (n: "${cs.${n}.config.system.build.toplevel}") (builtins.attrNames cs)' --json \
|
||||
| jq -r '.[]' \
|
||||
| xargs attic push nixos
|
||||
# Get all system toplevel store paths
|
||||
toplevels=$(nix eval .#nixosConfigurations --apply 'cs: map (n: "${cs.${n}.config.system.build.toplevel}") (builtins.attrNames cs)' --json | jq -r '.[]')
|
||||
# Expand to full closures, deduplicate, and filter out paths already
|
||||
# signed by cache.nixos.org — only our custom builds need caching
|
||||
echo "$toplevels" \
|
||||
| xargs nix path-info -r --json \
|
||||
| jq -r '[.[] | select((.signatures // []) | all(startswith("cache.nixos.org") | not)) | .path] | unique[]' \
|
||||
| xargs attic push local:nixos 1>/dev/null
|
||||
|
||||
Reference in New Issue
Block a user