diff options
Diffstat (limited to 'pkgs/tools/admin/exoscale-cli')
-rw-r--r-- | pkgs/tools/admin/exoscale-cli/default.nix | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/tools/admin/exoscale-cli/default.nix b/pkgs/tools/admin/exoscale-cli/default.nix new file mode 100644 index 00000000000..f1a420b0c10 --- /dev/null +++ b/pkgs/tools/admin/exoscale-cli/default.nix @@ -0,0 +1,33 @@ +{ lib, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + pname = "exoscale-cli"; + version = "1.52.0"; + + src = fetchFromGitHub { + owner = "exoscale"; + repo = "cli"; + rev = "v${version}"; + sha256 = "sha256-uaJt1QS4nDVliIFo11OhQYvOxJMeda0QGuaGZCPRoWk="; + }; + + goPackagePath = "github.com/exoscale/cli"; + + ldflags = [ "-s" "-w" "-X main.version=${version}" "-X main.commit=${src.rev}" ]; + + # ensures only the cli binary is built and we don't clutter bin/ with submodules + subPackages = [ "." ]; + + # we need to rename the resulting binary but can't use buildFlags with -o here + # because these are passed to "go install" which does not recognize -o + postBuild = '' + mv go/bin/cli go/bin/exo + ''; + + meta = { + description = "Command-line tool for everything at Exoscale: compute, storage, dns"; + homepage = "https://github.com/exoscale/cli"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ dramaturg ]; + }; +} |