blob: 187bc113d686c7668f9eaf1d25478b2dd14fde9f [file] [log] [blame]
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.17.2
name: consumers.apisix.apache.org
spec:
group: apisix.apache.org
names:
kind: Consumer
listKind: ConsumerList
plural: consumers
singular: consumer
scope: Namespaced
versions:
- name: v1alpha1
schema:
openAPIV3Schema:
description: Consumer defines configuration for a consumer.
properties:
apiVersion:
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
type: string
kind:
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
type: string
metadata:
type: object
spec:
description: |-
ConsumerSpec defines configuration for a consumer, including consumer name,
authentication credentials, and plugin settings.
properties:
credentials:
description: Credentials specifies the credential details of a consumer.
items:
properties:
config:
description: Config specifies the credential details for authentication.
x-kubernetes-preserve-unknown-fields: true
name:
description: Name is the name of the credential.
type: string
secretRef:
description: SecretRef references to the Secret that contains
the credentials.
properties:
name:
description: Name is the name of the secret.
type: string
namespace:
description: Namespace is the namespace of the secret.
type: string
required:
- name
type: object
type:
description: |-
Type specifies the type of authentication to configure credentials for.
Can be `jwt-auth`, `basic-auth`, `key-auth`, or `hmac-auth`.
enum:
- jwt-auth
- basic-auth
- key-auth
- hmac-auth
type: string
required:
- type
type: object
type: array
gatewayRef:
description: GatewayRef specifies the gateway details.
properties:
group:
default: gateway.networking.k8s.io
description: Group is the API group the resource belongs to. Default
is `gateway.networking.k8s.io`.
type: string
kind:
default: Gateway
description: Kind is the type of Kubernetes object. Default is
`Gateway`.
type: string
name:
description: Name is the name of the gateway.
minLength: 1
type: string
namespace:
description: Namespace is namespace of the resource.
type: string
required:
- name
type: object
plugins:
description: Plugins define the plugins associated with a consumer.
items:
properties:
config:
description: Config is plugin configuration details.
x-kubernetes-preserve-unknown-fields: true
name:
description: Name is the name of the plugin.
type: string
required:
- name
type: object
type: array
type: object
status:
properties:
conditions:
items:
description: Condition contains details for one aspect of the current
state of this API Resource.
properties:
lastTransitionTime:
description: |-
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
type: string
message:
description: |-
message is a human readable message indicating details about the transition.
This may be an empty string.
maxLength: 32768
type: string
observedGeneration:
description: |-
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: int64
minimum: 0
type: integer
reason:
description: |-
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.
maxLength: 1024
minLength: 1
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
type: string
status:
description: status of the condition, one of True, False, Unknown.
enum:
- "True"
- "False"
- Unknown
type: string
type:
description: type of condition in CamelCase or in foo.example.com/CamelCase.
maxLength: 316
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])$
type: string
required:
- lastTransitionTime
- message
- reason
- status
- type
type: object
type: array
type: object
type: object
served: true
storage: true
subresources:
status: {}