44 lines
1.9 KiB
YAML
44 lines
1.9 KiB
YAML
when:
|
|
- event: push
|
|
branch: main
|
|
|
|
steps:
|
|
- name: build-push
|
|
image: ghcr.io/lix-project/lix:latest
|
|
environment:
|
|
ATTIC_ENDPOINT: https://attic.hailsatan.eu
|
|
ATTIC_CACHE: xyno
|
|
ATTIC_PUSH_TOKEN:
|
|
from_secret: attic_push_token
|
|
commands:
|
|
- |
|
|
export green="$(echo -e '\e[1;32m')"
|
|
export yellow="$(echo -e '\e[1;33m')"
|
|
export reset="$(echo -e '\e[0m')"
|
|
- |
|
|
cat > /etc/nix/nix.conf << EOF
|
|
# default settings in the docker image
|
|
build-users-group = nixbld
|
|
sandbox = false
|
|
|
|
# additional settings
|
|
experimental-features = nix-command flakes
|
|
substituters = https://attic.hailsatan.eu/xyno https://cache.nixos.org/
|
|
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= xyno:l2mXaEYOj2kSjxT1dbP1iVya1bBXmKuO7jRXUZohi8c=
|
|
trusted-substituters =
|
|
EOF
|
|
- nix build ".#nix" --print-build-logs --out-link nix --no-update-lock-file
|
|
- nix profile remove lix
|
|
- ./nix/bin/nix profile install ".#nix" --no-update-lock-file
|
|
- nix profile install ".#nix-fast-build" ".#nix-ci" --no-update-lock-file
|
|
- nix --version
|
|
- export PATH=$PATH:$(nix build --no-link nixpkgs#attic-client --print-out-paths)/bin
|
|
- attic login default $${ATTIC_ENDPOINT} $${ATTIC_PUSH_TOKEN}
|
|
- attic use $${ATTIC_CACHE}
|
|
# - attic watch-store $${ATTIC_CACHE} &
|
|
# - nix build .#nixosConfigurations.ds9.config.system.build.toplevel .#nixosConfigurations.picard.config.system.build.toplevel .#nixosConfigurations.theseus.config.system.build.toplevel
|
|
- nix flake archive --to https://attic.hailsatan.eu/xyno .
|
|
- nix-fast-build --attic-cache xyno --flake .#hydraJobs.systems
|
|
# - attic push $${ATTIC_CACHE} $(nix path-info .#nixosConfigurations.ds9.config.system.build.toplevel .#nixosConfigurations.picard.config.system.build.toplevel .#nixosConfigurations.theseus.config.system.build.toplevel)
|
|
|
|
|