summary refs log tree commit diff
path: root/pkgs/tools/misc/tfk8s
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/misc/tfk8s')
-rw-r--r--pkgs/tools/misc/tfk8s/default.nix12
-rw-r--r--pkgs/tools/misc/tfk8s/tests/sample1/default.nix11
-rw-r--r--pkgs/tools/misc/tfk8s/tests/sample1/input.yaml7
-rw-r--r--pkgs/tools/misc/tfk8s/tests/sample1/output.tf12
4 files changed, 38 insertions, 4 deletions
diff --git a/pkgs/tools/misc/tfk8s/default.nix b/pkgs/tools/misc/tfk8s/default.nix
index e6fc7bf3f7f..d9c9ad0451b 100644
--- a/pkgs/tools/misc/tfk8s/default.nix
+++ b/pkgs/tools/misc/tfk8s/default.nix
@@ -1,18 +1,18 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, callPackage }:
 
 buildGoModule rec {
   pname = "tfk8s";
-  version = "0.1.4";
+  version = "0.1.5";
   tag = "v${version}";
 
   src = fetchFromGitHub {
     owner = "jrhouston";
     repo = "tfk8s";
     rev = tag;
-    sha256 = "sha256-Ha/F8rCGZqFYqJzfemmKRyEBI5khaSIerJxvf2Pf2ao=";
+    sha256 = "sha256-T0zM2JOmzk8YyS3+De6yGwiwLgyb6Rwy6hT9b44wNxQ=";
   };
 
-  vendorSha256 = "sha256-wS5diDQFkt8IAp13d8Yeh8ihLvKWdR0Mbw0fMZpqqKE=";
+  vendorSha256 = "sha256-eLPmghs05pMMtys97Ja7YGdVMZmMmiaFeMwzaWNxW0I=";
   runVend = true;
 
   buildFlagsArray = [
@@ -30,6 +30,10 @@ buildGoModule rec {
     $out/bin/tfk8s --version | grep ${tag} > /dev/null
   '';
 
+  passthru.tests = {
+    sample1 = callPackage ./tests/sample1 { };
+  };
+
   meta = with lib; {
     description = "An utility to convert Kubernetes YAML manifests to Terraform's HCL format";
     license = licenses.mit;
diff --git a/pkgs/tools/misc/tfk8s/tests/sample1/default.nix b/pkgs/tools/misc/tfk8s/tests/sample1/default.nix
new file mode 100644
index 00000000000..6b06dbf3234
--- /dev/null
+++ b/pkgs/tools/misc/tfk8s/tests/sample1/default.nix
@@ -0,0 +1,11 @@
+{ runCommandCC, tfk8s }:
+
+runCommandCC "tfk8s-test-sample1" {
+    buildInputs = [
+      tfk8s
+    ];
+    meta.timeout = 60;
+  }
+  ''
+    cmp <(${tfk8s}/bin/tfk8s -f ${./input.yaml}) ${./output.tf} > $out
+  ''
diff --git a/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml b/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml
new file mode 100644
index 00000000000..58ed0eb11d7
--- /dev/null
+++ b/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml
@@ -0,0 +1,7 @@
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: test
+data:
+  TEST: test
diff --git a/pkgs/tools/misc/tfk8s/tests/sample1/output.tf b/pkgs/tools/misc/tfk8s/tests/sample1/output.tf
new file mode 100644
index 00000000000..51d564400b5
--- /dev/null
+++ b/pkgs/tools/misc/tfk8s/tests/sample1/output.tf
@@ -0,0 +1,12 @@
+resource "kubernetes_manifest" "configmap_test" {
+  manifest = {
+    "apiVersion" = "v1"
+    "data" = {
+      "TEST" = "test"
+    }
+    "kind" = "ConfigMap"
+    "metadata" = {
+      "name" = "test"
+    }
+  }
+}