2024-03-17 21:27:27 +00:00
suite : Controller > IngressClass > Aliases
templates :
- controller-ingressclass-aliases.yaml
tests :
- it : should not create IngressClass aliases
asserts :
- hasDocuments :
count : 0
- it : should create an IngressClass alias with name "nginx-alias" if `controller.ingressClassResource.aliases` is set
set :
controller.ingressClassResource.aliases :
- nginx-alias
asserts :
- hasDocuments :
count : 1
- isKind :
of : IngressClass
- equal :
path : metadata.name
value : nginx-alias
- it : should create an IngressClass alias without annotation `ingressclass.kubernetes.io/is-default-class` if `controller.ingressClassResource.default` is true
set :
controller.ingressClassResource.aliases :
- nginx-alias
controller.ingressClassResource.default : true
asserts :
- hasDocuments :
count : 1
- isKind :
of : IngressClass
- equal :
path : metadata.name
value : nginx-alias
- notExists :
path : metadata.annotations["ingressclass.kubernetes.io/is-default-class"]
2024-06-03 10:12:58 +00:00
- it : should create an IngressClass alias with annotations if `controller.ingressClassResource.annotations` is set
set :
controller.ingressClassResource.aliases :
- nginx-alias
controller.ingressClassResource.annotations :
my-fancy-annotation : has-a-value
asserts :
- hasDocuments :
count : 1
- isKind :
of : IngressClass
- equal :
path : metadata.name
value : nginx-alias
- equal :
path : metadata.annotations.my-fancy-annotation
value : has-a-value
2024-03-17 21:27:27 +00:00
- it : should create an IngressClass alias with controller "k8s.io/ingress-nginx-internal" if `controller.ingressClassResource.controllerValue` is "k8s.io/ingress-nginx-internal"
set :
controller.ingressClassResource.aliases :
- nginx-alias
controller.ingressClassResource.controllerValue : k8s.io/ingress-nginx-internal
asserts :
- hasDocuments :
count : 1
- isKind :
of : IngressClass
- equal :
path : metadata.name
value : nginx-alias
- equal :
path : spec.controller
value : k8s.io/ingress-nginx-internal
- it : should create an IngressClass alias with parameters if `controller.ingressClassResource.parameters` is set
set :
controller.ingressClassResource.aliases :
- nginx-alias
controller.ingressClassResource.parameters :
apiGroup : k8s.example.com
kind : IngressParameters
name : external-lb
asserts :
- hasDocuments :
count : 1
- isKind :
of : IngressClass
- equal :
path : metadata.name
value : nginx-alias
- equal :
path : spec.parameters
value :
apiGroup : k8s.example.com
kind : IngressParameters
name : external-lb
- it : should create two IngressClass aliases if `controller.ingressClassResource.aliases` has two elements
set :
controller.ingressClassResource.aliases :
- nginx-alias-1
- nginx-alias-2
asserts :
- hasDocuments :
count : 2
- isKind :
of : IngressClass
- matchRegex :
path : metadata.name
pattern : nginx-alias-(1|2)