summon: init at 0.8.2

Quentin eace830a 1811fea9

+76
+35
pkgs/development/tools/summon/default.nix
··· 1 + { stdenv, buildGoModule, fetchFromGitHub, lib, patchResolver ? true }: 2 + 3 + with stdenv.lib; 4 + 5 + buildGoModule rec { 6 + pname = "summon"; 7 + version = "0.8.2"; 8 + 9 + src = fetchFromGitHub { 10 + owner = "cyberark"; 11 + repo = "summon"; 12 + rev = "v${version}"; 13 + sha256 = "1z4xnrncwvp3rfm97zvc0ivvw2fh1hrjhj3rplvidzxjfyasbvwv"; 14 + }; 15 + 16 + vendorSha256 = "1597vrs4b7k6gkmkvf7xnd38rvjixmlcz0j7npmik9nbkm57l74m"; 17 + 18 + subPackages = [ "cmd" ]; 19 + 20 + # Patches provider resolver to support resolving unqualified names 21 + # from $PATH, e.g. `summon -p gopass` instead of `summon -p $(which gopass)` 22 + patches = optional patchResolver [ ./resolve-paths.patch ]; 23 + 24 + postInstall = '' 25 + mv $out/bin/cmd $out/bin/summon 26 + ''; 27 + 28 + meta = with lib; { 29 + description = 30 + "CLI that provides on-demand secrets access for common DevOps tools"; 31 + homepage = "https://cyberark.github.io/summon"; 32 + license = lib.licenses.mit; 33 + maintainers = with maintainers; [ quentini ]; 34 + }; 35 + }
+39
pkgs/development/tools/summon/resolve-paths.patch
··· 1 + From dd34727ebfbd59738084eeb7c2a020e40a4d0abe Mon Sep 17 00:00:00 2001 2 + From: Quentin <Quentin Inkling> 3 + Date: Mon, 29 Jun 2020 17:35:04 +0300 4 + Subject: [PATCH] Patch for 5 + 6 + --- 7 + provider/provider.go | 15 +++++++++++++++ 8 + 1 file changed, 15 insertions(+) 9 + 10 + diff --git a/provider/provider.go b/provider/provider.go 11 + index c1e28d9..f20fdaa 100644 12 + --- a/provider/provider.go 13 + +++ b/provider/provider.go 14 + @@ -78,7 +78,22 @@ func expandPath(provider string) string { 15 + if path.Base(provider) != provider { 16 + return provider 17 + } 18 + + 19 + + var ( 20 + + stdOut bytes.Buffer 21 + + stdErr bytes.Buffer 22 + + ) 23 + + cmd := exec.Command("which", provider) 24 + + cmd.Stdout = &stdOut 25 + + cmd.Stderr = &stdErr 26 + + err := cmd.Run() 27 + + 28 + + if err == nil { 29 + + return strings.TrimSpace(stdOut.String()) 30 + + } 31 + + 32 + return path.Join(DefaultPath, provider) 33 + + 34 + } 35 + 36 + func getDefaultPath() string { 37 + -- 38 + 2.27.0 39 +
+2
pkgs/top-level/all-packages.nix
··· 11090 11090 11091 11091 strace = callPackage ../development/tools/misc/strace { }; 11092 11092 11093 + summon = callPackage ../development/tools/summon { }; 11094 + 11093 11095 swarm = callPackage ../development/tools/analysis/swarm { }; 11094 11096 11095 11097 swiftformat = callPackage ../development/tools/swiftformat { };