--- /dev/null
+{{- if and .Values.ingressController.enabled .Values.ingressController.installCRDs -}}
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+ name: kongconsumers.configuration.konghq.com
+ labels:
+ {{- include "kong.metaLabels" . | nindent 4 }}
+spec:
+ group: configuration.konghq.com
+ version: v1
+ scope: Namespaced
+ names:
+ kind: KongConsumer
+ plural: kongconsumers
+ shortNames:
+ - kc
+ additionalPrinterColumns:
+ - name: Username
+ type: string
+ description: Username of a Kong Consumer
+ JSONPath: .username
+ - name: Age
+ type: date
+ description: Age
+ JSONPath: .metadata.creationTimestamp
+ validation:
+ openAPIV3Schema:
+ properties:
+ username:
+ type: string
+ custom_id:
+ type: string
+ credentials:
+ type: array
+ items:
+ type: string
+---
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+ name: kongcredentials.configuration.konghq.com
+ labels:
+ {{- include "kong.metaLabels" . | nindent 4 }}
+spec:
+ group: configuration.konghq.com
+ version: v1
+ scope: Namespaced
+ names:
+ kind: KongCredential
+ plural: kongcredentials
+ additionalPrinterColumns:
+ - name: Credential-type
+ type: string
+ description: Type of credential
+ JSONPath: .type
+ - name: Age
+ type: date
+ description: Age
+ JSONPath: .metadata.creationTimestamp
+ - name: Consumer-Ref
+ type: string
+ description: Owner of the credential
+ JSONPath: .consumerRef
+ validation:
+ openAPIV3Schema:
+ required:
+ - consumerRef
+ - type
+ properties:
+ consumerRef:
+ type: string
+ type:
+ type: string
+---
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+ name: kongplugins.configuration.konghq.com
+ labels:
+ {{- include "kong.metaLabels" . | nindent 4 }}
+spec:
+ group: configuration.konghq.com
+ version: v1
+ scope: Namespaced
+ names:
+ kind: KongPlugin
+ plural: kongplugins
+ shortNames:
+ - kp
+ additionalPrinterColumns:
+ - name: Plugin-Type
+ type: string
+ description: Name of the plugin
+ JSONPath: .plugin
+ - name: Age
+ type: date
+ description: Age
+ JSONPath: .metadata.creationTimestamp
+ - name: Disabled
+ type: boolean
+ description: Indicates if the plugin is disabled
+ JSONPath: .disabled
+ priority: 1
+ - name: Config
+ type: string
+ description: Configuration of the plugin
+ JSONPath: .config
+ priority: 1
+ validation:
+ openAPIV3Schema:
+ required:
+ - plugin
+ properties:
+ plugin:
+ type: string
+ disabled:
+ type: boolean
+ config:
+ type: object
+ run_on:
+ type: string
+ enum:
+ - first
+ - second
+ - all
+ protocols:
+ type: array
+ items:
+ type: string
+ enum:
+ - http
+ - https
+ - tcp
+ - tls
+ - grpc
+ - grpcs
+---
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+ name: kongingresses.configuration.konghq.com
+ labels:
+ {{- include "kong.metaLabels" . | nindent 4 }}
+spec:
+ group: configuration.konghq.com
+ version: v1
+ scope: Namespaced
+ names:
+ kind: KongIngress
+ plural: kongingresses
+ shortNames:
+ - ki
+ validation:
+ openAPIV3Schema:
+ properties:
+ route:
+ properties:
+ methods:
+ type: array
+ items:
+ type: string
+ headers:
+ type: object
+ additionalProperties:
+ type: array
+ items:
+ type: string
+ regex_priority:
+ type: integer
+ strip_path:
+ type: boolean
+ preserve_host:
+ type: boolean
+ protocols:
+ type: array
+ items:
+ type: string
+ enum:
+ - http
+ - https
+ - grpc
+ - grpcs
+ https_redirect_status_code:
+ type: integer
+ proxy:
+ type: object
+ properties:
+ protocol:
+ type: string
+ enum:
+ - http
+ - https
+ - grpc
+ - grpcs
+ path:
+ type: string
+ pattern: ^/.*$
+ retries:
+ type: integer
+ minimum: 0
+ connect_timeout:
+ type: integer
+ minimum: 0
+ read_timeout:
+ type: integer
+ minimum: 0
+ write_timeout:
+ type: integer
+ minimum: 0
+ upstream:
+ type: object
+ properties:
+ algorithm:
+ type: string
+ enum:
+ - "round-robin"
+ - "consistent-hashing"
+ - "least-connections"
+ host_header:
+ type: string
+ hash_on:
+ type: string
+ hash_on_cookie:
+ type: string
+ hash_on_cookie_path:
+ type: string
+ hash_on_header:
+ type: string
+ hash_fallback_header:
+ type: string
+ hash_fallback:
+ type: string
+ slots:
+ type: integer
+ minimum: 10
+ healthchecks:
+ type: object
+ properties:
+ active:
+ type: object
+ properties:
+ concurrency:
+ type: integer
+ minimum: 1
+ timeout:
+ type: integer
+ minimum: 0
+ http_path:
+ type: string
+ pattern: ^/.*$
+ healthy: &healthy
+ type: object
+ properties:
+ http_statuses:
+ type: array
+ items:
+ type: integer
+ interval:
+ type: integer
+ minimum: 0
+ successes:
+ type: integer
+ minimum: 0
+ unhealthy: &unhealthy
+ type: object
+ properties:
+ http_failures:
+ type: integer
+ minimum: 0
+ http_statuses:
+ type: array
+ items:
+ type: integer
+ interval:
+ type: integer
+ minimum: 0
+ tcp_failures:
+ type: integer
+ minimum: 0
+ timeout:
+ type: integer
+ minimum: 0
+ passive:
+ type: object
+ properties:
+ healthy: *healthy
+ unhealthy: *unhealthy
+{{- end -}}