about summary refs log tree commit diff
path: root/pkgs/applications/networking/cluster/helm
diff options
context:
space:
mode:
authorAzat Bahawi <azat@bahawi.net>2022-08-02 22:54:28 +0300
committerAzat Bahawi <azat@bahawi.net>2022-08-02 22:54:28 +0300
commit11a6b7ea4a1681c0c9713f075c4c10c7cca6d201 (patch)
treef5196797cffff85753b242e207e89a2d1ea65d38 /pkgs/applications/networking/cluster/helm
parentf8ad219dd2cb7a96411f814074b576de0574214f (diff)
kubernetes-helmPlugins.helm-push: init at 0.10.3
Diffstat (limited to 'pkgs/applications/networking/cluster/helm')
-rw-r--r--pkgs/applications/networking/cluster/helm/plugins/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/helm/plugins/helm-cm-push.nix44
2 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/helm/plugins/default.nix b/pkgs/applications/networking/cluster/helm/plugins/default.nix
index 342fd9e686a26..16fceff4ee1a8 100644
--- a/pkgs/applications/networking/cluster/helm/plugins/default.nix
+++ b/pkgs/applications/networking/cluster/helm/plugins/default.nix
@@ -6,6 +6,8 @@
 
   helm-git = callPackage ./helm-git.nix { };
 
+  helm-cm-push = callPackage ./helm-cm-push.nix { };
+
   helm-s3 = callPackage ./helm-s3.nix { };
 
   helm-secrets = callPackage ./helm-secrets.nix { };
diff --git a/pkgs/applications/networking/cluster/helm/plugins/helm-cm-push.nix b/pkgs/applications/networking/cluster/helm/plugins/helm-cm-push.nix
new file mode 100644
index 0000000000000..f54d2b332f272
--- /dev/null
+++ b/pkgs/applications/networking/cluster/helm/plugins/helm-cm-push.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "helm-cm-push";
+  version = "0.10.3";
+
+  src = fetchFromGitHub {
+    owner = "chartmuseum";
+    repo = "helm-push";
+    rev = "v${version}";
+    hash = "sha256-GyVhjCosVaUS1DtztztFxKuuRlUdxlsOP4/QMQ7+TaU=";
+  };
+
+  vendorSha256 = "sha256-9LhokpQrREmcyBqwb33BSMyG8z7IAsl9NtE3B631PnM=";
+
+  subPackage = [ "cmd/helm-cm-push" ];
+
+  # Remove hooks.
+  postPatch = ''
+    sed -e '/^hooks:/,+2 d' -i plugin.yaml
+  '';
+
+  CGO_ENABLED = 0;
+
+  ldflags = [ "-s" "-w" ];
+
+  postInstall = ''
+    install -Dm644 plugin.yaml $out/helm-cm-push/plugin.yaml
+    mv $out/bin $out/helm-cm-push
+  '';
+
+  # Tests require the ChartMuseum service.
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Helm plugin to push chart package to ChartMuseum";
+    homepage = "https://github.com/chartmuseum/helm-push";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ azahi ];
+  };
+}