...

Text file src/edge-infra.dev/test/fixtures/crds/edge/iam.edge-infra.dev_clients.yaml

Documentation: edge-infra.dev/test/fixtures/crds/edge

     1apiVersion: apiextensions.k8s.io/v1
     2kind: CustomResourceDefinition
     3metadata:
     4  name: clients.iam.edge-infra.dev
     5  annotations:
     6    controller-gen.kubebuilder.io/version: (unknown)
     7spec:
     8  group: iam.edge-infra.dev
     9  names:
    10    kind: Client
    11    listKind: ClientList
    12    plural: clients
    13    singular: client
    14  scope: Namespaced
    15  versions:
    16  - name: v1alpha1
    17    additionalPrinterColumns:
    18    - name: Reason
    19      type: string
    20      jsonPath: .status.conditions[0].reason
    21    - name: Message
    22      type: string
    23      jsonPath: .status.conditions[0].message
    24    - name: Age
    25      type: date
    26      jsonPath: .metadata.creationTimestamp
    27    schema:
    28      openAPIV3Schema:
    29        type: object
    30        description: Client is the Schema for the clients API
    31        properties:
    32          apiVersion:
    33            type: string
    34            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'
    35          kind:
    36            type: string
    37            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'
    38          metadata:
    39            type: object
    40          spec:
    41            type: object
    42            description: ClientSpec defines the desired state of Client
    43            properties:
    44              audience:
    45                type: array
    46                description: Audience is a whitelist defining the audiences this client is allowed to request tokens for
    47                items:
    48                  type: string
    49              clientName:
    50                type: string
    51                description: ClientName is the human-readable string name of the client to be presented to the end-user during authorization.
    52              grantTypes:
    53                type: array
    54                description: GrantTypes is an array of grant types the client is allowed to use.
    55                items:
    56                  type: string
    57                maxItems: 5
    58                minItems: 1
    59              printBarcodeTypes:
    60                type: array
    61                description: PrintBarcodeTypes is an array that tells Edge-ID about client's printing capabilities.
    62                items:
    63                  type: string
    64                maxItems: 2
    65              printBarcodeUri:
    66                type: string
    67                description: PrintBarcodeURI is the redirect URI of the client where print barcode is handled.
    68              redirectUris:
    69                type: array
    70                description: RedirectURIs is an array of the redirect URIs allowed for the application
    71                items:
    72                  type: string
    73              responseModes:
    74                type: array
    75                description: ResponseModes is an array of response modes that client is allowed to send
    76                items:
    77                  type: string
    78                maxItems: 3
    79                minItems: 0
    80              responseTypes:
    81                type: array
    82                description: ResponseTypes is an array of the OAuth 2.0 response type strings that the client can use at the authorization endpoint.
    83                items:
    84                  type: string
    85                maxItems: 3
    86                minItems: 1
    87              roles:
    88                type: array
    89                description: Roles is an array of roles the client has.
    90                items:
    91                  type: string
    92                maxItems: 100
    93                minItems: 0
    94              scope:
    95                type: string
    96                description: Scope is a string containing a space-separated list of scope values (as described in Section 3.3 of OAuth 2.0 [RFC6749]) that the client can use when requesting access tokens.
    97                pattern: ([a-zA-Z0-9\.\*]+\s?)+
    98              secretName:
    99                type: string
   100                description: SecretName points to the K8s secret that contains this client's ID and password
   101                maxLength: 253
   102                minLength: 1
   103                pattern: '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*'
   104            required:
   105            - grantTypes
   106            - secretName
   107          status:
   108            type: object
   109            description: ClientStatus defines the observed state of Client
   110            properties:
   111              conditions:
   112                type: array
   113                description: 'INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "make" to regenerate code after modifying this file'
   114                items:
   115                  type: object
   116                  description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions.  For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
   117                  properties:
   118                    type:
   119                      type: string
   120                      description: type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
   121                      maxLength: 316
   122                      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])$
   123                    status:
   124                      type: string
   125                      description: status of the condition, one of True, False, Unknown.
   126                      enum:
   127                      - "True"
   128                      - "False"
   129                      - Unknown
   130                    lastTransitionTime:
   131                      type: string
   132                      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.
   133                      format: date-time
   134                    message:
   135                      type: string
   136                      description: message is a human readable message indicating details about the transition. This may be an empty string.
   137                      maxLength: 32768
   138                    observedGeneration:
   139                      type: integer
   140                      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.
   141                      format: int64
   142                      minimum: 0
   143                    reason:
   144                      type: string
   145                      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.
   146                      maxLength: 1024
   147                      minLength: 1
   148                      pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
   149                  required:
   150                  - lastTransitionTime
   151                  - message
   152                  - reason
   153                  - status
   154                  - type
   155              reconciliationError:
   156                type: object
   157                description: ReconciliationError represents an error that occurred during the reconciliation process
   158                properties:
   159                  description:
   160                    type: string
   161                    description: Description is the description of the reconciliation error
   162                  statusCode:
   163                    type: string
   164                    description: Code is the status code of the reconciliation error
   165    served: true
   166    storage: true
   167    subresources:
   168      status: {}

View as plain text