From 78e25e2ac542eceb33aa0d292397d5236dbb9df8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Isma=C3=ABl=20Bouya?= Date: Thu, 25 Apr 2019 01:34:35 +0200 Subject: [PATCH] Fix nixops: allow keyFile to be a string in deployments --- default.nix | 6 +++++- nixops/scripts/nixops_wrap | 10 ++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/default.nix b/default.nix index 579dfae..51ebcc2 100644 --- a/default.nix +++ b/default.nix @@ -616,6 +616,11 @@ let ''; }); + mypkgs.nixops = nixops.overrideAttrs (old: { + preConfigure = (old.preConfigure or "") + '' + sed -i -e "/'keyFile'/s/'path'/'string'/" nixops/backends/__init__.py + ''; + }); mypkgs.flrn = let slang = stdenv.mkDerivation rec { name = "slang-debian-patched-${version}"; @@ -691,7 +696,6 @@ in inherit keybase; inherit bogofilter; inherit mtr; - inherit nixops; inherit urlview; inherit rr; inherit nix-zsh-completions; diff --git a/nixops/scripts/nixops_wrap b/nixops/scripts/nixops_wrap index 3a894f9..e4f5dc5 100755 --- a/nixops/scripts/nixops_wrap +++ b/nixops/scripts/nixops_wrap @@ -9,14 +9,16 @@ fi TEMP=$(mktemp -d /tmp/XXXXXX-nixops-files) chmod go-rwx $TEMP +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +nixops="$(nix-build --no-out-link -A nixops "$(dirname $(dirname $DIR))")/bin/nixops" + finish() { rm -rf "$TEMP" - nixops set-args --unset privateFiles + $nixops set-args --unset privateFiles } trap finish EXIT -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops" export NIXOPS_DEPLOYMENT="$DeploymentUuid" @@ -26,9 +28,9 @@ files=$(pass ls $NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/files | sed -e '1d' -e ' for file in $files; do pass show "$NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/files/$file" > $TEMP/$file done -nixops set-args --argstr privateFiles "$TEMP" +$nixops set-args --argstr privateFiles "$TEMP" source $(dirname $(dirname $DIR))/nix_path_env # __noChroot: ssh-config-file requires relaxed export NIX_PATH="ssh-config-file=$(dirname $DIR)/ssh/config:$NIX_PATH" -nixops "$@" +$nixops "$@" -- 2.41.0