github.com/GoogleContainerTools/kpt/porch/api@v0.0.0-20240427025202-5cbd3cbd9237/porchconfig/v1alpha1/config.porch.kpt.dev_functions.yaml (about)

     1  # Copyright 2023 The kpt Authors
     2  #
     3  # Licensed under the Apache License, Version 2.0 (the "License");
     4  # you may not use this file except in compliance with the License.
     5  # You may obtain a copy of the License at
     6  #
     7  #      http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  # Unless required by applicable law or agreed to in writing, software
    10  # distributed under the License is distributed on an "AS IS" BASIS,
    11  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  # See the License for the specific language governing permissions and
    13  # limitations under the License.
    14  
    15  ---
    16  apiVersion: apiextensions.k8s.io/v1
    17  kind: CustomResourceDefinition
    18  metadata:
    19    annotations:
    20      controller-gen.kubebuilder.io/version: v0.8.0
    21    creationTimestamp: null
    22    name: functions.config.porch.kpt.dev
    23  spec:
    24    group: config.porch.kpt.dev
    25    names:
    26      kind: Function
    27      listKind: FunctionList
    28      plural: functions
    29      singular: function
    30    scope: Namespaced
    31    versions:
    32    - name: v1alpha1
    33      schema:
    34        openAPIV3Schema:
    35          description: Function represents a kpt function discovered in a repository
    36            Function resources are created automatically by discovery in a registered
    37            Repository. Function resource names will be computed as <Repository Name>:<Function
    38            Name> to ensure uniqueness of names, and will follow formatting of [DNS
    39            Subdomain Names](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names).
    40          properties:
    41            apiVersion:
    42              description: 'APIVersion defines the versioned schema of this representation
    43                of an object. Servers should convert recognized schemas to the latest
    44                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    45              type: string
    46            kind:
    47              description: 'Kind is a string value representing the REST resource this
    48                object represents. Servers may infer this from the endpoint the client
    49                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    50              type: string
    51            metadata:
    52              type: object
    53            spec:
    54              description: FunctionSpec defines the desired state of a Function
    55              properties:
    56                description:
    57                  description: Description is a short description of the function.
    58                  type: string
    59                documentationUrl:
    60                  description: '`DocumentationUrl specifies the URL of comprehensive
    61                    function documentation`'
    62                  type: string
    63                functionConfigs:
    64                  items:
    65                    description: FunctionConfig specifies all the valid types of the
    66                      function config for this function. If unspecified, defaults to
    67                      v1/ConfigMap. For example, function `set-namespace` accepts both
    68                      `ConfigMap` and `SetNamespace`
    69                    properties:
    70                      apiVersion:
    71                        description: 'APIVersion defines the versioned schema of this
    72                          representation of an object. Servers should convert recognized
    73                          schemas to the latest internal value, and may reject unrecognized
    74                          values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    75                        type: string
    76                      kind:
    77                        description: 'Kind is a string value representing the REST resource
    78                          this object represents. Servers may infer this from the endpoint
    79                          the client submits requests to. Cannot be updated. In CamelCase.
    80                          More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    81                        type: string
    82                      requiredFields:
    83                        description: 'Experimental: requiredFields tells necessary fields
    84                          and is aimed to help users write the FunctionConfig. Otherwise,
    85                          users can get the required fields info from the function evaluation
    86                          error message.'
    87                        items:
    88                          type: string
    89                        type: array
    90                    type: object
    91                  type: array
    92                functionTypes:
    93                  description: FunctionType specifies the function types (mutator, validator
    94                    or/and others).
    95                  items:
    96                    type: string
    97                  type: array
    98                image:
    99                  description: Image specifies the function image, such as 'gcr.io/kpt-fn/gatekeeper:v0.2'.
   100                  type: string
   101                keywords:
   102                  description: Keywords are used as filters to provide correlation in
   103                    function discovery.
   104                  items:
   105                    type: string
   106                  type: array
   107                repositoryRef:
   108                  description: RepositoryRef references the repository in which the
   109                    function is located.
   110                  properties:
   111                    name:
   112                      description: Name of the Repository resource referenced.
   113                      type: string
   114                  required:
   115                  - name
   116                  type: object
   117              required:
   118              - description
   119              - image
   120              - repositoryRef
   121              type: object
   122            status:
   123              description: FunctionStatus defines the observed state of Function
   124              type: object
   125          type: object
   126      served: true
   127      storage: true
   128      subresources:
   129        status: {}
   130  status:
   131    acceptedNames:
   132      kind: ""
   133      plural: ""
   134    conditions: []
   135    storedVersions: []