about summary refs log tree commit diff
path: root/pkgs/by-name/ky/kyverno-chainsaw/package.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/ky/kyverno-chainsaw/package.nix')
-rw-r--r--pkgs/by-name/ky/kyverno-chainsaw/package.nix38
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/by-name/ky/kyverno-chainsaw/package.nix b/pkgs/by-name/ky/kyverno-chainsaw/package.nix
new file mode 100644
index 000000000000..9fb72d1d143b
--- /dev/null
+++ b/pkgs/by-name/ky/kyverno-chainsaw/package.nix
@@ -0,0 +1,38 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "kyverno-chainsaw";
+  version = "0.1.7";
+
+  src = fetchFromGitHub {
+    owner = "kyverno";
+    repo = "chainsaw";
+    rev = "v${version}";
+    hash = "sha256-v71qAJSpnbHd+jkPkR34IVNvwWLhm04TrPzduB6ZOgA=";
+  };
+
+  vendorHash = "sha256-lHV5Ik/L/Svn9AvcKZupq778ektEsbxfOkCts4Ocx9g=";
+
+  ldflags = [
+    "-s" "-w"
+    "-X github.com/kyverno/chainsaw/pkg/version.BuildVersion=v${version}"
+    "-X github.com/kyverno/chainsaw/pkg/version.BuildHash=${version}"
+    "-X github.com/kyverno/chainsaw/pkg/version.BuildTime=1970-01-01_00:00:00"
+  ];
+
+  doCheck = false; # requires running kubernetes
+
+  meta = {
+    changelog = "https://github.com/kyverno/chainsaw/releases/tag/v${version}";
+    description = "Declarative approach to test Kubernetes operators and controllers";
+    homepage = "https://kyverno.github.io/chainsaw/";
+    license = lib.licenses.asl20;
+    longDescription = ''
+      Chainsaw is meant to test Kubernetes operators work as expected by running a sequence of test steps for:
+      * Creating resources
+      * Asserting operators react (or not) the way they should
+    '';
+    mainProgram = "chainsaw";
+    maintainers = with lib.maintainers; [ Sanskarzz ];
+  };
+}