summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/networking/cluster/argocd-autopilot/default.nix55
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 57 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/argocd-autopilot/default.nix b/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
new file mode 100644
index 0000000000000..674db790f2237
--- /dev/null
+++ b/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
@@ -0,0 +1,55 @@
+{ lib, stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "argocd-autopilot";
+  version = "0.3.0";
+  commit = "c8d17bef976649e4dc2428c14c39e30a0f846552";
+
+  src = fetchFromGitHub {
+    owner = "argoproj-labs";
+    repo = "argocd-autopilot";
+    rev = "v${version}";
+    sha256 = "sha256-tggE1T+oD/dJS9tD9xOExjhy+T1GDd0vwTerD3P2KvA=";
+  };
+
+  vendorSha256 = "sha256-v8UMSObE6w+ULzueEK0UFeebLqoamy/788SQLBmJZ8U=";
+
+  proxyVendor = true;
+
+  ldflags =
+    let package_url = "github.com/argoproj-labs/argocd-autopilot/pkg/store"; in
+    [
+      "-s"
+      "-w"
+      "-X ${package_url}.binaryName=${pname}"
+      "-X ${package_url}.version=${src.rev}"
+      "-X ${package_url}.buildDate=unknown"
+      "-X ${package_url}.gitCommit=${commit}"
+      "-X ${package_url}.installationManifestURL=github.com/argoproj-labs/argocd-autopilot/manifests/base?ref=${src.rev}"
+      "-X ${package_url}.installationManifestsNamespacedURL=github.com/argoproj-labs/argocd-autopilot/manifests/insecure?ref=${src.rev}"
+    ];
+
+  subPackages = [ "cmd" ];
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    $out/bin/argocd-autopilot version | grep ${src.rev} > /dev/null
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    install -Dm755 "$GOPATH/bin/cmd" -T $out/bin/argocd-autopilot
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "ArgoCD Autopilot";
+    downloadPage = "https://github.com/argoproj-labs/argocd-autopilot";
+    homepage = "https://argocd-autopilot.readthedocs.io/en/stable/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ sagikazarmark bryanasdev000 ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 575ca2a4c0208..d368c34c1f513 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -24557,6 +24557,8 @@ with pkgs;
 
   argocd = callPackage ../applications/networking/cluster/argocd { };
 
+  argocd-autopilot = callPackage ../applications/networking/cluster/argocd-autopilot { };
+
   argo-rollouts = callPackage ../applications/networking/cluster/argo-rollouts { };
 
   ario = callPackage ../applications/audio/ario { };