1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5}:
6
7buildGoModule rec {
8 pname = "fits-cloudctl";
9 version = "0.12.21"; # also update these 3 vars:
10 gitversion = "tags/v0.12.21-0-g0a0d89a"; # git describe --long --all
11 gitsha = "0a0d89a8"; # git rev-parse --short=8 HEAD
12 gittime = "2024-05-15T17:34:46+02:00"; # date --iso-8601=seconds
13
14 src = fetchFromGitHub {
15 owner = "fi-ts";
16 repo = "cloudctl";
17 rev = "v${version}";
18 hash = "sha256-O3wX7IW2puMg0xhOf9BUfxzCMCKHxtPJxOCpc+wY0Ao=";
19 };
20
21 vendorHash = "sha256-YSWO7Y9qtqCWfAMnzSMOWlXezjnggMLV8xF42vgOS7s=";
22
23 ldflags = [
24 "-X github.com/metal-stack/v.Version=${version}"
25 "-X github.com/metal-stack/v.Revision=${gitversion}"
26 "-X github.com/metal-stack/v.GitSHA1=${gitsha}"
27 "-X github.com/metal-stack/v.BuildDate=${gittime}"
28 ];
29
30 meta = with lib; {
31 description = "Command-line client for FI-TS Finance Cloud Native services";
32 homepage = "https://github.com/fi-ts/cloudctl";
33 license = licenses.mit;
34 maintainers = with maintainers; [ j0xaf ];
35 mainProgram = "cloudctl";
36 };
37}