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