This file can be sourced (somehow, depending on the user) while working with //ops/keycloak to get the relevant secrets. Change-Id: Ibb3051c4b019f64824964475451c1c3996db6421 Reviewed-on: https://cl.tvl.fyi/c/depot/+/4708 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi>
		
			
				
	
	
		
			81 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/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
 | |
| 
 | |
| readonly REPO_ROOT=$(dirname "$0")/..
 | |
| TARGET_TOOL=$(basename "$0")
 | |
| 
 | |
| case "${TARGET_TOOL}" in
 | |
|   age)
 | |
|     attr="third_party.nixpkgs.age"
 | |
|     ;;
 | |
|   age-keygen)
 | |
|     attr="third_party.nixpkgs.age"
 | |
|     ;;
 | |
|   depot-build)
 | |
|     attr="tools.depot-build"
 | |
|     ;;
 | |
|   depot-nixpkgs-update)
 | |
|     attr="tools.depot-nixpkgs-update"
 | |
|     ;;
 | |
|   gerrit)
 | |
|     attr="tools.gerrit-cli"
 | |
|     ;;
 | |
|   gerrit-update)
 | |
|     attr="tools.gerrit-update"
 | |
|     ;;
 | |
|   hash-password)
 | |
|     attr="tools.hash-password"
 | |
|     ;;
 | |
|   kontemplate)
 | |
|     attr="ops.kontemplate"
 | |
|     ;;
 | |
|   meson)
 | |
|     attr="third_party.nixpkgs.meson"
 | |
|     ;;
 | |
|   mg)
 | |
|     attr="tools.magrathea"
 | |
|     ;;
 | |
|   ninja)
 | |
|     attr="third_party.nixpkgs.ninja"
 | |
|     ;;
 | |
|   nint)
 | |
|     attr="nix.nint"
 | |
|     ;;
 | |
|   perf-flamegraph)
 | |
|     attr="tools.perf-flamegraph"
 | |
|     ;;
 | |
|   rebuild-system)
 | |
|     attr="ops.nixos.rebuild-system"
 | |
|     ;;
 | |
|   rink)
 | |
|     attr="third_party.nixpkgs.rink"
 | |
|     ;;
 | |
|   stern)
 | |
|     attr="third_party.nixpkgs.stern"
 | |
|     ;;
 | |
|   depotfmt)
 | |
|     attr="tools.depotfmt"
 | |
|     ;;
 | |
|   tf-glesys)
 | |
|     TARGET_TOOL="terraform"
 | |
|     attr="ops.glesys.terraform"
 | |
|     ;;
 | |
|   tf-keycloak)
 | |
|     TARGET_TOOL="terraform"
 | |
|     attr="ops.keycloak.terraform"
 | |
|     ;;
 | |
|   *)
 | |
|     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}" "${@}"
 |