1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 installShellFiles,
6}:
7
8buildGoModule rec {
9 pname = "eksctl";
10 version = "0.212.0";
11
12 src = fetchFromGitHub {
13 owner = "weaveworks";
14 repo = "eksctl";
15 rev = version;
16 hash = "sha256-XOnRMD4EG0N8A2s4YlXqiukt9y6/YbHdJxGz9MM/iLc=";
17 };
18
19 vendorHash = "sha256-WtrJJZRbH5RuKUJCXDqu9YuEIBflzvmIAWNqbTgcFeo=";
20
21 doCheck = false;
22
23 subPackages = [ "cmd/eksctl" ];
24
25 tags = [
26 "netgo"
27 "release"
28 ];
29
30 ldflags = [
31 "-s"
32 "-w"
33 "-X github.com/weaveworks/eksctl/pkg/version.gitCommit=${src.rev}"
34 "-X github.com/weaveworks/eksctl/pkg/version.buildDate=19700101-00:00:00"
35 ];
36
37 nativeBuildInputs = [ installShellFiles ];
38
39 postInstall = ''
40 installShellCompletion --cmd eksctl \
41 --bash <($out/bin/eksctl completion bash) \
42 --fish <($out/bin/eksctl completion fish) \
43 --zsh <($out/bin/eksctl completion zsh)
44 '';
45
46 meta = {
47 description = "CLI for Amazon EKS";
48 homepage = "https://github.com/weaveworks/eksctl";
49 changelog = "https://github.com/eksctl-io/eksctl/releases/tag/v${version}";
50 license = lib.licenses.asl20;
51 maintainers = with lib.maintainers; [
52 xrelkd
53 Chili-Man
54 ryan4yin
55 ];
56 mainProgram = "eksctl";
57 };
58}