github.com/SamarSidharth/kpt@v0.0.0-20231122062228-c7d747ae3ace/site/reference/schema/kptfile/kptfile.yaml (about)

     1  definitions:
     2    Condition:
     3      properties:
     4        message:
     5          type: string
     6          x-go-name: Message
     7        reason:
     8          type: string
     9          x-go-name: Reason
    10        status:
    11          $ref: '#/definitions/ConditionStatus'
    12        type:
    13          type: string
    14          x-go-name: Type
    15      type: object
    16      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
    17    ConditionStatus:
    18      type: string
    19      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
    20    Function:
    21      properties:
    22        configMap:
    23          additionalProperties:
    24            type: string
    25          description: '`ConfigMap` is a convenient way to specify a function config
    26            of kind ConfigMap.'
    27          type: object
    28          x-go-name: ConfigMap
    29        configPath:
    30          description: |-
    31            `ConfigPath` specifies a slash-delimited relative path to a file in the current directory
    32            containing a KRM resource used as the function config. This resource is
    33            excluded when resolving 'sources', and as a result cannot be operated on
    34            by the pipeline.
    35          type: string
    36          x-go-name: ConfigPath
    37        exclude:
    38          description: |-
    39            `Exclude` are used to specify resources on which the function should NOT be executed.
    40            If not specified, all resources selected by `Selectors` are selected.
    41          items:
    42            $ref: '#/definitions/Selector'
    43          type: array
    44          x-go-name: Exclusions
    45        exec:
    46          description: |-
    47            Exec specifies the function binary executable.
    48            The executable can be fully qualified or it must exists in the $PATH e.g:
    49  
    50            exec: set-namespace
    51            exec: /usr/local/bin/my-custom-fn
    52          type: string
    53          x-go-name: Exec
    54        image:
    55          description: |-
    56            `Image` specifies the function container image.
    57            It can either be fully qualified, e.g.:
    58  
    59            image: gcr.io/kpt-fn/set-labels
    60  
    61            Optionally, kpt can be configured to use a image
    62            registry host-path that will be used to resolve the image path in case
    63            the image path is missing (Defaults to gcr.io/kpt-fn).
    64            e.g. The following resolves to gcr.io/kpt-fn/set-labels:
    65  
    66            image: set-labels
    67          type: string
    68          x-go-name: Image
    69        name:
    70          description: |-
    71            `Name` is used to uniquely identify the function declaration
    72            this is primarily used for merging function declaration with upstream counterparts
    73          type: string
    74          x-go-name: Name
    75        selectors:
    76          description: |-
    77            `Selectors` are used to specify resources on which the function should be executed
    78            if not specified, all resources are selected
    79          items:
    80            $ref: '#/definitions/Selector'
    81          type: array
    82          x-go-name: Selectors
    83      title: Function specifies a KRM function.
    84      type: object
    85      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
    86    Git:
    87      properties:
    88        directory:
    89          description: |-
    90            Directory is the sub directory of the git repository.
    91            e.g. 'staging/cockroachdb'
    92          type: string
    93          x-go-name: Directory
    94        ref:
    95          description: Ref can be a Git branch, tag, or a commit SHA-1.
    96          type: string
    97          x-go-name: Ref
    98        repo:
    99          description: |-
   100            Repo is the git repository the package.
   101            e.g. 'https://github.com/kubernetes/examples.git'
   102          type: string
   103          x-go-name: Repo
   104      title: Git is the user-specified locator for a package on Git.
   105      type: object
   106      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   107    GitLock:
   108      properties:
   109        commit:
   110          description: |-
   111            Commit is the SHA-1 for the last fetch of the package.
   112            This is set by kpt for bookkeeping purposes.
   113          type: string
   114          x-go-name: Commit
   115        directory:
   116          description: |-
   117            Directory is the sub directory of the git repository that was fetched.
   118            e.g. 'staging/cockroachdb'
   119          type: string
   120          x-go-name: Directory
   121        ref:
   122          description: |-
   123            Ref can be a Git branch, tag, or a commit SHA-1 that was fetched.
   124            e.g. 'master'
   125          type: string
   126          x-go-name: Ref
   127        repo:
   128          description: |-
   129            Repo is the git repository that was fetched.
   130            e.g. 'https://github.com/kubernetes/examples.git'
   131          type: string
   132          x-go-name: Repo
   133      title: GitLock is the resolved locator for a package on Git.
   134      type: object
   135      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   136    Inventory:
   137      description: All of the the parameters are required if any are set.
   138      properties:
   139        annotations:
   140          additionalProperties:
   141            type: string
   142          type: object
   143          x-go-name: Annotations
   144        inventoryID:
   145          description: Unique label to identify inventory resource in cluster.
   146          type: string
   147          x-go-name: InventoryID
   148        labels:
   149          additionalProperties:
   150            type: string
   151          type: object
   152          x-go-name: Labels
   153        name:
   154          description: Name of the inventory resource.
   155          type: string
   156          x-go-name: Name
   157        namespace:
   158          description: Namespace for the inventory resource.
   159          type: string
   160          x-go-name: Namespace
   161      title: Inventory encapsulates the parameters for the inventory resource applied
   162        to a cluster.
   163      type: object
   164      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   165    NameMeta:
   166      properties:
   167        name:
   168          description: Name is the metadata.name field of a Resource
   169          type: string
   170          x-go-name: Name
   171        namespace:
   172          description: Namespace is the metadata.namespace field of a Resource
   173          type: string
   174          x-go-name: Namespace
   175      title: NameMeta contains name information.
   176      type: object
   177      x-go-package: sigs.k8s.io/kustomize/kyaml/yaml
   178    ObjectMeta:
   179      description: ObjectMeta contains metadata about a Resource
   180      properties:
   181        annotations:
   182          additionalProperties:
   183            type: string
   184          description: Annotations is the metadata.annotations field of a Resource.
   185          type: object
   186          x-go-name: Annotations
   187        labels:
   188          additionalProperties:
   189            type: string
   190          description: Labels is the metadata.labels field of a Resource
   191          type: object
   192          x-go-name: Labels
   193        name:
   194          description: Name is the metadata.name field of a Resource
   195          type: string
   196          x-go-name: Name
   197        namespace:
   198          description: Namespace is the metadata.namespace field of a Resource
   199          type: string
   200          x-go-name: Namespace
   201      type: object
   202      x-go-package: sigs.k8s.io/kustomize/kyaml/yaml
   203    OriginType:
   204      title: OriginType defines the type of origin for a package.
   205      type: string
   206      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   207    PackageInfo:
   208      description: |-
   209        These fields are not consumed by any functionality in kpt and are simply passed through.
   210        Note that like any other KRM resource, humans and automation can also use `metadata.labels` and
   211        `metadata.annotations` as the extension mechanism.
   212      properties:
   213        description:
   214          description: Description contains a short description of the package.
   215          type: string
   216          x-go-name: Description
   217        emails:
   218          description: Email is the list of emails for the package authors.
   219          items:
   220            type: string
   221          type: array
   222          x-go-name: Emails
   223        keywords:
   224          description: Keywords is a list of keywords for this package.
   225          items:
   226            type: string
   227          type: array
   228          x-go-name: Keywords
   229        license:
   230          description: 'SPDX license identifier (e.g. "Apache-2.0"). See: https://spdx.org/licenses/'
   231          type: string
   232          x-go-name: License
   233        licenseFile:
   234          description: Relative slash-delimited path to the license file (e.g. LICENSE.txt)
   235          type: string
   236          x-go-name: LicenseFile
   237        man:
   238          description: Man is the path to documentation about the package
   239          type: string
   240          x-go-name: Man
   241        readinessGates:
   242          items:
   243            $ref: '#/definitions/ReadinessGate'
   244          type: array
   245          x-go-name: ReadinessGates
   246        site:
   247          description: Site is the URL for package web page.
   248          type: string
   249          x-go-name: Site
   250      title: PackageInfo contains optional information about the package such as license,
   251        documentation, etc.
   252      type: object
   253      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   254    Pipeline:
   255      properties:
   256        mutators:
   257          description: Mutators defines a list of of KRM functions that mutate resources.
   258          items:
   259            $ref: '#/definitions/Function'
   260          type: array
   261          x-go-name: Mutators
   262        validators:
   263          description: |-
   264            Validators defines a list of KRM functions that validate resources.
   265            Validators are not permitted to mutate resources.
   266          items:
   267            $ref: '#/definitions/Function'
   268          type: array
   269          x-go-name: Validators
   270      title: Pipeline declares a pipeline of functions used to mutate or validate resources.
   271      type: object
   272      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   273    ReadinessGate:
   274      properties:
   275        conditionType:
   276          type: string
   277          x-go-name: ConditionType
   278      type: object
   279      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   280    ResourceMeta:
   281      properties:
   282        annotations:
   283          additionalProperties:
   284            type: string
   285          description: Annotations is the metadata.annotations field of a Resource.
   286          type: object
   287          x-go-name: Annotations
   288        apiVersion:
   289          description: APIVersion is the apiVersion field of a Resource
   290          type: string
   291          x-go-name: APIVersion
   292        kind:
   293          description: Kind is the kind field of a Resource
   294          type: string
   295          x-go-name: Kind
   296        labels:
   297          additionalProperties:
   298            type: string
   299          description: Labels is the metadata.labels field of a Resource
   300          type: object
   301          x-go-name: Labels
   302        name:
   303          description: Name is the metadata.name field of a Resource
   304          type: string
   305          x-go-name: Name
   306        namespace:
   307          description: Namespace is the metadata.namespace field of a Resource
   308          type: string
   309          x-go-name: Namespace
   310      title: ResourceMeta contains the metadata for a both Resource Type and Resource.
   311      type: object
   312      x-go-package: sigs.k8s.io/kustomize/kyaml/yaml
   313    Selector:
   314      description: |-
   315        Selector specifies the selection criteria
   316        please update IsEmpty method if more properties are added
   317      properties:
   318        annotations:
   319          additionalProperties:
   320            type: string
   321          description: Annotations on the target resources
   322          type: object
   323          x-go-name: Annotations
   324        apiVersion:
   325          description: APIVersion of the target resources
   326          type: string
   327          x-go-name: APIVersion
   328        kind:
   329          description: Kind of the target resources
   330          type: string
   331          x-go-name: Kind
   332        labels:
   333          additionalProperties:
   334            type: string
   335          description: Labels on the target resources
   336          type: object
   337          x-go-name: Labels
   338        name:
   339          description: Name of the target resources
   340          type: string
   341          x-go-name: Name
   342        namespace:
   343          description: Namespace of the target resources
   344          type: string
   345          x-go-name: Namespace
   346      type: object
   347      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   348    Status:
   349      properties:
   350        conditions:
   351          items:
   352            $ref: '#/definitions/Condition'
   353          type: array
   354          x-go-name: Conditions
   355      type: object
   356      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   357    TypeMeta:
   358      description: |-
   359        TypeMeta partially copies apimachinery/pkg/apis/meta/v1.TypeMeta
   360        No need for a direct dependence; the fields are stable.
   361      properties:
   362        apiVersion:
   363          description: APIVersion is the apiVersion field of a Resource
   364          type: string
   365          x-go-name: APIVersion
   366        kind:
   367          description: Kind is the kind field of a Resource
   368          type: string
   369          x-go-name: Kind
   370      type: object
   371      x-go-package: sigs.k8s.io/kustomize/kyaml/yaml
   372    UpdateStrategyType:
   373      title: UpdateStrategyType defines the strategy for updating a package from upstream.
   374      type: string
   375      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   376    Upstream:
   377      properties:
   378        git:
   379          $ref: '#/definitions/Git'
   380        type:
   381          $ref: '#/definitions/OriginType'
   382        updateStrategy:
   383          $ref: '#/definitions/UpdateStrategyType'
   384      title: Upstream is a user-specified upstream locator for a package.
   385      type: object
   386      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   387    UpstreamLock:
   388      properties:
   389        git:
   390          $ref: '#/definitions/GitLock'
   391        type:
   392          $ref: '#/definitions/OriginType'
   393      title: UpstreamLock is a resolved locator for the last fetch of the package.
   394      type: object
   395      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   396    kptfile:
   397      properties:
   398        annotations:
   399          additionalProperties:
   400            type: string
   401          description: Annotations is the metadata.annotations field of a Resource.
   402          type: object
   403          x-go-name: Annotations
   404        apiVersion:
   405          description: APIVersion is the apiVersion field of a Resource
   406          type: string
   407          x-go-name: APIVersion
   408        info:
   409          $ref: '#/definitions/PackageInfo'
   410        inventory:
   411          $ref: '#/definitions/Inventory'
   412        kind:
   413          description: Kind is the kind field of a Resource
   414          type: string
   415          x-go-name: Kind
   416        labels:
   417          additionalProperties:
   418            type: string
   419          description: Labels is the metadata.labels field of a Resource
   420          type: object
   421          x-go-name: Labels
   422        name:
   423          description: Name is the metadata.name field of a Resource
   424          type: string
   425          x-go-name: Name
   426        namespace:
   427          description: Namespace is the metadata.namespace field of a Resource
   428          type: string
   429          x-go-name: Namespace
   430        pipeline:
   431          $ref: '#/definitions/Pipeline'
   432        status:
   433          $ref: '#/definitions/Status'
   434        upstream:
   435          $ref: '#/definitions/Upstream'
   436        upstreamLock:
   437          $ref: '#/definitions/UpstreamLock'
   438      title: KptFile contains information about a package managed with kpt.
   439      type: object
   440      x-go-name: KptFile
   441      x-go-package: github.com/GoogleContainerTools/kpt/pkg/api/kptfile/v1
   442  info:
   443    title: Kptfile schema.
   444    version: v1
   445  paths: {}
   446  swagger: "2.0"