1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 stdenv,
6 nix-update-script,
7}:
8
9buildGoModule rec {
10 pname = "abctl";
11 version = "0.29.0";
12
13 src = fetchFromGitHub {
14 owner = "airbytehq";
15 repo = "abctl";
16 tag = "v${version}";
17 hash = "sha256-tb0KBATOitgFN49gJVrctxPKjrFY7w6AdBa2AN+scBU=";
18 };
19
20 checkFlags =
21 let
22 skippedTests = [
23 # network access
24 "TestManifestCmd"
25 "TestManifestCmd_Enterprise"
26 "TestManifestCmd_Nightly"
27 # docker
28 "TestValues_BadYaml"
29 "TestInvalidHostFlag_IpAddr"
30 "TestInvalidHostFlag_IpAddrWithPort"
31 "TestNewWithOptions_InitErr"
32 ];
33 in
34 [ "-skip=^${lib.concatStringsSep "$|^" skippedTests}$" ];
35
36 vendorHash = "sha256-ZJbZDfVB6gxToinuUNLsjBEB+7+OgC19Cc2Q8Ej7kfo=";
37
38 passthru.updateScript = nix-update-script { };
39
40 meta = {
41 description = "Airbyte's CLI for managing local Airbyte installations";
42 homepage = "https://airbyte.com/";
43 changelog = "https://github.com/airbytehq/abctl/releases/tag/v${version}";
44 license = lib.licenses.mit;
45 maintainers = with lib.maintainers; [ xelden ];
46 mainProgram = "abctl";
47 broken = stdenv.hostPlatform.isDarwin;
48 };
49}