X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=nixops%2Fscripts%2Fnixops_wrap;h=20949246349d3828229d18dfb51e8eb4194ea891;hb=431759ea54b401d9f2eb74af5a9302691996b069;hp=24b838181e22f1c2d5e27d81fad7f02508f61e63;hpb=568d4240fa2d4b1f29cc1dd6d943a2da941ef46e;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/nixops/scripts/nixops_wrap b/nixops/scripts/nixops_wrap index 24b8381..2094924 100755 --- a/nixops/scripts/nixops_wrap +++ b/nixops/scripts/nixops_wrap @@ -6,12 +6,12 @@ if [ -z "$NIXOPS_CONFIG_PASS_SUBTREE_PATH" ]; then exit 1; fi -TEMP=$(mktemp /tmp/XXXXXX-environment.nix) +TEMP=$(mktemp -d /tmp/XXXXXX-nixops-files) chmod go-rwx $TEMP finish() { - rm -f "$TEMP" - nixops set-args --unset environment + rm -rf "$TEMP" + nixops set-args --unset privateFiles } trap finish EXIT @@ -20,8 +20,14 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops" export NIXOPS_DEPLOYMENT="$DeploymentUuid" -pass show "$NIXOPS_CONFIG_PASS_SUBTREE_PATH/NixConfig" >> $TEMP -nixops set-args --argstr environment "$TEMP" +# pass cannot "just" list files in a directory without showing a tree :( +files=$(pass ls $NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/files | sed -e '1d' -e 's/^.* //') -export NIX_PATH="ssh-config-file=$(dirname $DIR)/ssh/config:nixpkgs=$HOME/.nix-defexpr/channels/immaeNixpkgs" +for file in $files; do + pass show "$NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/files/$file" > $TEMP/$file +done +nixops set-args --argstr privateFiles "$TEMP" + +source $(dirname $(dirname $DIR))/nix_path_env +export NIX_PATH="ssh-config-file=$(dirname $DIR)/ssh/config:$NIX_PATH" nixops "$@"