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>
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			654 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			654 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ 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" ];
 | 
						|
}
 |