216 lines
6.3 KiB
YAML
216 lines
6.3 KiB
YAML
suite: webhook data test
|
|
templates:
|
|
- common.yaml
|
|
release:
|
|
name: test-release-name
|
|
namespace: test-release-namespace
|
|
tests:
|
|
- it: should create the webhook
|
|
set:
|
|
k1: some-name
|
|
k2: v1
|
|
k3: v1beta1
|
|
k4: /some-path
|
|
k5: 5000
|
|
k6: "Y2FidWx0dXJl"
|
|
k7: https://some-url
|
|
k8: Fail
|
|
k9: Exact
|
|
k10: None
|
|
k11: IfNeeded
|
|
k12: CREATE
|
|
k13: UPDATE
|
|
k14: ""
|
|
k15: some-group
|
|
k16: v1
|
|
k17: v1beta
|
|
k18: pods
|
|
k19: configmaps
|
|
k20: mutating
|
|
webhook:
|
|
my-webhook1:
|
|
enabled: true
|
|
type: "{{ .Values.k20 }}"
|
|
webhooks:
|
|
- name: "{{ .Values.k1 }}"
|
|
failurePolicy: "{{ .Values.k8 }}"
|
|
matchPolicy: "{{ .Values.k9 }}"
|
|
sideEffects: "{{ .Values.k10 }}"
|
|
reinvocationPolicy: "{{ .Values.k11 }}"
|
|
timeoutSeconds: 28
|
|
admissionReviewVersions: &admissionReviewVersions
|
|
- "{{ .Values.k2 }}"
|
|
- "{{ .Values.k3 }}"
|
|
clientConfig:
|
|
caBundle: "{{ .Values.k6 }}"
|
|
service:
|
|
name: "{{ .Values.k1 }}"
|
|
namespace: "{{ .Release.Namespace }}"
|
|
path: "{{ .Values.k4 }}"
|
|
port: "{{ .Values.k5 }}"
|
|
rules: &rules
|
|
- operations:
|
|
- "{{ .Values.k12 }}"
|
|
- "{{ .Values.k13 }}"
|
|
apiGroups:
|
|
- "{{ .Values.k14 }}"
|
|
- "{{ .Values.k15 }}"
|
|
apiVersions:
|
|
- "{{ .Values.k16 }}"
|
|
- "{{ .Values.k17 }}"
|
|
resources:
|
|
- "{{ .Values.k18 }}"
|
|
- "{{ .Values.k19 }}"
|
|
- name: "{{ .Values.k1 }}"
|
|
failurePolicy: "{{ .Values.k8 }}"
|
|
matchPolicy: "{{ .Values.k9 }}"
|
|
sideEffects: "{{ .Values.k10 }}"
|
|
reinvocationPolicy: "{{ .Values.k11 }}"
|
|
timeoutSeconds: 28
|
|
admissionReviewVersions: *admissionReviewVersions
|
|
clientConfig:
|
|
caBundle: "{{ .Values.k6 }}"
|
|
url: "{{ .Values.k7 }}"
|
|
rules: *rules
|
|
my-webhook2:
|
|
enabled: true
|
|
type: validating
|
|
webhooks:
|
|
- name: some-other-name
|
|
failurePolicy: Ignore
|
|
matchPolicy: Equivalent
|
|
sideEffects: None
|
|
timeoutSeconds: 20
|
|
admissionReviewVersions:
|
|
- v2
|
|
- v2beta
|
|
clientConfig:
|
|
caBundle: S2WidxffdXJ3l
|
|
url: "{{ .Values.k7 }}"
|
|
rules:
|
|
- operations:
|
|
- DELETE
|
|
- PATCH
|
|
apiGroups:
|
|
- ""
|
|
- some-other-group
|
|
apiVersions:
|
|
- v1
|
|
- v2
|
|
resources:
|
|
- pods
|
|
- configmaps
|
|
scope: Namespaced
|
|
asserts:
|
|
- documentIndex: &webhookMutDoc 0
|
|
isKind:
|
|
of: MutatingWebhookConfiguration
|
|
- documentIndex: *webhookMutDoc
|
|
isAPIVersion:
|
|
of: admissionregistration.k8s.io/v1
|
|
- documentIndex: *webhookMutDoc
|
|
equal:
|
|
path: metadata.name
|
|
value: test-release-name-common-test-my-webhook1
|
|
- documentIndex: *webhookMutDoc
|
|
equal:
|
|
path: webhooks[0]
|
|
value:
|
|
name: some-name
|
|
failurePolicy: Fail
|
|
matchPolicy: Exact
|
|
reinvocationPolicy: IfNeeded
|
|
sideEffects: None
|
|
timeoutSeconds: 28
|
|
admissionReviewVersions:
|
|
- v1
|
|
- v1beta1
|
|
clientConfig:
|
|
caBundle: Y2FidWx0dXJl
|
|
service:
|
|
name: some-name
|
|
namespace: test-release-namespace
|
|
path: /some-path
|
|
port: 5000
|
|
rules:
|
|
- operations:
|
|
- CREATE
|
|
- UPDATE
|
|
apiGroups:
|
|
- ""
|
|
- some-group
|
|
apiVersions:
|
|
- v1
|
|
- v1beta
|
|
resources:
|
|
- pods
|
|
- configmaps
|
|
- documentIndex: *webhookMutDoc
|
|
equal:
|
|
path: webhooks[1]
|
|
value:
|
|
name: some-name
|
|
failurePolicy: Fail
|
|
matchPolicy: Exact
|
|
reinvocationPolicy: IfNeeded
|
|
sideEffects: None
|
|
timeoutSeconds: 28
|
|
admissionReviewVersions:
|
|
- v1
|
|
- v1beta1
|
|
clientConfig:
|
|
caBundle: Y2FidWx0dXJl
|
|
url: https://some-url
|
|
rules:
|
|
- operations:
|
|
- CREATE
|
|
- UPDATE
|
|
apiGroups:
|
|
- ""
|
|
- some-group
|
|
apiVersions:
|
|
- v1
|
|
- v1beta
|
|
resources:
|
|
- pods
|
|
- configmaps
|
|
- documentIndex: &WebhookValDoc 1
|
|
isKind:
|
|
of: ValidatingWebhookConfiguration
|
|
- documentIndex: *WebhookValDoc
|
|
isAPIVersion:
|
|
of: admissionregistration.k8s.io/v1
|
|
- documentIndex: *WebhookValDoc
|
|
equal:
|
|
path: metadata.name
|
|
value: test-release-name-common-test-my-webhook2
|
|
- documentIndex: *WebhookValDoc
|
|
equal:
|
|
path: webhooks[0]
|
|
value:
|
|
name: some-other-name
|
|
failurePolicy: Ignore
|
|
matchPolicy: Equivalent
|
|
sideEffects: None
|
|
timeoutSeconds: 20
|
|
admissionReviewVersions:
|
|
- v2
|
|
- v2beta
|
|
clientConfig:
|
|
caBundle: S2WidxffdXJ3l
|
|
url: https://some-url
|
|
rules:
|
|
- operations:
|
|
- DELETE
|
|
- PATCH
|
|
apiGroups:
|
|
- ""
|
|
- some-other-group
|
|
apiVersions:
|
|
- v1
|
|
- v2
|
|
resources:
|
|
- pods
|
|
- configmaps
|
|
scope: Namespaced
|