You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"description": "IngressClassParameters is the Schema for the IngressClassParameters API.",
3
4
"properties": {
4
5
"apiVersion": {
5
-
"description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
6
-
"type": "string"
6
+
"type": "string",
7
+
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
7
8
},
8
9
"kind": {
9
-
"description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
10
-
"type": "string"
10
+
"type": "string",
11
+
"description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
11
12
},
12
13
"metadata": {
13
14
"type": "object"
14
15
},
15
16
"spec": {
17
+
"type": "object",
16
18
"description": "Spec is the IngressClassParameters specification.",
17
19
"properties": {
18
20
"enableLegacyRegexDetection": {
19
-
"default": false,
20
-
"description": "EnableLegacyRegexDetection automatically detects if ImplementationSpecific Ingress paths are regular expression paths using the legacy 2.x heuristic. The controller adds the \"~\" prefix to those paths if the Kong version is 3.0 or higher.",
21
-
"type": "boolean"
21
+
"type": "boolean",
22
+
"description": "EnableLegacyRegexDetection automatically detects if ImplementationSpecific Ingress paths are regular expression\npaths using the legacy 2.x heuristic. The controller adds the \"~\" prefix to those paths if the Kong version is\n3.0 or higher.",
23
+
"default": false
22
24
},
23
25
"serviceUpstream": {
24
-
"default": false,
26
+
"type": "boolean",
25
27
"description": "Offload load-balancing to kube-proxy or sidecar.",
"description": "KongClusterPlugin is the Schema for the kongclusterplugins API.",
3
4
"properties": {
4
5
"apiVersion": {
5
-
"description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
6
-
"type": "string"
6
+
"type": "string",
7
+
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
7
8
},
8
9
"config": {
9
-
"description": "Config contains the plugin configuration. It's a list of keys and values required to configure the plugin. Please read the documentation of the plugin being configured to set values in here. For any plugin in Kong, anything that goes in the `config` JSON key in the Admin API request, goes into this property. Only one of `config` or `configFrom` may be used in a KongClusterPlugin, not both at once.",
10
10
"type": "object",
11
+
"description": "Config contains the plugin configuration. It's a list of keys and values\nrequired to configure the plugin.\nPlease read the documentation of the plugin being configured to set values\nin here. For any plugin in Kong, anything that goes in the `config` JSON\nkey in the Admin API request, goes into this property.\nOnly one of `config` or `configFrom` may be used in a KongClusterPlugin, not both at once.",
11
12
"x-kubernetes-preserve-unknown-fields": true
12
13
},
13
14
"configFrom": {
14
-
"description": "ConfigFrom references a secret containing the plugin configuration. This should be used when the plugin configuration contains sensitive information, such as AWS credentials in the Lambda plugin or the client secret in the OIDC plugin. Only one of `config` or `configFrom` may be used in a KongClusterPlugin, not both at once.",
15
+
"type": "object",
16
+
"description": "ConfigFrom references a secret containing the plugin configuration.\nThis should be used when the plugin configuration contains sensitive information,\nsuch as AWS credentials in the Lambda plugin or the client secret in the OIDC plugin.\nOnly one of `config` or `configFrom` may be used in a KongClusterPlugin, not both at once.",
15
17
"properties": {
16
18
"secretKeyRef": {
19
+
"type": "object",
17
20
"description": "Specifies a name, a namespace, and a key of a secret to refer to.",
18
21
"properties": {
19
22
"key": {
20
-
"description": "The key containing the value.",
21
-
"type": "string"
23
+
"type": "string",
24
+
"description": "The key containing the value."
22
25
},
23
26
"name": {
24
-
"description": "The secret containing the key.",
25
-
"type": "string"
27
+
"type": "string",
28
+
"description": "The secret containing the key."
26
29
},
27
30
"namespace": {
28
-
"description": "The namespace containing the secret.",
29
-
"type": "string"
31
+
"type": "string",
32
+
"description": "The namespace containing the secret."
30
33
}
31
34
},
35
+
"additionalProperties": false,
32
36
"required": [
33
37
"key",
34
38
"name",
35
39
"namespace"
36
-
],
37
-
"type": "object",
38
-
"additionalProperties": false
40
+
]
39
41
}
40
42
},
41
-
"type": "object",
42
-
"additionalProperties": false
43
+
"additionalProperties": false,
44
+
"required": [
45
+
"secretKeyRef"
46
+
]
47
+
},
48
+
"configPatches": {
49
+
"type": "array",
50
+
"description": "ConfigPatches represents JSON patches to the configuration of the plugin.\nEach item means a JSON patch to add something in the configuration,\nwhere path is specified in `path` and value is in `valueFrom` referencing\na key in a secret.\nWhen Config is specified, patches will be applied to the configuration in Config.\nOtherwise, patches will be applied to an empty object.",
51
+
"items": {
52
+
"type": "object",
53
+
"description": "NamespacedConfigPatch is a JSON patch to add values from secrets to KongClusterPlugin\nto the generated configuration of plugin in Kong.",
54
+
"properties": {
55
+
"path": {
56
+
"type": "string",
57
+
"description": "Path is the JSON path to add the patch."
58
+
},
59
+
"valueFrom": {
60
+
"type": "object",
61
+
"description": "ValueFrom is the reference to a key of a secret where the patched value comes from.",
62
+
"properties": {
63
+
"secretKeyRef": {
64
+
"type": "object",
65
+
"description": "Specifies a name, a namespace, and a key of a secret to refer to.",
66
+
"properties": {
67
+
"key": {
68
+
"type": "string",
69
+
"description": "The key containing the value."
70
+
},
71
+
"name": {
72
+
"type": "string",
73
+
"description": "The secret containing the key."
74
+
},
75
+
"namespace": {
76
+
"type": "string",
77
+
"description": "The namespace containing the secret."
78
+
}
79
+
},
80
+
"additionalProperties": false,
81
+
"required": [
82
+
"key",
83
+
"name",
84
+
"namespace"
85
+
]
86
+
}
87
+
},
88
+
"additionalProperties": false,
89
+
"required": [
90
+
"secretKeyRef"
91
+
]
92
+
}
93
+
},
94
+
"additionalProperties": false,
95
+
"required": [
96
+
"path",
97
+
"valueFrom"
98
+
]
99
+
}
43
100
},
44
101
"consumerRef": {
45
-
"description": "ConsumerRef is a reference to a particular consumer.",
46
-
"type": "string"
102
+
"type": "string",
103
+
"description": "ConsumerRef is a reference to a particular consumer."
47
104
},
48
105
"disabled": {
49
-
"description": "Disabled set if the plugin is disabled or not.",
50
-
"type": "boolean"
106
+
"type": "boolean",
107
+
"description": "Disabled set if the plugin is disabled or not."
108
+
},
109
+
"instance_name": {
110
+
"type": "string",
111
+
"description": "InstanceName is an optional custom name to identify an instance of the plugin. This is useful when running the\nsame plugin in multiple contexts, for example, on multiple services."
51
112
},
52
113
"kind": {
53
-
"description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
54
-
"type": "string"
114
+
"type": "string",
115
+
"description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
55
116
},
56
117
"metadata": {
57
118
"type": "object"
58
119
},
59
120
"ordering": {
60
-
"description": "Ordering overrides the normal plugin execution order. It's only available on Kong Enterprise. `<phase>` is a request processing phase (for example, `access` or `body_filter`) and `<plugin>` is the name of the plugin that will run before or after the KongPlugin. For example, a KongPlugin with `plugin: rate-limiting` and `before.access: [\"key-auth\"]` will create a rate limiting plugin that limits requests _before_ they are authenticated.",
121
+
"type": "object",
122
+
"description": "Ordering overrides the normal plugin execution order. It's only available on Kong Enterprise.\n`<phase>` is a request processing phase (for example, `access` or `body_filter`) and\n`<plugin>` is the name of the plugin that will run before or after the KongPlugin.\nFor example, a KongPlugin with `plugin: rate-limiting` and `before.access: [\"key-auth\"]`\nwill create a rate limiting plugin that limits requests _before_ they are authenticated.",
61
123
"properties": {
62
124
"after": {
125
+
"type": "object",
126
+
"description": "PluginOrderingPhase indicates which plugins in a phase should affect the target plugin's order",
63
127
"additionalProperties": {
128
+
"type": "array",
64
129
"items": {
65
130
"type": "string"
66
-
},
67
-
"type": "array"
68
-
},
69
-
"description": "PluginOrderingPhase indicates which plugins in a phase should affect the target plugin's order",
70
-
"type": "object"
131
+
}
132
+
}
71
133
},
72
134
"before": {
135
+
"type": "object",
136
+
"description": "PluginOrderingPhase indicates which plugins in a phase should affect the target plugin's order",
73
137
"additionalProperties": {
138
+
"type": "array",
74
139
"items": {
75
140
"type": "string"
76
-
},
77
-
"type": "array"
78
-
},
79
-
"description": "PluginOrderingPhase indicates which plugins in a phase should affect the target plugin's order",
80
-
"type": "object"
141
+
}
142
+
}
81
143
}
82
144
},
83
-
"type": "object",
84
145
"additionalProperties": false
85
146
},
86
147
"plugin": {
87
-
"description": "PluginName is the name of the plugin to which to apply the config.",
88
-
"type": "string"
148
+
"type": "string",
149
+
"description": "PluginName is the name of the plugin to which to apply the config."
89
150
},
90
151
"protocols": {
91
-
"description": "Protocols configures plugin to run on requests received on specific protocols.",
152
+
"type": "array",
153
+
"description": "Protocols configures plugin to run on requests received on specific\nprotocols.",
92
154
"items": {
155
+
"type": "string",
156
+
"description": "KongProtocol is a valid Kong protocol.\nThis alias is necessary to deal with https://github.com/kubernetes-sigs/controller-tools/issues/342",
93
157
"enum": [
94
158
"http",
95
159
"https",
@@ -98,23 +162,111 @@
98
162
"tcp",
99
163
"tls",
100
164
"udp"
101
-
],
102
-
"type": "string"
103
-
},
104
-
"type": "array"
165
+
]
166
+
}
105
167
},
106
168
"run_on": {
107
-
"description": "RunOn configures the plugin to run on the first or the second or both nodes in case of a service mesh deployment.",
169
+
"type": "string",
170
+
"description": "RunOn configures the plugin to run on the first or the second or both\nnodes in case of a service mesh deployment.",
108
171
"enum": [
109
172
"first",
110
173
"second",
111
174
"all"
112
-
],
113
-
"type": "string"
175
+
]
176
+
},
177
+
"status": {
178
+
"type": "object",
179
+
"description": "Status represents the current status of the KongClusterPlugin resource.",
180
+
"properties": {
181
+
"conditions": {
182
+
"type": "array",
183
+
"description": "Conditions describe the current conditions of the KongClusterPluginStatus.\n\nKnown condition types are:\n\n* \"Programmed\"",
184
+
"default": [
185
+
{
186
+
"lastTransitionTime": "1970-01-01T00:00:00Z",
187
+
"message": "Waiting for controller",
188
+
"reason": "Pending",
189
+
"status": "Unknown",
190
+
"type": "Programmed"
191
+
}
192
+
],
193
+
"items": {
194
+
"type": "object",
195
+
"description": "Condition contains details for one aspect of the current state of this API Resource.",
196
+
"properties": {
197
+
"lastTransitionTime": {
198
+
"type": "string",
199
+
"description": "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.",
200
+
"format": "date-time"
201
+
},
202
+
"message": {
203
+
"type": "string",
204
+
"description": "message is a human readable message indicating details about the transition.\nThis may be an empty string.",
205
+
"maxLength": 32768
206
+
},
207
+
"observedGeneration": {
208
+
"type": "integer",
209
+
"description": "observedGeneration represents the .metadata.generation that the condition was set based upon.\nFor instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date\nwith respect to the current state of the instance.",
210
+
"format": "int64",
211
+
"minimum": 0
212
+
},
213
+
"reason": {
214
+
"type": "string",
215
+
"description": "reason contains a programmatic identifier indicating the reason for the condition's last transition.\nProducers of specific condition types may define expected values and meanings for this field,\nand whether the values are considered a guaranteed API.\nThe value should be a CamelCase string.\nThis field may not be empty.",
0 commit comments