Skip to content

Commit f0aaaa0

Browse files
authored
Add acceptance test for cert-manager (#1417)
1 parent 2303aea commit f0aaaa0

File tree

3 files changed

+24600
-0
lines changed

3 files changed

+24600
-0
lines changed
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
// +build acceptance
2+
3+
package acceptance
4+
5+
import (
6+
"testing"
7+
8+
"github.com/hashicorp/terraform-provider-kubernetes/manifest/test/helper/kubernetes"
9+
)
10+
11+
func TestKubernetesManifest_InstallCertManager(t *testing.T) {
12+
namespace := randName()
13+
14+
tf := tfhelper.RequireNewWorkingDir(t)
15+
tf.SetReattachInfo(reattachInfo)
16+
17+
k8shelper.CreateNamespace(t, namespace)
18+
defer func() {
19+
tf.RequireDestroy(t)
20+
tf.Close()
21+
k8shelper.DeleteResource(t, namespace, kubernetes.NewGroupVersionResource("v1", "namespaces"))
22+
k8shelper.AssertResourceDoesNotExist(t, "v1", "namespaces", namespace)
23+
}()
24+
25+
tfvars := TFVARS{
26+
"namespace": namespace,
27+
}
28+
tfconfig := loadTerraformConfig(t, "CertManager/certmanager.tf", tfvars)
29+
tf.RequireSetConfig(t, tfconfig)
30+
tf.RequireInit(t)
31+
t.Log("CertManager has a very large manifest. This will take a few seconds to apply...")
32+
tf.RequireApply(t)
33+
t.Log("CertManager apply finished")
34+
35+
k8shelper.AssertResourceExists(t, "apiextensions.k8s.io/v1", "customresourcedefinitions", "certificaterequests.cert-manager.io")
36+
k8shelper.AssertResourceExists(t, "apiextensions.k8s.io/v1", "customresourcedefinitions", "certificates.cert-manager.io")
37+
k8shelper.AssertResourceExists(t, "apiextensions.k8s.io/v1", "customresourcedefinitions", "challenges.acme.cert-manager.io")
38+
k8shelper.AssertResourceExists(t, "apiextensions.k8s.io/v1", "customresourcedefinitions", "clusterissuers.cert-manager.io")
39+
k8shelper.AssertResourceExists(t, "apiextensions.k8s.io/v1", "customresourcedefinitions", "issuers.cert-manager.io")
40+
k8shelper.AssertResourceExists(t, "apiextensions.k8s.io/v1", "customresourcedefinitions", "orders.acme.cert-manager.io")
41+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-cainjector")
42+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-issuers")
43+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-clusterissuers")
44+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-certificates")
45+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-orders")
46+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-challenges")
47+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-ingress-shim")
48+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-view")
49+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-edit")
50+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-approve:cert-manager-io")
51+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-controller-certificatesigningrequests")
52+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterroles", "cert-manager-webhook:subjectaccessreviews")
53+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-cainjector")
54+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-issuers")
55+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-clusterissuers")
56+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-certificates")
57+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-orders")
58+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-challenges")
59+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-ingress-shim")
60+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-approve:cert-manager-io")
61+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-controller-certificatesigningrequests")
62+
k8shelper.AssertResourceExists(t, "rbac.authorization.k8s.io/v1", "clusterrolebindings", "cert-manager-webhook:subjectaccessreviews")
63+
k8shelper.AssertResourceExists(t, "admissionregistration.k8s.io/v1", "mutatingwebhookconfigurations", "cert-manager-webhook")
64+
k8shelper.AssertResourceExists(t, "admissionregistration.k8s.io/v1", "validatingwebhookconfigurations", "cert-manager-webhook")
65+
k8shelper.AssertNamespacedResourceExists(t, "v1", "services", namespace, "cert-manager")
66+
k8shelper.AssertNamespacedResourceExists(t, "v1", "services", namespace, "cert-manager-webhook")
67+
k8shelper.AssertNamespacedResourceExists(t, "v1", "serviceaccounts", namespace, "cert-manager-cainjector")
68+
k8shelper.AssertNamespacedResourceExists(t, "v1", "serviceaccounts", namespace, "cert-manager")
69+
k8shelper.AssertNamespacedResourceExists(t, "v1", "serviceaccounts", namespace, "cert-manager-webhook")
70+
k8shelper.AssertNamespacedResourceExists(t, "apps/v1", "deployments", namespace, "cert-manager-cainjector")
71+
k8shelper.AssertNamespacedResourceExists(t, "apps/v1", "deployments", namespace, "cert-manager")
72+
k8shelper.AssertNamespacedResourceExists(t, "apps/v1", "deployments", namespace, "cert-manager-webhook")
73+
k8shelper.AssertNamespacedResourceExists(t, "rbac.authorization.k8s.io/v1", "roles", "kube-system", "cert-manager-cainjector:leaderelection")
74+
k8shelper.AssertNamespacedResourceExists(t, "rbac.authorization.k8s.io/v1", "roles", "kube-system", "cert-manager:leaderelection")
75+
k8shelper.AssertNamespacedResourceExists(t, "rbac.authorization.k8s.io/v1", "roles", namespace, "cert-manager-webhook:dynamic-serving")
76+
k8shelper.AssertNamespacedResourceExists(t, "rbac.authorization.k8s.io/v1", "rolebindings", "kube-system", "cert-manager-cainjector:leaderelection")
77+
k8shelper.AssertNamespacedResourceExists(t, "rbac.authorization.k8s.io/v1", "rolebindings", "kube-system", "cert-manager:leaderelection")
78+
k8shelper.AssertNamespacedResourceExists(t, "rbac.authorization.k8s.io/v1", "rolebindings", namespace, "cert-manager-webhook:dynamic-serving")
79+
}

0 commit comments

Comments
 (0)