about summary refs log tree commit diff
path: root/users/wpcarro/nixos
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2021-12-30T19·25-0400
committerclbot <clbot@tvl.fyi>2022-01-08T05·31+0000
commit6500fb551f5c5bf7b5c784fa6aaf45da12b43bc1 (patch)
tree1258d395cf583e1c203dbd14ba53696d708f9c26 /users/wpcarro/nixos
parentd24eef0735dfcec37c516cb4a138172aba2a7497 (diff)
feat(wpcarro): Define deploy-diogenes helper r/3535
TL;DR:
- Mimmick depot's bin -> __dispatch.sh for personal utils
- Define deploy-diogenes to more tighten my feedback loop

Change-Id: I2b12a1c32a955574f5be5d4f38025bd97e9c7b77
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4751
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Diffstat (limited to 'users/wpcarro/nixos')
-rw-r--r--users/wpcarro/nixos/default.nix16
1 files changed, 15 insertions, 1 deletions
diff --git a/users/wpcarro/nixos/default.nix b/users/wpcarro/nixos/default.nix
index b1a878c95a07..e7ae5490b9b6 100644
--- a/users/wpcarro/nixos/default.nix
+++ b/users/wpcarro/nixos/default.nix
@@ -1,8 +1,22 @@
-{ depot, ... }:
+{ depot, pkgs, ... }:
 
 let systemFor = sys: (depot.ops.nixos.nixosFor sys).system;
 in {
   marcusSystem = systemFor depot.users.wpcarro.nixos.marcus;
+  deploy-diogenes = pkgs.writeShellScriptBin "deploy-diogenes" ''
+    set -euo pipefail
+    readonly TF_STATE_DIR=/depot/users/wpcarro/terraform
+    rm -f $TF_STATE_DIR/*.json
+    readonly STORE_PATH="$(nix-build /depot -A users.wpcarro.nixos.diogenes)"
+    cp $STORE_PATH $TF_STATE_DIR
+
+    function cleanup() {
+      rm -f "$TF_STATE_DIR/$(basename $STORE_PATH)"
+    }
+
+    trap cleanup EXIT
+    ${pkgs.terraform}/bin/terraform -chdir="$TF_STATE_DIR" apply
+  '';
 
   meta.targets = [ "marcusSystem" ];
 }