about summary refs log tree commit diff
path: root/users/wpcarro/bin/__dispatch.sh
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/bin/__dispatch.sh
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/bin/__dispatch.sh')
-rwxr-xr-xusers/wpcarro/bin/__dispatch.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/users/wpcarro/bin/__dispatch.sh b/users/wpcarro/bin/__dispatch.sh
new file mode 100755
index 000000000000..b7671562eb2d
--- /dev/null
+++ b/users/wpcarro/bin/__dispatch.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+# This script dispatches invocations transparently to programs instantiated from
+# Nix.
+#
+# To add a new tool, insert it into the case statement below by setting `attr`
+# to the key in nixpkgs which represents the program you want to run.
+set -ueo pipefail
+
+TARGET_TOOL=$(basename "$0")
+
+case "${TARGET_TOOL}" in
+  deploy-diogenes)
+    attr="users.wpcarro.nixos.deploy-diogenes"
+    ;;
+  *)
+    echo "The tool '${TARGET_TOOL}' is currently not installed in this repository."
+    exit 1
+    ;;
+esac
+
+result=$(nix-build --no-out-link --attr "${attr}" "${REPO_ROOT}")
+PATH="${result}/bin:$PATH"
+
+exec "${TARGET_TOOL}" "${@}"