1{ lib
2, buildGoModule
3, fetchFromGitHub
4, installShellFiles
5, qovery-cli
6, testers
7}:
8
9buildGoModule rec {
10 pname = "qovery-cli";
11 version = "0.74.3";
12
13 src = fetchFromGitHub {
14 owner = "Qovery";
15 repo = "qovery-cli";
16 rev = "refs/tags/v${version}";
17 hash = "sha256-2FgNH8EVIi4ifkURp2Znh8cPpgsW3m9rJGa7bJr86ZI=";
18 };
19
20 vendorHash = "sha256-ilEG1relXYEFPR++oq35qcvnIcXkP4HRAjqxYr3U3XM=";
21
22 nativeBuildInputs = [
23 installShellFiles
24 ];
25
26 postInstall = ''
27 installShellCompletion --cmd ${pname} \
28 --bash <($out/bin/${pname} completion bash) \
29 --fish <($out/bin/${pname} completion fish) \
30 --zsh <($out/bin/${pname} completion zsh)
31 '';
32
33 passthru.tests.version = testers.testVersion {
34 package = qovery-cli;
35 command = "HOME=$(mktemp -d); ${pname} version";
36 };
37
38 meta = with lib; {
39 description = "Qovery Command Line Interface";
40 homepage = "https://github.com/Qovery/qovery-cli";
41 changelog = "https://github.com/Qovery/qovery-cli/releases/tag/v${version}";
42 license = with licenses; [ asl20 ];
43 maintainers = with maintainers; [ fab ];
44 };
45}