Skip to content
This repository was archived by the owner on May 24, 2023. It is now read-only.

Commit 565b8b3

Browse files
authored
Add IngressClass support
1 parent f8c6463 commit 565b8b3

25 files changed

+1998
-1720
lines changed

build/kic_crds/gc-definition.yaml

Lines changed: 0 additions & 52 deletions
This file was deleted.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
annotations:
5+
controller-gen.kubebuilder.io/version: v0.4.0
6+
creationTimestamp: null
7+
name: globalconfigurations.k8s.nginx.org
8+
spec:
9+
group: k8s.nginx.org
10+
names:
11+
kind: GlobalConfiguration
12+
listKind: GlobalConfigurationList
13+
plural: globalconfigurations
14+
shortNames:
15+
- gc
16+
singular: globalconfiguration
17+
scope: Namespaced
18+
versions:
19+
- name: v1alpha1
20+
schema:
21+
openAPIV3Schema:
22+
description: GlobalConfiguration defines the GlobalConfiguration resource.
23+
type: object
24+
properties:
25+
apiVersion:
26+
description: 'APIVersion defines the versioned schema of this representation
27+
of an object. Servers should convert recognized schemas to the latest
28+
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
29+
type: string
30+
kind:
31+
description: 'Kind is a string value representing the REST resource this
32+
object represents. Servers may infer this from the endpoint the client
33+
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
34+
type: string
35+
metadata:
36+
type: object
37+
spec:
38+
description: GlobalConfigurationSpec is the spec of the GlobalConfiguration
39+
resource.
40+
type: object
41+
properties:
42+
listeners:
43+
type: array
44+
items:
45+
description: Listener defines a listener.
46+
type: object
47+
properties:
48+
name:
49+
type: string
50+
port:
51+
type: integer
52+
protocol:
53+
type: string
54+
served: true
55+
storage: true
56+
status:
57+
acceptedNames:
58+
kind: ""
59+
plural: ""
60+
conditions: []
61+
storedVersions: []
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
annotations:
5+
controller-gen.kubebuilder.io/version: v0.4.0
6+
creationTimestamp: null
7+
name: policies.k8s.nginx.org
8+
spec:
9+
group: k8s.nginx.org
10+
names:
11+
kind: Policy
12+
listKind: PolicyList
13+
plural: policies
14+
shortNames:
15+
- pol
16+
singular: policy
17+
scope: Namespaced
18+
versions:
19+
- name: v1alpha1
20+
schema:
21+
openAPIV3Schema:
22+
description: Policy defines a Policy for VirtualServer and VirtualServerRoute
23+
resources.
24+
type: object
25+
properties:
26+
apiVersion:
27+
description: 'APIVersion defines the versioned schema of this representation
28+
of an object. Servers should convert recognized schemas to the latest
29+
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
30+
type: string
31+
kind:
32+
description: 'Kind is a string value representing the REST resource this
33+
object represents. Servers may infer this from the endpoint the client
34+
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
35+
type: string
36+
metadata:
37+
type: object
38+
spec:
39+
description: PolicySpec is the spec of the Policy resource. The spec includes
40+
multiple fields, where each field represents a different policy. Only
41+
one policy (field) is allowed.
42+
type: object
43+
properties:
44+
accessControl:
45+
description: AccessControl defines an access policy based on the source
46+
IP of a request.
47+
type: object
48+
properties:
49+
allow:
50+
type: array
51+
items:
52+
type: string
53+
deny:
54+
type: array
55+
items:
56+
type: string
57+
egressMTLS:
58+
description: EgressMTLS defines an Egress MTLS policy.
59+
type: object
60+
properties:
61+
ciphers:
62+
type: string
63+
protocols:
64+
type: string
65+
serverName:
66+
type: boolean
67+
sessionReuse:
68+
type: boolean
69+
sslName:
70+
type: string
71+
tlsSecret:
72+
type: string
73+
trustedCertSecret:
74+
type: string
75+
verifyDepth:
76+
type: integer
77+
verifyServer:
78+
type: boolean
79+
ingressMTLS:
80+
description: IngressMTLS defines an Ingress MTLS policy.
81+
type: object
82+
properties:
83+
clientCertSecret:
84+
type: string
85+
verifyClient:
86+
type: string
87+
verifyDepth:
88+
type: integer
89+
jwt:
90+
description: JWTAuth holds JWT authentication configuration.
91+
type: object
92+
properties:
93+
realm:
94+
type: string
95+
secret:
96+
type: string
97+
token:
98+
type: string
99+
rateLimit:
100+
description: RateLimit defines a rate limit policy.
101+
type: object
102+
properties:
103+
burst:
104+
type: integer
105+
delay:
106+
type: integer
107+
dryRun:
108+
type: boolean
109+
key:
110+
type: string
111+
logLevel:
112+
type: string
113+
noDelay:
114+
type: boolean
115+
rate:
116+
type: string
117+
rejectCode:
118+
type: integer
119+
zoneSize:
120+
type: string
121+
served: true
122+
storage: true
123+
status:
124+
acceptedNames:
125+
kind: ""
126+
plural: ""
127+
conditions: []
128+
storedVersions: []
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
annotations:
5+
controller-gen.kubebuilder.io/version: v0.4.0
6+
creationTimestamp: null
7+
name: transportservers.k8s.nginx.org
8+
spec:
9+
group: k8s.nginx.org
10+
names:
11+
kind: TransportServer
12+
listKind: TransportServerList
13+
plural: transportservers
14+
shortNames:
15+
- ts
16+
singular: transportserver
17+
scope: Namespaced
18+
versions:
19+
- name: v1alpha1
20+
schema:
21+
openAPIV3Schema:
22+
description: TransportServer defines the TransportServer resource.
23+
type: object
24+
properties:
25+
apiVersion:
26+
description: 'APIVersion defines the versioned schema of this representation
27+
of an object. Servers should convert recognized schemas to the latest
28+
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
29+
type: string
30+
kind:
31+
description: 'Kind is a string value representing the REST resource this
32+
object represents. Servers may infer this from the endpoint the client
33+
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
34+
type: string
35+
metadata:
36+
type: object
37+
spec:
38+
description: TransportServerSpec is the spec of the TransportServer resource.
39+
type: object
40+
properties:
41+
action:
42+
description: Action defines an action.
43+
type: object
44+
properties:
45+
pass:
46+
type: string
47+
host:
48+
type: string
49+
listener:
50+
description: TransportServerListener defines a listener for a TransportServer.
51+
type: object
52+
properties:
53+
name:
54+
type: string
55+
protocol:
56+
type: string
57+
upstreamParameters:
58+
description: UpstreamParameters defines parameters for an upstream.
59+
type: object
60+
properties:
61+
udpRequests:
62+
type: integer
63+
udpResponses:
64+
type: integer
65+
upstreams:
66+
type: array
67+
items:
68+
description: Upstream defines an upstream.
69+
type: object
70+
properties:
71+
name:
72+
type: string
73+
port:
74+
type: integer
75+
service:
76+
type: string
77+
served: true
78+
storage: true
79+
status:
80+
acceptedNames:
81+
kind: ""
82+
plural: ""
83+
conditions: []
84+
storedVersions: []

0 commit comments

Comments
 (0)