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"