aboutsummaryrefslogtreecommitdiff
path: root/scripts/with_env
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/with_env')
-rwxr-xr-xscripts/with_env27
1 files changed, 27 insertions, 0 deletions
diff --git a/scripts/with_env b/scripts/with_env
new file mode 100755
index 0000000..783d86c
--- /dev/null
+++ b/scripts/with_env
@@ -0,0 +1,27 @@
1#!/usr/bin/env bash
2
3if [ -z "$SOPS_VARS_FILE" ]; then
4 echo "Variable SOPS_VARS_FILE is needed with a path to the sops variables"
5 exit 1;
6fi
7
8umask 0077
9TEMP=$(mktemp -d /tmp/XXXXXX-nixops-files)
10chmod go-rwx $TEMP
11
12finish() {
13 rm -rf "$TEMP"
14}
15
16trap finish EXIT
17
18sops -d $SOPS_VARS_FILE | yq -r .ssl_keys.nix_repository > $TEMP/id_ed25519
19
20cat > $TEMP/ssh_config <<EOF
21Host *
22IdentityFile $TEMP/id_ed25519
23EOF
24export SSH_CONFIG_FILE="$TEMP/ssh_config"
25export SSH_IDENTITY_FILE="$TEMP/id_ed25519"
26
27"$@"