Fix test cases for examples

This PR updates the test case to use for v1.21
This commit is contained in:
Qiming Teng
2021-06-14 13:01:34 +08:00
parent 4502d3b438
commit 126e636fb5
3 changed files with 200 additions and 492 deletions
+27 -16
View File
@@ -153,6 +153,14 @@ func validateObject(obj runtime.Object) (errors field.ErrorList) {
AllowDownwardAPIHugePages: true, AllowDownwardAPIHugePages: true,
} }
quotaValidationOptions := validation.ResourceQuotaValidationOptions{
AllowPodAffinityNamespaceSelector: true,
}
pspValidationOptions := policy_validation.PodSecurityPolicyValidationOptions{
AllowEphemeralVolumeType: true,
}
// Enable CustomPodDNS for testing // Enable CustomPodDNS for testing
// feature.DefaultFeatureGate.Set("CustomPodDNS=true") // feature.DefaultFeatureGate.Set("CustomPodDNS=true")
switch t := obj.(type) { switch t := obj.(type) {
@@ -210,7 +218,7 @@ func validateObject(obj runtime.Object) (errors field.ErrorList) {
if t.Namespace == "" { if t.Namespace == "" {
t.Namespace = api.NamespaceDefault t.Namespace = api.NamespaceDefault
} }
errors = validation.ValidateResourceQuota(t) errors = validation.ValidateResourceQuota(t, quotaValidationOptions)
case *api.Secret: case *api.Secret:
if t.Namespace == "" { if t.Namespace == "" {
t.Namespace = api.NamespaceDefault t.Namespace = api.NamespaceDefault
@@ -238,7 +246,7 @@ func validateObject(obj runtime.Object) (errors field.ErrorList) {
if t.Namespace == "" { if t.Namespace == "" {
t.Namespace = api.NamespaceDefault t.Namespace = api.NamespaceDefault
} }
errors = apps_validation.ValidateStatefulSet(t) errors = apps_validation.ValidateStatefulSet(t, podValidationOptions)
case *autoscaling.HorizontalPodAutoscaler: case *autoscaling.HorizontalPodAutoscaler:
if t.Namespace == "" { if t.Namespace == "" {
t.Namespace = api.NamespaceDefault t.Namespace = api.NamespaceDefault
@@ -287,7 +295,7 @@ func validateObject(obj runtime.Object) (errors field.ErrorList) {
errors = networking_validation.ValidateIngressClass(t) errors = networking_validation.ValidateIngressClass(t)
case *policy.PodSecurityPolicy: case *policy.PodSecurityPolicy:
errors = policy_validation.ValidatePodSecurityPolicy(t) errors = policy_validation.ValidatePodSecurityPolicy(t, pspValidationOptions)
case *apps.ReplicaSet: case *apps.ReplicaSet:
if t.Namespace == "" { if t.Namespace == "" {
t.Namespace = api.NamespaceDefault t.Namespace = api.NamespaceDefault
@@ -462,12 +470,10 @@ func TestExampleObjectSchemas(t *testing.T) {
"cassandra-statefulset": {&apps.StatefulSet{}, &storage.StorageClass{}}, "cassandra-statefulset": {&apps.StatefulSet{}, &storage.StorageClass{}},
}, },
"application/guestbook": { "application/guestbook": {
"frontend-deployment": {&apps.Deployment{}}, "frontend-deployment": {&apps.Deployment{}},
"frontend-service": {&api.Service{}}, "frontend-service": {&api.Service{}},
"redis-master-deployment": {&apps.Deployment{}}, "mongo-deployment": {&apps.Deployment{}},
"redis-master-service": {&api.Service{}}, "mongo-service": {&api.Service{}},
"redis-slave-deployment": {&apps.Deployment{}},
"redis-slave-service": {&api.Service{}},
}, },
"application/hpa": { "application/hpa": {
"php-apache": {&autoscaling.HorizontalPodAutoscaler{}}, "php-apache": {&autoscaling.HorizontalPodAutoscaler{}},
@@ -477,8 +483,10 @@ func TestExampleObjectSchemas(t *testing.T) {
"nginx-svc": {&api.Service{}}, "nginx-svc": {&api.Service{}},
}, },
"application/job": { "application/job": {
"cronjob": {&batch.CronJob{}}, "cronjob": {&batch.CronJob{}},
"job-tmpl": {&batch.Job{}}, "job-tmpl": {&batch.Job{}},
"indexed-job": {&batch.Job{}},
"indexed-job-vol": {&batch.Job{}},
}, },
"application/job/rabbitmq": { "application/job/rabbitmq": {
"job": {&batch.Job{}}, "job": {&batch.Job{}},
@@ -557,7 +565,8 @@ func TestExampleObjectSchemas(t *testing.T) {
"two-container-pod": {&api.Pod{}}, "two-container-pod": {&api.Pod{}},
}, },
"pods/config": { "pods/config": {
"redis-pod": {&api.Pod{}}, "redis-pod": {&api.Pod{}},
"example-redis-config": {&api.ConfigMap{}},
}, },
"pods/inject": { "pods/inject": {
"dapi-envars-container": {&api.Pod{}}, "dapi-envars-container": {&api.Pod{}},
@@ -610,10 +619,11 @@ func TestExampleObjectSchemas(t *testing.T) {
"redis": {&api.Pod{}}, "redis": {&api.Pod{}},
}, },
"policy": { "policy": {
"baseline-psp": {&policy.PodSecurityPolicy{}}, "baseline-psp": {&policy.PodSecurityPolicy{}},
"example-psp": {&policy.PodSecurityPolicy{}}, "example-psp": {&policy.PodSecurityPolicy{}},
"privileged-psp": {&policy.PodSecurityPolicy{}}, "priority-class-resourcequota": {&api.ResourceQuota{}},
"restricted-psp": {&policy.PodSecurityPolicy{}}, "privileged-psp": {&policy.PodSecurityPolicy{}},
"restricted-psp": {&policy.PodSecurityPolicy{}},
"zookeeper-pod-disruption-budget-maxunavailable": {&policy.PodDisruptionBudget{}}, "zookeeper-pod-disruption-budget-maxunavailable": {&policy.PodDisruptionBudget{}},
"zookeeper-pod-disruption-budget-minavailable": {&policy.PodDisruptionBudget{}}, "zookeeper-pod-disruption-budget-minavailable": {&policy.PodDisruptionBudget{}},
}, },
@@ -645,6 +655,7 @@ func TestExampleObjectSchemas(t *testing.T) {
"minimal-ingress": {&networking.Ingress{}}, "minimal-ingress": {&networking.Ingress{}},
"name-virtual-host-ingress": {&networking.Ingress{}}, "name-virtual-host-ingress": {&networking.Ingress{}},
"name-virtual-host-ingress-no-third-host": {&networking.Ingress{}}, "name-virtual-host-ingress-no-third-host": {&networking.Ingress{}},
"namespaced-params": {&networking.IngressClass{}},
"network-policy-allow-all-egress": {&networking.NetworkPolicy{}}, "network-policy-allow-all-egress": {&networking.NetworkPolicy{}},
"network-policy-allow-all-ingress": {&networking.NetworkPolicy{}}, "network-policy-allow-all-ingress": {&networking.NetworkPolicy{}},
"network-policy-default-deny-egress": {&networking.NetworkPolicy{}}, "network-policy-default-deny-egress": {&networking.NetworkPolicy{}},
+30 -30
View File
@@ -1,38 +1,38 @@
module k8s.io/website module k8s.io/website
go 1.15 go 1.16
require ( require (
k8s.io/apimachinery v0.20.0 k8s.io/apimachinery v0.21.0
k8s.io/kubernetes v1.20.0 k8s.io/kubernetes v0.0.0-00010101000000-000000000000
) )
replace ( replace (
k8s.io/api => k8s.io/api v0.20.0 k8s.io/api => k8s.io/api v0.21.0
k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.20.0 k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.21.0
k8s.io/apimachinery => k8s.io/apimachinery v0.20.0 k8s.io/apimachinery => k8s.io/apimachinery v0.21.0
k8s.io/apiserver => k8s.io/apiserver v0.20.0 k8s.io/apiserver => k8s.io/apiserver v0.21.0
k8s.io/cli-runtime => k8s.io/cli-runtime v0.20.0 k8s.io/cli-runtime => k8s.io/cli-runtime v0.21.0
k8s.io/client-go => k8s.io/client-go v0.20.0 k8s.io/client-go => k8s.io/client-go v0.21.0
k8s.io/cloud-provider => k8s.io/cloud-provider v0.20.0 k8s.io/cloud-provider => k8s.io/cloud-provider v0.21.0
k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.20.0 k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.21.0
k8s.io/code-generator => k8s.io/code-generator v0.20.0 k8s.io/code-generator => k8s.io/code-generator v0.21.0
k8s.io/component-base => k8s.io/component-base v0.20.0 k8s.io/component-base => k8s.io/component-base v0.21.0
k8s.io/component-helpers => k8s.io/component-helpers v0.20.0 k8s.io/component-helpers => k8s.io/component-helpers v0.21.0
k8s.io/controller-manager => k8s.io/controller-manager v0.20.0 k8s.io/controller-manager => k8s.io/controller-manager v0.21.0
k8s.io/cri-api => k8s.io/cri-api v0.20.0 k8s.io/cri-api => k8s.io/cri-api v0.21.0
k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.20.0 k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.21.0
k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.20.0 k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.21.0
k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.20.0 k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.21.0
k8s.io/kube-proxy => k8s.io/kube-proxy v0.20.0 k8s.io/kube-proxy => k8s.io/kube-proxy v0.21.0
k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.20.0 k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.21.0
k8s.io/kubectl => k8s.io/kubectl v0.20.0 k8s.io/kubectl => k8s.io/kubectl v0.21.0
k8s.io/kubelet => k8s.io/kubelet v0.20.0 k8s.io/kubelet => k8s.io/kubelet v0.21.0
k8s.io/kubernetes => k8s.io/kubernetes v1.20.0 k8s.io/kubernetes => ../kubernetes
k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.20.0 k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.21.0
k8s.io/metrics => k8s.io/metrics v0.20.0 k8s.io/metrics => k8s.io/metrics v0.21.0
k8s.io/mount-utils => k8s.io/mount-utils v0.20.0 k8s.io/mount-utils => k8s.io/mount-utils v0.21.0
k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.20.0 k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.21.0
k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.20.0 k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.21.0
k8s.io/sample-controller => k8s.io/sample-controller v0.20.0 k8s.io/sample-controller => k8s.io/sample-controller v0.21.0
) )
+143 -446
View File
File diff suppressed because it is too large Load Diff