Skip to content

Commit

Permalink
kong: add Helm3 CRD support
Browse files Browse the repository at this point in the history
From #10
  • Loading branch information
yspotts authored and hbagdi committed Jan 23, 2020
1 parent b1131b6 commit 0a73684
Show file tree
Hide file tree
Showing 4 changed files with 288 additions and 287 deletions.
2 changes: 1 addition & 1 deletion charts/kong/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@ maintainers:
email: [email protected]
name: kong
sources:
version: 1.0.1
version: 1.0.2
appVersion: 1.4
5 changes: 5 additions & 0 deletions charts/kong/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,7 @@ section of `values.yaml` file:
| image.tag | Version of the ingress controller | 0.7.0 |
| readinessProbe | Kong ingress controllers readiness probe | |
| livenessProbe | Kong ingress controllers liveness probe | |
| installCRDs | Create CRDs. Regardless of value of this, Helm v3+ will install the CRDs if those are not present already. Use `--skip-crds` with `helm install` if you want to skip CRD creation. | true |
| env | Specify Kong Ingress Controller configuration via environment variables | |
| ingressClass | The ingress-class value for controller | kong |
| admissionWebhook.enabled | Whether to enable the validating admission webhook | false |
Expand Down Expand Up @@ -463,6 +464,10 @@ value is your SMTP password.
## Changelog
### 1.0.2
Helm 3 support: CRDs are declared in crds directory. Backward compatible support for helm 2.
### 1.0.1
Fixed invalid namespace variable name causing ServiceAccount and Role to be generated in other namespace than desired.
Expand Down
278 changes: 278 additions & 0 deletions charts/kong/crds/custom-resource-definitions.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,278 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: kongconsumers.configuration.konghq.com
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
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
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
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
Loading

0 comments on commit 0a73684

Please sign in to comment.