KongPlugin
configuration.konghq.com / v1
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
name: example
apiVersion
string
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
config
object
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 KongPlugin, not both at once.
configFrom object
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 KongPlugin, not both at once.
secretKeyRef object required
Specifies a name and a key of a secret to refer to. The namespace is implicitly set to the one of referring object.
key
string required
The key containing the value.
name
string required
The secret containing the key.
configPatches []object
ConfigPatches represents JSON patches to the configuration of the plugin.
Each item means a JSON patch to add something in the configuration,
where path is specified in `path` and value is in `valueFrom` referencing
a key in a secret.
When Config is specified, patches will be applied to the configuration in Config.
Otherwise, patches will be applied to an empty object.
path
string required
Path is the JSON-Pointer value (RFC6901) that references a location within the target configuration.
valueFrom object required
ValueFrom is the reference to a key of a secret where the patched value comes from.
secretKeyRef object required
Specifies a name and a key of a secret to refer to. The namespace is implicitly set to the one of referring object.
key
string required
The key containing the value.
name
string required
The secret containing the key.
consumerRef
string
ConsumerRef is a reference to a particular consumer.
disabled
boolean
Disabled set if the plugin is disabled or not.
instance_name
string
InstanceName is an optional custom name to identify an instance of the plugin. This is useful when running the
same plugin in multiple contexts, for example, on multiple services.
kind
string
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
metadata
object
ordering object
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.
after
object
PluginOrderingPhase indicates which plugins in a phase should affect the target plugin's order
before
object
PluginOrderingPhase indicates which plugins in a phase should affect the target plugin's order
plugin
string required
PluginName is the name of the plugin to which to apply the config.
protocols
[]string
Protocols configures plugin to run on requests received on specific
protocols.
run_on
string
RunOn configures the plugin to run on the first or the second or both
nodes in case of a service mesh deployment.
enum:
first, second, allstatus object
Status represents the current status of the KongPlugin resource.
conditions []object
Conditions describe the current conditions of the KongPluginStatus.
Known condition types are:
* "Programmed"
maxItems:
8
lastTransitionTime
string required
lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
format:
date-time
message
string required
message is a human readable message indicating details about the transition.
This may be an empty string.
maxLength:
32768
observedGeneration
integer
observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance.
format:
int64minimum:
0
reason
string required
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
pattern:
^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$minLength:
1maxLength:
1024
status
string required
status of the condition, one of True, False, Unknown.
enum:
True, False, Unknown
type
string required
type of condition in CamelCase or in foo.example.com/CamelCase.
pattern:
^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$maxLength:
316No matches. Try .configFrom.secretKeyRef for an exact path