]> git.immae.eu Git - perso/Immae/Config/Nix.git/commitdiff
Build nixops_custom on the fly
authorIsmaël Bouya <ismael.bouya@normalesup.org>
Fri, 24 May 2019 11:55:43 +0000 (13:55 +0200)
committerIsmaël Bouya <ismael.bouya@normalesup.org>
Fri, 24 May 2019 11:55:43 +0000 (13:55 +0200)
nix_path_env
nixops/custom_nixops.nix [deleted file]
nixops/scripts/nixops_wrap
nixops/scripts/pull_deployment
nixops/scripts/push_deployment
nixops/scripts/setup

index 901cd693d3bf9beb3baa8e16fc07b6ce2b8fbdee..19f7ccaf5ddda3e94db79ae4eda8c08b0f58ebeb 100644 (file)
@@ -9,3 +9,9 @@ fi
 nixpkgsPrevious="$nixpkgs"
 nixpkgsNext="$nixpkgs"
 export NIX_PATH="nixpkgs=$nixpkgs:nixpkgsNext=$nixpkgsNext:nixpkgsPrevious=$nixpkgsPrevious"
+
+nixops_custom () {
+  DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+  d=$(nix-build --no-out-link -E "with import <nixpkgs> { overlays = builtins.attrValues (import $DIR/overlays); }; nixops")
+  ${d}/bin/nixops "$@"
+}
diff --git a/nixops/custom_nixops.nix b/nixops/custom_nixops.nix
deleted file mode 100644 (file)
index f024a4d..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-with import <nixpkgs> { overlays = builtins.attrValues (import ../overlays); };
-nixops
index 9cf33886183f8e8c78c05d4c8366908b8df5d029..e75fa2fac737c1d52f6feba6e05289e3aaa523d7 100755 (executable)
@@ -9,14 +9,13 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops"
 export NIXOPS_DEPLOYMENT="$DeploymentUuid"
 source $(dirname $(dirname $DIR))/nix_path_env
-nixops="$(nix-build --no-out-link "$(dirname $DIR)/custom_nixops.nix")/bin/nixops"
 
 TEMP=$(mktemp -d /tmp/XXXXXX-nixops-files)
 chmod go-rwx $TEMP
 
 finish() {
   rm -rf "$TEMP"
-  $nixops set-args --unset privateFiles
+  nixops_custom set-args --unset privateFiles
 }
 
 trap finish EXIT
@@ -27,6 +26,6 @@ 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_custom set-args --argstr privateFiles "$TEMP"
 
-$nixops "$@"
+nixops_custom "$@"
index 10f71feccc5dfabe12d1e8045af0551b10a75589..ef0f2216e9b42e3502dd08711d5661682c56324e 100755 (executable)
@@ -9,18 +9,17 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops"
 export NIXOPS_DEPLOYMENT="$DeploymentUuid"
 source $(dirname $(dirname $DIR))/nix_path_env
-nixops="$(nix-build --no-out-link "$(dirname $DIR)/custom_nixops.nix")/bin/nixops"
 
 export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops"
 
-if $nixops info -d $DeploymentUuid 2>/dev/null >/dev/null; then
+if nixops_custom info -d $DeploymentUuid 2>/dev/null >/dev/null; then
   cat <<EOF
 This will remove your current deployment file and recreate it!
 Continue? [y/N]
 EOF
   read y
   if [ "$y" = "y" -o "$y" = "Y" ]; then
-    $nixops delete --force -d $DeploymentUuid
+    nixops_custom delete --force -d $DeploymentUuid
   else
     echo "Aborting"
     exit 1
@@ -29,6 +28,6 @@ fi
 
 deployment=$(pass show $NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/Deployment)
 
-echo "$deployment" | $nixops import
+echo "$deployment" | nixops_custom import
 
-$nixops modify -d "$DeploymentUuid" "$(dirname $DIR)/eldiron.nix"
+nixops_custom modify -d "$DeploymentUuid" "$(dirname $DIR)/eldiron.nix"
index 6c67fab805b62d5ed89ef2dea3cd0a6d0222c338..26f8cd217a815904f128311a2547258f0665236e 100755 (executable)
@@ -9,6 +9,5 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops"
 export NIXOPS_DEPLOYMENT="$DeploymentUuid"
 source $(dirname $(dirname $DIR))/nix_path_env
-nixops="$(nix-build --no-out-link "$(dirname $DIR)/custom_nixops.nix")/bin/nixops"
 
-$nixops export | pass insert -m $NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/Deployment
+nixops_custom export | pass insert -m $NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/Deployment
index 58dbf5516bbc9a2656526a3d63af008eded150e6..72b19c073d00207056a2e2b7e5cc782913012b49 100755 (executable)
@@ -95,11 +95,10 @@ fi
 
 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 source $(dirname $(dirname $DIR))/nix_path_env
-nixops="$(nix-build --no-out-link "$(dirname $DIR)/custom_nixops.nix")/bin/nixops"
 export NIXOPS_STATE="$(dirname $DIR)/state/eldiron.nixops"
 export NIXOPS_DEPLOYMENT="$DeploymentUuid"
 
-if ! $nixops info 2>/dev/null >/dev/null; then
+if ! nixops_custom info 2>/dev/null >/dev/null; then
   cat <<-EOF
        Importing deployment file into nixops:
        Continue? [y/N]
@@ -107,9 +106,9 @@ if ! $nixops info 2>/dev/null >/dev/null; then
   read y
   if [ "$y" = "y" -o "$y" = "Y" ]; then
     deployment=$(pass show $NIXOPS_CONFIG_PASS_SUBTREE_PATH/Nixops/Deployment)
-    echo "$deployment" | $nixops import
+    echo "$deployment" | nixops_custom import
 
-    $nixops modify "$(dirname $DIR)/eldiron.nix"
+    nixops_custom modify "$(dirname $DIR)/eldiron.nix"
   else
     echo "Aborting"
     exit 1