fix(scripts): Refactor cache uploading
Some checks failed
Check meta / check_dns (pull_request) Successful in 18s
Check meta / check_meta (pull_request) Successful in 18s
Check workflows / check_workflows (push) Successful in 22s
Run pre-commit on all files / pre-commit (push) Successful in 35s
Check workflows / check_workflows (pull_request) Successful in 28s
Build all the nodes / ap01 (pull_request) Successful in 1m4s
Build all the nodes / bridge01 (pull_request) Successful in 1m41s
Build all the nodes / geo01 (pull_request) Successful in 1m40s
Build all the nodes / compute01 (pull_request) Successful in 2m17s
Build all the nodes / geo02 (pull_request) Successful in 1m37s
Build all the nodes / netcore02 (pull_request) Successful in 33s
Build all the nodes / hypervisor01 (pull_request) Successful in 1m40s
Build all the nodes / hypervisor02 (pull_request) Successful in 1m32s
Build all the nodes / hypervisor03 (pull_request) Successful in 1m41s
Build all the nodes / rescue01 (pull_request) Successful in 1m50s
Build all the nodes / storage01 (pull_request) Successful in 1m49s
Build all the nodes / vault01 (pull_request) Successful in 1m47s
Build the shell / build-shell (pull_request) Failing after 25s
Build all the nodes / web01 (pull_request) Successful in 2m8s
Run pre-commit on all files / pre-commit (pull_request) Successful in 37s
Build all the nodes / web02 (pull_request) Successful in 1m30s
Build all the nodes / web03 (pull_request) Successful in 1m35s

This commit is contained in:
sinavir 2024-12-21 14:01:10 +01:00
parent 2132ef08d9
commit 50587f33bc
No known key found for this signature in database
6 changed files with 26 additions and 34 deletions

View file

@ -8,7 +8,7 @@ jobs:
STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }}
STORE_USER: admin
name: Build and cache shell
run: nix-shell -A eval-shell --run "nix-cache -A devShell"
run: nix-shell -A eval-shell --run "nix-instantiate-and-cache -A devShell"
name: Build the shell
on:
pull_request:

View file

@ -35,23 +35,4 @@ esac
drv=$(colmena eval --instantiate -E "{ nodes, ... }: nodes.${BUILD_NODE}.${toplevel_path}" --show-trace)
# Build the derivation and send it to the great beyond
nix-store --query --requisites --force-realise --include-outputs "$drv" | grep -v '.*\.drv' >paths.txt
if [ "$STORE_PASSWORD" == "" ]; then
echo "No password given for the remote cache, uploading cannot take place."
exit 0
fi
cat <<EOF >.netrc
default
login $STORE_USER
password $STORE_PASSWORD
EOF
nix copy \
--extra-experimental-features nix-command \
--to "$STORE_ENDPOINT?compression=none" \
--netrc-file .netrc \
"$(nix-store --realise "$drv")"
rm .netrc
nix-cache "$drv"

View file

@ -20,8 +20,12 @@ let
;
scripts = {
cache-node = [ colmena ];
nix-cache = [ colmena ];
cache-node = [
colmena
self.nix-cache
];
nix-cache = [ ];
nix-instantiate-and-cache = [ self.nix-cache ];
check-deployment = [
colmena
jq
@ -30,13 +34,14 @@ let
launch-vm = [ colmena ];
list-nodes = [ jq ];
};
self = mapAttrs (
name: runtimeInputs:
writeShellApplication {
inherit name runtimeInputs;
text = builtins.readFile ./${name}.sh;
}
) scripts;
in
mapAttrs (
name: runtimeInputs:
writeShellApplication {
inherit name runtimeInputs;
text = builtins.readFile ./${name}.sh;
}
) scripts
self

View file

@ -6,7 +6,8 @@
# Build the derivation and send it to the great beyond
drv=$(nix-instantiate "$@")
drv=$1
nix-store --query --requisites --force-realise --include-outputs "$drv" | grep -v '.*\.drv' > paths.txt
if [ "$STORE_PASSWORD" == "" ]; then

View file

@ -0,0 +1,5 @@
# SPDX-FileCopyrightText: 2024 Maurice Debray <maurice@dgnum.eu>
#
# SPDX-License-Identifier: EUPL-1.2
nix-cache "$(nix-instantiate "$@")"

View file

@ -16,7 +16,7 @@
{ uses = "actions/checkout@v3"; }
{
name = "Build and cache shell";
run = "nix-shell -A eval-shell --run \"nix-cache -A devShell\"";
run = "nix-shell -A eval-shell --run \"nix-instantiate-and-cache -A devShell\"";
env = {
STORE_ENDPOINT = "https://tvix-store.dgnum.eu/infra-signing/";
STORE_USER = "admin";