My Helm deployments for Minecraft instances in my k3s cluster

Add Flux v2.7.3 component manifests

Flux b9a6d280

Changed files
+10193
flux-system
+10193
flux-system/gotk-components.yaml
··· 1 + --- 2 + # This manifest was generated by flux. DO NOT EDIT. 3 + # Flux Version: v2.7.3 4 + # Components: source-controller,kustomize-controller,helm-controller,notification-controller 5 + apiVersion: v1 6 + kind: Namespace 7 + metadata: 8 + labels: 9 + app.kubernetes.io/instance: flux-system 10 + app.kubernetes.io/part-of: flux 11 + app.kubernetes.io/version: v2.7.3 12 + pod-security.kubernetes.io/warn: restricted 13 + pod-security.kubernetes.io/warn-version: latest 14 + name: flux-system 15 + --- 16 + apiVersion: networking.k8s.io/v1 17 + kind: NetworkPolicy 18 + metadata: 19 + labels: 20 + app.kubernetes.io/instance: flux-system 21 + app.kubernetes.io/part-of: flux 22 + app.kubernetes.io/version: v2.7.3 23 + name: allow-egress 24 + namespace: flux-system 25 + spec: 26 + egress: 27 + - {} 28 + ingress: 29 + - from: 30 + - podSelector: {} 31 + podSelector: {} 32 + policyTypes: 33 + - Ingress 34 + - Egress 35 + --- 36 + apiVersion: networking.k8s.io/v1 37 + kind: NetworkPolicy 38 + metadata: 39 + labels: 40 + app.kubernetes.io/instance: flux-system 41 + app.kubernetes.io/part-of: flux 42 + app.kubernetes.io/version: v2.7.3 43 + name: allow-scraping 44 + namespace: flux-system 45 + spec: 46 + ingress: 47 + - from: 48 + - namespaceSelector: {} 49 + ports: 50 + - port: 8080 51 + protocol: TCP 52 + podSelector: {} 53 + policyTypes: 54 + - Ingress 55 + --- 56 + apiVersion: networking.k8s.io/v1 57 + kind: NetworkPolicy 58 + metadata: 59 + labels: 60 + app.kubernetes.io/instance: flux-system 61 + app.kubernetes.io/part-of: flux 62 + app.kubernetes.io/version: v2.7.3 63 + name: allow-webhooks 64 + namespace: flux-system 65 + spec: 66 + ingress: 67 + - from: 68 + - namespaceSelector: {} 69 + podSelector: 70 + matchLabels: 71 + app: notification-controller 72 + policyTypes: 73 + - Ingress 74 + --- 75 + apiVersion: v1 76 + kind: ResourceQuota 77 + metadata: 78 + labels: 79 + app.kubernetes.io/instance: flux-system 80 + app.kubernetes.io/part-of: flux 81 + app.kubernetes.io/version: v2.7.3 82 + name: critical-pods-flux-system 83 + namespace: flux-system 84 + spec: 85 + hard: 86 + pods: "1000" 87 + scopeSelector: 88 + matchExpressions: 89 + - operator: In 90 + scopeName: PriorityClass 91 + values: 92 + - system-node-critical 93 + - system-cluster-critical 94 + --- 95 + apiVersion: rbac.authorization.k8s.io/v1 96 + kind: ClusterRole 97 + metadata: 98 + labels: 99 + app.kubernetes.io/instance: flux-system 100 + app.kubernetes.io/part-of: flux 101 + app.kubernetes.io/version: v2.7.3 102 + name: crd-controller-flux-system 103 + rules: 104 + - apiGroups: 105 + - source.toolkit.fluxcd.io 106 + resources: 107 + - '*' 108 + verbs: 109 + - '*' 110 + - apiGroups: 111 + - kustomize.toolkit.fluxcd.io 112 + resources: 113 + - '*' 114 + verbs: 115 + - '*' 116 + - apiGroups: 117 + - helm.toolkit.fluxcd.io 118 + resources: 119 + - '*' 120 + verbs: 121 + - '*' 122 + - apiGroups: 123 + - notification.toolkit.fluxcd.io 124 + resources: 125 + - '*' 126 + verbs: 127 + - '*' 128 + - apiGroups: 129 + - image.toolkit.fluxcd.io 130 + resources: 131 + - '*' 132 + verbs: 133 + - '*' 134 + - apiGroups: 135 + - source.extensions.fluxcd.io 136 + resources: 137 + - '*' 138 + verbs: 139 + - '*' 140 + - apiGroups: 141 + - "" 142 + resources: 143 + - namespaces 144 + - secrets 145 + - configmaps 146 + - serviceaccounts 147 + verbs: 148 + - get 149 + - list 150 + - watch 151 + - apiGroups: 152 + - "" 153 + resources: 154 + - events 155 + verbs: 156 + - create 157 + - patch 158 + - apiGroups: 159 + - "" 160 + resources: 161 + - configmaps 162 + verbs: 163 + - get 164 + - list 165 + - watch 166 + - create 167 + - update 168 + - patch 169 + - delete 170 + - apiGroups: 171 + - "" 172 + resources: 173 + - configmaps/status 174 + verbs: 175 + - get 176 + - update 177 + - patch 178 + - apiGroups: 179 + - coordination.k8s.io 180 + resources: 181 + - leases 182 + verbs: 183 + - get 184 + - list 185 + - watch 186 + - create 187 + - update 188 + - patch 189 + - delete 190 + - apiGroups: 191 + - "" 192 + resources: 193 + - serviceaccounts/token 194 + verbs: 195 + - create 196 + - nonResourceURLs: 197 + - /livez/ping 198 + verbs: 199 + - head 200 + --- 201 + apiVersion: rbac.authorization.k8s.io/v1 202 + kind: ClusterRole 203 + metadata: 204 + labels: 205 + app.kubernetes.io/instance: flux-system 206 + app.kubernetes.io/part-of: flux 207 + app.kubernetes.io/version: v2.7.3 208 + rbac.authorization.k8s.io/aggregate-to-admin: "true" 209 + rbac.authorization.k8s.io/aggregate-to-edit: "true" 210 + name: flux-edit-flux-system 211 + rules: 212 + - apiGroups: 213 + - notification.toolkit.fluxcd.io 214 + - source.toolkit.fluxcd.io 215 + - helm.toolkit.fluxcd.io 216 + - image.toolkit.fluxcd.io 217 + - kustomize.toolkit.fluxcd.io 218 + resources: 219 + - '*' 220 + verbs: 221 + - create 222 + - delete 223 + - deletecollection 224 + - patch 225 + - update 226 + --- 227 + apiVersion: rbac.authorization.k8s.io/v1 228 + kind: ClusterRole 229 + metadata: 230 + labels: 231 + app.kubernetes.io/instance: flux-system 232 + app.kubernetes.io/part-of: flux 233 + app.kubernetes.io/version: v2.7.3 234 + rbac.authorization.k8s.io/aggregate-to-admin: "true" 235 + rbac.authorization.k8s.io/aggregate-to-edit: "true" 236 + rbac.authorization.k8s.io/aggregate-to-view: "true" 237 + name: flux-view-flux-system 238 + rules: 239 + - apiGroups: 240 + - notification.toolkit.fluxcd.io 241 + - source.toolkit.fluxcd.io 242 + - helm.toolkit.fluxcd.io 243 + - image.toolkit.fluxcd.io 244 + - kustomize.toolkit.fluxcd.io 245 + resources: 246 + - '*' 247 + verbs: 248 + - get 249 + - list 250 + - watch 251 + --- 252 + apiVersion: rbac.authorization.k8s.io/v1 253 + kind: ClusterRoleBinding 254 + metadata: 255 + labels: 256 + app.kubernetes.io/instance: flux-system 257 + app.kubernetes.io/part-of: flux 258 + app.kubernetes.io/version: v2.7.3 259 + name: cluster-reconciler-flux-system 260 + roleRef: 261 + apiGroup: rbac.authorization.k8s.io 262 + kind: ClusterRole 263 + name: cluster-admin 264 + subjects: 265 + - kind: ServiceAccount 266 + name: kustomize-controller 267 + namespace: flux-system 268 + - kind: ServiceAccount 269 + name: helm-controller 270 + namespace: flux-system 271 + --- 272 + apiVersion: rbac.authorization.k8s.io/v1 273 + kind: ClusterRoleBinding 274 + metadata: 275 + labels: 276 + app.kubernetes.io/instance: flux-system 277 + app.kubernetes.io/part-of: flux 278 + app.kubernetes.io/version: v2.7.3 279 + name: crd-controller-flux-system 280 + roleRef: 281 + apiGroup: rbac.authorization.k8s.io 282 + kind: ClusterRole 283 + name: crd-controller-flux-system 284 + subjects: 285 + - kind: ServiceAccount 286 + name: kustomize-controller 287 + namespace: flux-system 288 + - kind: ServiceAccount 289 + name: helm-controller 290 + namespace: flux-system 291 + - kind: ServiceAccount 292 + name: source-controller 293 + namespace: flux-system 294 + - kind: ServiceAccount 295 + name: notification-controller 296 + namespace: flux-system 297 + - kind: ServiceAccount 298 + name: image-reflector-controller 299 + namespace: flux-system 300 + - kind: ServiceAccount 301 + name: image-automation-controller 302 + namespace: flux-system 303 + - kind: ServiceAccount 304 + name: source-watcher 305 + namespace: flux-system 306 + --- 307 + apiVersion: apiextensions.k8s.io/v1 308 + kind: CustomResourceDefinition 309 + metadata: 310 + annotations: 311 + controller-gen.kubebuilder.io/version: v0.19.0 312 + labels: 313 + app.kubernetes.io/component: source-controller 314 + app.kubernetes.io/instance: flux-system 315 + app.kubernetes.io/part-of: flux 316 + app.kubernetes.io/version: v2.7.3 317 + name: buckets.source.toolkit.fluxcd.io 318 + spec: 319 + group: source.toolkit.fluxcd.io 320 + names: 321 + kind: Bucket 322 + listKind: BucketList 323 + plural: buckets 324 + singular: bucket 325 + scope: Namespaced 326 + versions: 327 + - additionalPrinterColumns: 328 + - jsonPath: .spec.endpoint 329 + name: Endpoint 330 + type: string 331 + - jsonPath: .metadata.creationTimestamp 332 + name: Age 333 + type: date 334 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 335 + name: Ready 336 + type: string 337 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 338 + name: Status 339 + type: string 340 + name: v1 341 + schema: 342 + openAPIV3Schema: 343 + description: Bucket is the Schema for the buckets API. 344 + properties: 345 + apiVersion: 346 + description: |- 347 + APIVersion defines the versioned schema of this representation of an object. 348 + Servers should convert recognized schemas to the latest internal value, and 349 + may reject unrecognized values. 350 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 351 + type: string 352 + kind: 353 + description: |- 354 + Kind is a string value representing the REST resource this object represents. 355 + Servers may infer this from the endpoint the client submits requests to. 356 + Cannot be updated. 357 + In CamelCase. 358 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 359 + type: string 360 + metadata: 361 + type: object 362 + spec: 363 + description: |- 364 + BucketSpec specifies the required configuration to produce an Artifact for 365 + an object storage bucket. 366 + properties: 367 + bucketName: 368 + description: BucketName is the name of the object storage bucket. 369 + type: string 370 + certSecretRef: 371 + description: |- 372 + CertSecretRef can be given the name of a Secret containing 373 + either or both of 374 + 375 + - a PEM-encoded client certificate (`tls.crt`) and private 376 + key (`tls.key`); 377 + - a PEM-encoded CA certificate (`ca.crt`) 378 + 379 + and whichever are supplied, will be used for connecting to the 380 + bucket. The client cert and key are useful if you are 381 + authenticating with a certificate; the CA cert is useful if 382 + you are using a self-signed server certificate. The Secret must 383 + be of type `Opaque` or `kubernetes.io/tls`. 384 + 385 + This field is only supported for the `generic` provider. 386 + properties: 387 + name: 388 + description: Name of the referent. 389 + type: string 390 + required: 391 + - name 392 + type: object 393 + endpoint: 394 + description: Endpoint is the object storage address the BucketName 395 + is located at. 396 + type: string 397 + ignore: 398 + description: |- 399 + Ignore overrides the set of excluded patterns in the .sourceignore format 400 + (which is the same as .gitignore). If not provided, a default will be used, 401 + consult the documentation for your version to find out what those are. 402 + type: string 403 + insecure: 404 + description: Insecure allows connecting to a non-TLS HTTP Endpoint. 405 + type: boolean 406 + interval: 407 + description: |- 408 + Interval at which the Bucket Endpoint is checked for updates. 409 + This interval is approximate and may be subject to jitter to ensure 410 + efficient use of resources. 411 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 412 + type: string 413 + prefix: 414 + description: Prefix to use for server-side filtering of files in the 415 + Bucket. 416 + type: string 417 + provider: 418 + default: generic 419 + description: |- 420 + Provider of the object storage bucket. 421 + Defaults to 'generic', which expects an S3 (API) compatible object 422 + storage. 423 + enum: 424 + - generic 425 + - aws 426 + - gcp 427 + - azure 428 + type: string 429 + proxySecretRef: 430 + description: |- 431 + ProxySecretRef specifies the Secret containing the proxy configuration 432 + to use while communicating with the Bucket server. 433 + properties: 434 + name: 435 + description: Name of the referent. 436 + type: string 437 + required: 438 + - name 439 + type: object 440 + region: 441 + description: Region of the Endpoint where the BucketName is located 442 + in. 443 + type: string 444 + secretRef: 445 + description: |- 446 + SecretRef specifies the Secret containing authentication credentials 447 + for the Bucket. 448 + properties: 449 + name: 450 + description: Name of the referent. 451 + type: string 452 + required: 453 + - name 454 + type: object 455 + serviceAccountName: 456 + description: |- 457 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 458 + the bucket. This field is only supported for the 'gcp' and 'aws' providers. 459 + For more information about workload identity: 460 + https://fluxcd.io/flux/components/source/buckets/#workload-identity 461 + type: string 462 + sts: 463 + description: |- 464 + STS specifies the required configuration to use a Security Token 465 + Service for fetching temporary credentials to authenticate in a 466 + Bucket provider. 467 + 468 + This field is only supported for the `aws` and `generic` providers. 469 + properties: 470 + certSecretRef: 471 + description: |- 472 + CertSecretRef can be given the name of a Secret containing 473 + either or both of 474 + 475 + - a PEM-encoded client certificate (`tls.crt`) and private 476 + key (`tls.key`); 477 + - a PEM-encoded CA certificate (`ca.crt`) 478 + 479 + and whichever are supplied, will be used for connecting to the 480 + STS endpoint. The client cert and key are useful if you are 481 + authenticating with a certificate; the CA cert is useful if 482 + you are using a self-signed server certificate. The Secret must 483 + be of type `Opaque` or `kubernetes.io/tls`. 484 + 485 + This field is only supported for the `ldap` provider. 486 + properties: 487 + name: 488 + description: Name of the referent. 489 + type: string 490 + required: 491 + - name 492 + type: object 493 + endpoint: 494 + description: |- 495 + Endpoint is the HTTP/S endpoint of the Security Token Service from 496 + where temporary credentials will be fetched. 497 + pattern: ^(http|https)://.*$ 498 + type: string 499 + provider: 500 + description: Provider of the Security Token Service. 501 + enum: 502 + - aws 503 + - ldap 504 + type: string 505 + secretRef: 506 + description: |- 507 + SecretRef specifies the Secret containing authentication credentials 508 + for the STS endpoint. This Secret must contain the fields `username` 509 + and `password` and is supported only for the `ldap` provider. 510 + properties: 511 + name: 512 + description: Name of the referent. 513 + type: string 514 + required: 515 + - name 516 + type: object 517 + required: 518 + - endpoint 519 + - provider 520 + type: object 521 + suspend: 522 + description: |- 523 + Suspend tells the controller to suspend the reconciliation of this 524 + Bucket. 525 + type: boolean 526 + timeout: 527 + default: 60s 528 + description: Timeout for fetch operations, defaults to 60s. 529 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 530 + type: string 531 + required: 532 + - bucketName 533 + - endpoint 534 + - interval 535 + type: object 536 + x-kubernetes-validations: 537 + - message: STS configuration is only supported for the 'aws' and 'generic' 538 + Bucket providers 539 + rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts) 540 + - message: '''aws'' is the only supported STS provider for the ''aws'' 541 + Bucket provider' 542 + rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider 543 + == 'aws' 544 + - message: '''ldap'' is the only supported STS provider for the ''generic'' 545 + Bucket provider' 546 + rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider 547 + == 'ldap' 548 + - message: spec.sts.secretRef is not required for the 'aws' STS provider 549 + rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)' 550 + - message: spec.sts.certSecretRef is not required for the 'aws' STS provider 551 + rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)' 552 + - message: ServiceAccountName is not supported for the 'generic' Bucket 553 + provider 554 + rule: self.provider != 'generic' || !has(self.serviceAccountName) 555 + - message: cannot set both .spec.secretRef and .spec.serviceAccountName 556 + rule: '!has(self.secretRef) || !has(self.serviceAccountName)' 557 + status: 558 + default: 559 + observedGeneration: -1 560 + description: BucketStatus records the observed state of a Bucket. 561 + properties: 562 + artifact: 563 + description: Artifact represents the last successful Bucket reconciliation. 564 + properties: 565 + digest: 566 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 567 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 568 + type: string 569 + lastUpdateTime: 570 + description: |- 571 + LastUpdateTime is the timestamp corresponding to the last update of the 572 + Artifact. 573 + format: date-time 574 + type: string 575 + metadata: 576 + additionalProperties: 577 + type: string 578 + description: Metadata holds upstream information such as OCI annotations. 579 + type: object 580 + path: 581 + description: |- 582 + Path is the relative file path of the Artifact. It can be used to locate 583 + the file in the root of the Artifact storage on the local file system of 584 + the controller managing the Source. 585 + type: string 586 + revision: 587 + description: |- 588 + Revision is a human-readable identifier traceable in the origin source 589 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 590 + type: string 591 + size: 592 + description: Size is the number of bytes in the file. 593 + format: int64 594 + type: integer 595 + url: 596 + description: |- 597 + URL is the HTTP address of the Artifact as exposed by the controller 598 + managing the Source. It can be used to retrieve the Artifact for 599 + consumption, e.g. by another controller applying the Artifact contents. 600 + type: string 601 + required: 602 + - digest 603 + - lastUpdateTime 604 + - path 605 + - revision 606 + - url 607 + type: object 608 + conditions: 609 + description: Conditions holds the conditions for the Bucket. 610 + items: 611 + description: Condition contains details for one aspect of the current 612 + state of this API Resource. 613 + properties: 614 + lastTransitionTime: 615 + description: |- 616 + lastTransitionTime is the last time the condition transitioned from one status to another. 617 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 618 + format: date-time 619 + type: string 620 + message: 621 + description: |- 622 + message is a human readable message indicating details about the transition. 623 + This may be an empty string. 624 + maxLength: 32768 625 + type: string 626 + observedGeneration: 627 + description: |- 628 + observedGeneration represents the .metadata.generation that the condition was set based upon. 629 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 630 + with respect to the current state of the instance. 631 + format: int64 632 + minimum: 0 633 + type: integer 634 + reason: 635 + description: |- 636 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 637 + Producers of specific condition types may define expected values and meanings for this field, 638 + and whether the values are considered a guaranteed API. 639 + The value should be a CamelCase string. 640 + This field may not be empty. 641 + maxLength: 1024 642 + minLength: 1 643 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 644 + type: string 645 + status: 646 + description: status of the condition, one of True, False, Unknown. 647 + enum: 648 + - "True" 649 + - "False" 650 + - Unknown 651 + type: string 652 + type: 653 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 654 + maxLength: 316 655 + 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])$ 656 + type: string 657 + required: 658 + - lastTransitionTime 659 + - message 660 + - reason 661 + - status 662 + - type 663 + type: object 664 + type: array 665 + lastHandledReconcileAt: 666 + description: |- 667 + LastHandledReconcileAt holds the value of the most recent 668 + reconcile request value, so a change of the annotation value 669 + can be detected. 670 + type: string 671 + observedGeneration: 672 + description: ObservedGeneration is the last observed generation of 673 + the Bucket object. 674 + format: int64 675 + type: integer 676 + observedIgnore: 677 + description: |- 678 + ObservedIgnore is the observed exclusion patterns used for constructing 679 + the source artifact. 680 + type: string 681 + url: 682 + description: |- 683 + URL is the dynamic fetch link for the latest Artifact. 684 + It is provided on a "best effort" basis, and using the precise 685 + BucketStatus.Artifact data is recommended. 686 + type: string 687 + type: object 688 + type: object 689 + served: true 690 + storage: true 691 + subresources: 692 + status: {} 693 + - additionalPrinterColumns: 694 + - jsonPath: .spec.endpoint 695 + name: Endpoint 696 + type: string 697 + - jsonPath: .metadata.creationTimestamp 698 + name: Age 699 + type: date 700 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 701 + name: Ready 702 + type: string 703 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 704 + name: Status 705 + type: string 706 + deprecated: true 707 + deprecationWarning: v1beta2 Bucket is deprecated, upgrade to v1 708 + name: v1beta2 709 + schema: 710 + openAPIV3Schema: 711 + description: Bucket is the Schema for the buckets API. 712 + properties: 713 + apiVersion: 714 + description: |- 715 + APIVersion defines the versioned schema of this representation of an object. 716 + Servers should convert recognized schemas to the latest internal value, and 717 + may reject unrecognized values. 718 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 719 + type: string 720 + kind: 721 + description: |- 722 + Kind is a string value representing the REST resource this object represents. 723 + Servers may infer this from the endpoint the client submits requests to. 724 + Cannot be updated. 725 + In CamelCase. 726 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 727 + type: string 728 + metadata: 729 + type: object 730 + spec: 731 + description: |- 732 + BucketSpec specifies the required configuration to produce an Artifact for 733 + an object storage bucket. 734 + properties: 735 + accessFrom: 736 + description: |- 737 + AccessFrom specifies an Access Control List for allowing cross-namespace 738 + references to this object. 739 + NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 740 + properties: 741 + namespaceSelectors: 742 + description: |- 743 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 744 + Items in this list are evaluated using a logical OR operation. 745 + items: 746 + description: |- 747 + NamespaceSelector selects the namespaces to which this ACL applies. 748 + An empty map of MatchLabels matches all namespaces in a cluster. 749 + properties: 750 + matchLabels: 751 + additionalProperties: 752 + type: string 753 + description: |- 754 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 755 + map is equivalent to an element of matchExpressions, whose key field is "key", the 756 + operator is "In", and the values array contains only "value". The requirements are ANDed. 757 + type: object 758 + type: object 759 + type: array 760 + required: 761 + - namespaceSelectors 762 + type: object 763 + bucketName: 764 + description: BucketName is the name of the object storage bucket. 765 + type: string 766 + certSecretRef: 767 + description: |- 768 + CertSecretRef can be given the name of a Secret containing 769 + either or both of 770 + 771 + - a PEM-encoded client certificate (`tls.crt`) and private 772 + key (`tls.key`); 773 + - a PEM-encoded CA certificate (`ca.crt`) 774 + 775 + and whichever are supplied, will be used for connecting to the 776 + bucket. The client cert and key are useful if you are 777 + authenticating with a certificate; the CA cert is useful if 778 + you are using a self-signed server certificate. The Secret must 779 + be of type `Opaque` or `kubernetes.io/tls`. 780 + 781 + This field is only supported for the `generic` provider. 782 + properties: 783 + name: 784 + description: Name of the referent. 785 + type: string 786 + required: 787 + - name 788 + type: object 789 + endpoint: 790 + description: Endpoint is the object storage address the BucketName 791 + is located at. 792 + type: string 793 + ignore: 794 + description: |- 795 + Ignore overrides the set of excluded patterns in the .sourceignore format 796 + (which is the same as .gitignore). If not provided, a default will be used, 797 + consult the documentation for your version to find out what those are. 798 + type: string 799 + insecure: 800 + description: Insecure allows connecting to a non-TLS HTTP Endpoint. 801 + type: boolean 802 + interval: 803 + description: |- 804 + Interval at which the Bucket Endpoint is checked for updates. 805 + This interval is approximate and may be subject to jitter to ensure 806 + efficient use of resources. 807 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 808 + type: string 809 + prefix: 810 + description: Prefix to use for server-side filtering of files in the 811 + Bucket. 812 + type: string 813 + provider: 814 + default: generic 815 + description: |- 816 + Provider of the object storage bucket. 817 + Defaults to 'generic', which expects an S3 (API) compatible object 818 + storage. 819 + enum: 820 + - generic 821 + - aws 822 + - gcp 823 + - azure 824 + type: string 825 + proxySecretRef: 826 + description: |- 827 + ProxySecretRef specifies the Secret containing the proxy configuration 828 + to use while communicating with the Bucket server. 829 + properties: 830 + name: 831 + description: Name of the referent. 832 + type: string 833 + required: 834 + - name 835 + type: object 836 + region: 837 + description: Region of the Endpoint where the BucketName is located 838 + in. 839 + type: string 840 + secretRef: 841 + description: |- 842 + SecretRef specifies the Secret containing authentication credentials 843 + for the Bucket. 844 + properties: 845 + name: 846 + description: Name of the referent. 847 + type: string 848 + required: 849 + - name 850 + type: object 851 + sts: 852 + description: |- 853 + STS specifies the required configuration to use a Security Token 854 + Service for fetching temporary credentials to authenticate in a 855 + Bucket provider. 856 + 857 + This field is only supported for the `aws` and `generic` providers. 858 + properties: 859 + certSecretRef: 860 + description: |- 861 + CertSecretRef can be given the name of a Secret containing 862 + either or both of 863 + 864 + - a PEM-encoded client certificate (`tls.crt`) and private 865 + key (`tls.key`); 866 + - a PEM-encoded CA certificate (`ca.crt`) 867 + 868 + and whichever are supplied, will be used for connecting to the 869 + STS endpoint. The client cert and key are useful if you are 870 + authenticating with a certificate; the CA cert is useful if 871 + you are using a self-signed server certificate. The Secret must 872 + be of type `Opaque` or `kubernetes.io/tls`. 873 + 874 + This field is only supported for the `ldap` provider. 875 + properties: 876 + name: 877 + description: Name of the referent. 878 + type: string 879 + required: 880 + - name 881 + type: object 882 + endpoint: 883 + description: |- 884 + Endpoint is the HTTP/S endpoint of the Security Token Service from 885 + where temporary credentials will be fetched. 886 + pattern: ^(http|https)://.*$ 887 + type: string 888 + provider: 889 + description: Provider of the Security Token Service. 890 + enum: 891 + - aws 892 + - ldap 893 + type: string 894 + secretRef: 895 + description: |- 896 + SecretRef specifies the Secret containing authentication credentials 897 + for the STS endpoint. This Secret must contain the fields `username` 898 + and `password` and is supported only for the `ldap` provider. 899 + properties: 900 + name: 901 + description: Name of the referent. 902 + type: string 903 + required: 904 + - name 905 + type: object 906 + required: 907 + - endpoint 908 + - provider 909 + type: object 910 + suspend: 911 + description: |- 912 + Suspend tells the controller to suspend the reconciliation of this 913 + Bucket. 914 + type: boolean 915 + timeout: 916 + default: 60s 917 + description: Timeout for fetch operations, defaults to 60s. 918 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 919 + type: string 920 + required: 921 + - bucketName 922 + - endpoint 923 + - interval 924 + type: object 925 + x-kubernetes-validations: 926 + - message: STS configuration is only supported for the 'aws' and 'generic' 927 + Bucket providers 928 + rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts) 929 + - message: '''aws'' is the only supported STS provider for the ''aws'' 930 + Bucket provider' 931 + rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider 932 + == 'aws' 933 + - message: '''ldap'' is the only supported STS provider for the ''generic'' 934 + Bucket provider' 935 + rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider 936 + == 'ldap' 937 + - message: spec.sts.secretRef is not required for the 'aws' STS provider 938 + rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)' 939 + - message: spec.sts.certSecretRef is not required for the 'aws' STS provider 940 + rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)' 941 + status: 942 + default: 943 + observedGeneration: -1 944 + description: BucketStatus records the observed state of a Bucket. 945 + properties: 946 + artifact: 947 + description: Artifact represents the last successful Bucket reconciliation. 948 + properties: 949 + digest: 950 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 951 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 952 + type: string 953 + lastUpdateTime: 954 + description: |- 955 + LastUpdateTime is the timestamp corresponding to the last update of the 956 + Artifact. 957 + format: date-time 958 + type: string 959 + metadata: 960 + additionalProperties: 961 + type: string 962 + description: Metadata holds upstream information such as OCI annotations. 963 + type: object 964 + path: 965 + description: |- 966 + Path is the relative file path of the Artifact. It can be used to locate 967 + the file in the root of the Artifact storage on the local file system of 968 + the controller managing the Source. 969 + type: string 970 + revision: 971 + description: |- 972 + Revision is a human-readable identifier traceable in the origin source 973 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 974 + type: string 975 + size: 976 + description: Size is the number of bytes in the file. 977 + format: int64 978 + type: integer 979 + url: 980 + description: |- 981 + URL is the HTTP address of the Artifact as exposed by the controller 982 + managing the Source. It can be used to retrieve the Artifact for 983 + consumption, e.g. by another controller applying the Artifact contents. 984 + type: string 985 + required: 986 + - digest 987 + - lastUpdateTime 988 + - path 989 + - revision 990 + - url 991 + type: object 992 + conditions: 993 + description: Conditions holds the conditions for the Bucket. 994 + items: 995 + description: Condition contains details for one aspect of the current 996 + state of this API Resource. 997 + properties: 998 + lastTransitionTime: 999 + description: |- 1000 + lastTransitionTime is the last time the condition transitioned from one status to another. 1001 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 1002 + format: date-time 1003 + type: string 1004 + message: 1005 + description: |- 1006 + message is a human readable message indicating details about the transition. 1007 + This may be an empty string. 1008 + maxLength: 32768 1009 + type: string 1010 + observedGeneration: 1011 + description: |- 1012 + observedGeneration represents the .metadata.generation that the condition was set based upon. 1013 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 1014 + with respect to the current state of the instance. 1015 + format: int64 1016 + minimum: 0 1017 + type: integer 1018 + reason: 1019 + description: |- 1020 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 1021 + Producers of specific condition types may define expected values and meanings for this field, 1022 + and whether the values are considered a guaranteed API. 1023 + The value should be a CamelCase string. 1024 + This field may not be empty. 1025 + maxLength: 1024 1026 + minLength: 1 1027 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 1028 + type: string 1029 + status: 1030 + description: status of the condition, one of True, False, Unknown. 1031 + enum: 1032 + - "True" 1033 + - "False" 1034 + - Unknown 1035 + type: string 1036 + type: 1037 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 1038 + maxLength: 316 1039 + 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])$ 1040 + type: string 1041 + required: 1042 + - lastTransitionTime 1043 + - message 1044 + - reason 1045 + - status 1046 + - type 1047 + type: object 1048 + type: array 1049 + lastHandledReconcileAt: 1050 + description: |- 1051 + LastHandledReconcileAt holds the value of the most recent 1052 + reconcile request value, so a change of the annotation value 1053 + can be detected. 1054 + type: string 1055 + observedGeneration: 1056 + description: ObservedGeneration is the last observed generation of 1057 + the Bucket object. 1058 + format: int64 1059 + type: integer 1060 + observedIgnore: 1061 + description: |- 1062 + ObservedIgnore is the observed exclusion patterns used for constructing 1063 + the source artifact. 1064 + type: string 1065 + url: 1066 + description: |- 1067 + URL is the dynamic fetch link for the latest Artifact. 1068 + It is provided on a "best effort" basis, and using the precise 1069 + BucketStatus.Artifact data is recommended. 1070 + type: string 1071 + type: object 1072 + type: object 1073 + served: true 1074 + storage: false 1075 + subresources: 1076 + status: {} 1077 + --- 1078 + apiVersion: apiextensions.k8s.io/v1 1079 + kind: CustomResourceDefinition 1080 + metadata: 1081 + annotations: 1082 + controller-gen.kubebuilder.io/version: v0.19.0 1083 + labels: 1084 + app.kubernetes.io/component: source-controller 1085 + app.kubernetes.io/instance: flux-system 1086 + app.kubernetes.io/part-of: flux 1087 + app.kubernetes.io/version: v2.7.3 1088 + name: externalartifacts.source.toolkit.fluxcd.io 1089 + spec: 1090 + group: source.toolkit.fluxcd.io 1091 + names: 1092 + kind: ExternalArtifact 1093 + listKind: ExternalArtifactList 1094 + plural: externalartifacts 1095 + singular: externalartifact 1096 + scope: Namespaced 1097 + versions: 1098 + - additionalPrinterColumns: 1099 + - jsonPath: .metadata.creationTimestamp 1100 + name: Age 1101 + type: date 1102 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 1103 + name: Ready 1104 + type: string 1105 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 1106 + name: Status 1107 + type: string 1108 + - jsonPath: .spec.sourceRef.name 1109 + name: Source 1110 + type: string 1111 + name: v1 1112 + schema: 1113 + openAPIV3Schema: 1114 + description: ExternalArtifact is the Schema for the external artifacts API 1115 + properties: 1116 + apiVersion: 1117 + description: |- 1118 + APIVersion defines the versioned schema of this representation of an object. 1119 + Servers should convert recognized schemas to the latest internal value, and 1120 + may reject unrecognized values. 1121 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 1122 + type: string 1123 + kind: 1124 + description: |- 1125 + Kind is a string value representing the REST resource this object represents. 1126 + Servers may infer this from the endpoint the client submits requests to. 1127 + Cannot be updated. 1128 + In CamelCase. 1129 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 1130 + type: string 1131 + metadata: 1132 + type: object 1133 + spec: 1134 + description: ExternalArtifactSpec defines the desired state of ExternalArtifact 1135 + properties: 1136 + sourceRef: 1137 + description: |- 1138 + SourceRef points to the Kubernetes custom resource for 1139 + which the artifact is generated. 1140 + properties: 1141 + apiVersion: 1142 + description: API version of the referent, if not specified the 1143 + Kubernetes preferred version will be used. 1144 + type: string 1145 + kind: 1146 + description: Kind of the referent. 1147 + type: string 1148 + name: 1149 + description: Name of the referent. 1150 + type: string 1151 + namespace: 1152 + description: Namespace of the referent, when not specified it 1153 + acts as LocalObjectReference. 1154 + type: string 1155 + required: 1156 + - kind 1157 + - name 1158 + type: object 1159 + type: object 1160 + status: 1161 + description: ExternalArtifactStatus defines the observed state of ExternalArtifact 1162 + properties: 1163 + artifact: 1164 + description: Artifact represents the output of an ExternalArtifact 1165 + reconciliation. 1166 + properties: 1167 + digest: 1168 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 1169 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1170 + type: string 1171 + lastUpdateTime: 1172 + description: |- 1173 + LastUpdateTime is the timestamp corresponding to the last update of the 1174 + Artifact. 1175 + format: date-time 1176 + type: string 1177 + metadata: 1178 + additionalProperties: 1179 + type: string 1180 + description: Metadata holds upstream information such as OCI annotations. 1181 + type: object 1182 + path: 1183 + description: |- 1184 + Path is the relative file path of the Artifact. It can be used to locate 1185 + the file in the root of the Artifact storage on the local file system of 1186 + the controller managing the Source. 1187 + type: string 1188 + revision: 1189 + description: |- 1190 + Revision is a human-readable identifier traceable in the origin source 1191 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 1192 + type: string 1193 + size: 1194 + description: Size is the number of bytes in the file. 1195 + format: int64 1196 + type: integer 1197 + url: 1198 + description: |- 1199 + URL is the HTTP address of the Artifact as exposed by the controller 1200 + managing the Source. It can be used to retrieve the Artifact for 1201 + consumption, e.g. by another controller applying the Artifact contents. 1202 + type: string 1203 + required: 1204 + - digest 1205 + - lastUpdateTime 1206 + - path 1207 + - revision 1208 + - url 1209 + type: object 1210 + conditions: 1211 + description: Conditions holds the conditions for the ExternalArtifact. 1212 + items: 1213 + description: Condition contains details for one aspect of the current 1214 + state of this API Resource. 1215 + properties: 1216 + lastTransitionTime: 1217 + description: |- 1218 + lastTransitionTime is the last time the condition transitioned from one status to another. 1219 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 1220 + format: date-time 1221 + type: string 1222 + message: 1223 + description: |- 1224 + message is a human readable message indicating details about the transition. 1225 + This may be an empty string. 1226 + maxLength: 32768 1227 + type: string 1228 + observedGeneration: 1229 + description: |- 1230 + observedGeneration represents the .metadata.generation that the condition was set based upon. 1231 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 1232 + with respect to the current state of the instance. 1233 + format: int64 1234 + minimum: 0 1235 + type: integer 1236 + reason: 1237 + description: |- 1238 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 1239 + Producers of specific condition types may define expected values and meanings for this field, 1240 + and whether the values are considered a guaranteed API. 1241 + The value should be a CamelCase string. 1242 + This field may not be empty. 1243 + maxLength: 1024 1244 + minLength: 1 1245 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 1246 + type: string 1247 + status: 1248 + description: status of the condition, one of True, False, Unknown. 1249 + enum: 1250 + - "True" 1251 + - "False" 1252 + - Unknown 1253 + type: string 1254 + type: 1255 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 1256 + maxLength: 316 1257 + 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])$ 1258 + type: string 1259 + required: 1260 + - lastTransitionTime 1261 + - message 1262 + - reason 1263 + - status 1264 + - type 1265 + type: object 1266 + type: array 1267 + type: object 1268 + type: object 1269 + served: true 1270 + storage: true 1271 + subresources: 1272 + status: {} 1273 + --- 1274 + apiVersion: apiextensions.k8s.io/v1 1275 + kind: CustomResourceDefinition 1276 + metadata: 1277 + annotations: 1278 + controller-gen.kubebuilder.io/version: v0.19.0 1279 + labels: 1280 + app.kubernetes.io/component: source-controller 1281 + app.kubernetes.io/instance: flux-system 1282 + app.kubernetes.io/part-of: flux 1283 + app.kubernetes.io/version: v2.7.3 1284 + name: gitrepositories.source.toolkit.fluxcd.io 1285 + spec: 1286 + group: source.toolkit.fluxcd.io 1287 + names: 1288 + kind: GitRepository 1289 + listKind: GitRepositoryList 1290 + plural: gitrepositories 1291 + shortNames: 1292 + - gitrepo 1293 + singular: gitrepository 1294 + scope: Namespaced 1295 + versions: 1296 + - additionalPrinterColumns: 1297 + - jsonPath: .spec.url 1298 + name: URL 1299 + type: string 1300 + - jsonPath: .metadata.creationTimestamp 1301 + name: Age 1302 + type: date 1303 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 1304 + name: Ready 1305 + type: string 1306 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 1307 + name: Status 1308 + type: string 1309 + name: v1 1310 + schema: 1311 + openAPIV3Schema: 1312 + description: GitRepository is the Schema for the gitrepositories API. 1313 + properties: 1314 + apiVersion: 1315 + description: |- 1316 + APIVersion defines the versioned schema of this representation of an object. 1317 + Servers should convert recognized schemas to the latest internal value, and 1318 + may reject unrecognized values. 1319 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 1320 + type: string 1321 + kind: 1322 + description: |- 1323 + Kind is a string value representing the REST resource this object represents. 1324 + Servers may infer this from the endpoint the client submits requests to. 1325 + Cannot be updated. 1326 + In CamelCase. 1327 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 1328 + type: string 1329 + metadata: 1330 + type: object 1331 + spec: 1332 + description: |- 1333 + GitRepositorySpec specifies the required configuration to produce an 1334 + Artifact for a Git repository. 1335 + properties: 1336 + ignore: 1337 + description: |- 1338 + Ignore overrides the set of excluded patterns in the .sourceignore format 1339 + (which is the same as .gitignore). If not provided, a default will be used, 1340 + consult the documentation for your version to find out what those are. 1341 + type: string 1342 + include: 1343 + description: |- 1344 + Include specifies a list of GitRepository resources which Artifacts 1345 + should be included in the Artifact produced for this GitRepository. 1346 + items: 1347 + description: |- 1348 + GitRepositoryInclude specifies a local reference to a GitRepository which 1349 + Artifact (sub-)contents must be included, and where they should be placed. 1350 + properties: 1351 + fromPath: 1352 + description: |- 1353 + FromPath specifies the path to copy contents from, defaults to the root 1354 + of the Artifact. 1355 + type: string 1356 + repository: 1357 + description: |- 1358 + GitRepositoryRef specifies the GitRepository which Artifact contents 1359 + must be included. 1360 + properties: 1361 + name: 1362 + description: Name of the referent. 1363 + type: string 1364 + required: 1365 + - name 1366 + type: object 1367 + toPath: 1368 + description: |- 1369 + ToPath specifies the path to copy contents to, defaults to the name of 1370 + the GitRepositoryRef. 1371 + type: string 1372 + required: 1373 + - repository 1374 + type: object 1375 + type: array 1376 + interval: 1377 + description: |- 1378 + Interval at which the GitRepository URL is checked for updates. 1379 + This interval is approximate and may be subject to jitter to ensure 1380 + efficient use of resources. 1381 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 1382 + type: string 1383 + provider: 1384 + description: |- 1385 + Provider used for authentication, can be 'azure', 'github', 'generic'. 1386 + When not specified, defaults to 'generic'. 1387 + enum: 1388 + - generic 1389 + - azure 1390 + - github 1391 + type: string 1392 + proxySecretRef: 1393 + description: |- 1394 + ProxySecretRef specifies the Secret containing the proxy configuration 1395 + to use while communicating with the Git server. 1396 + properties: 1397 + name: 1398 + description: Name of the referent. 1399 + type: string 1400 + required: 1401 + - name 1402 + type: object 1403 + recurseSubmodules: 1404 + description: |- 1405 + RecurseSubmodules enables the initialization of all submodules within 1406 + the GitRepository as cloned from the URL, using their default settings. 1407 + type: boolean 1408 + ref: 1409 + description: |- 1410 + Reference specifies the Git reference to resolve and monitor for 1411 + changes, defaults to the 'master' branch. 1412 + properties: 1413 + branch: 1414 + description: Branch to check out, defaults to 'master' if no other 1415 + field is defined. 1416 + type: string 1417 + commit: 1418 + description: |- 1419 + Commit SHA to check out, takes precedence over all reference fields. 1420 + 1421 + This can be combined with Branch to shallow clone the branch, in which 1422 + the commit is expected to exist. 1423 + type: string 1424 + name: 1425 + description: |- 1426 + Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 1427 + 1428 + It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 1429 + Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 1430 + type: string 1431 + semver: 1432 + description: SemVer tag expression to check out, takes precedence 1433 + over Tag. 1434 + type: string 1435 + tag: 1436 + description: Tag to check out, takes precedence over Branch. 1437 + type: string 1438 + type: object 1439 + secretRef: 1440 + description: |- 1441 + SecretRef specifies the Secret containing authentication credentials for 1442 + the GitRepository. 1443 + For HTTPS repositories the Secret must contain 'username' and 'password' 1444 + fields for basic auth or 'bearerToken' field for token auth. 1445 + For SSH repositories the Secret must contain 'identity' 1446 + and 'known_hosts' fields. 1447 + properties: 1448 + name: 1449 + description: Name of the referent. 1450 + type: string 1451 + required: 1452 + - name 1453 + type: object 1454 + serviceAccountName: 1455 + description: |- 1456 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to 1457 + authenticate to the GitRepository. This field is only supported for 'azure' provider. 1458 + type: string 1459 + sparseCheckout: 1460 + description: |- 1461 + SparseCheckout specifies a list of directories to checkout when cloning 1462 + the repository. If specified, only these directories are included in the 1463 + Artifact produced for this GitRepository. 1464 + items: 1465 + type: string 1466 + type: array 1467 + suspend: 1468 + description: |- 1469 + Suspend tells the controller to suspend the reconciliation of this 1470 + GitRepository. 1471 + type: boolean 1472 + timeout: 1473 + default: 60s 1474 + description: Timeout for Git operations like cloning, defaults to 1475 + 60s. 1476 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 1477 + type: string 1478 + url: 1479 + description: URL specifies the Git repository URL, it can be an HTTP/S 1480 + or SSH address. 1481 + pattern: ^(http|https|ssh)://.*$ 1482 + type: string 1483 + verify: 1484 + description: |- 1485 + Verification specifies the configuration to verify the Git commit 1486 + signature(s). 1487 + properties: 1488 + mode: 1489 + default: HEAD 1490 + description: |- 1491 + Mode specifies which Git object(s) should be verified. 1492 + 1493 + The variants "head" and "HEAD" both imply the same thing, i.e. verify 1494 + the commit that the HEAD of the Git repository points to. The variant 1495 + "head" solely exists to ensure backwards compatibility. 1496 + enum: 1497 + - head 1498 + - HEAD 1499 + - Tag 1500 + - TagAndHEAD 1501 + type: string 1502 + secretRef: 1503 + description: |- 1504 + SecretRef specifies the Secret containing the public keys of trusted Git 1505 + authors. 1506 + properties: 1507 + name: 1508 + description: Name of the referent. 1509 + type: string 1510 + required: 1511 + - name 1512 + type: object 1513 + required: 1514 + - secretRef 1515 + type: object 1516 + required: 1517 + - interval 1518 + - url 1519 + type: object 1520 + x-kubernetes-validations: 1521 + - message: serviceAccountName can only be set when provider is 'azure' 1522 + rule: '!has(self.serviceAccountName) || (has(self.provider) && self.provider 1523 + == ''azure'')' 1524 + status: 1525 + default: 1526 + observedGeneration: -1 1527 + description: GitRepositoryStatus records the observed state of a Git repository. 1528 + properties: 1529 + artifact: 1530 + description: Artifact represents the last successful GitRepository 1531 + reconciliation. 1532 + properties: 1533 + digest: 1534 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 1535 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1536 + type: string 1537 + lastUpdateTime: 1538 + description: |- 1539 + LastUpdateTime is the timestamp corresponding to the last update of the 1540 + Artifact. 1541 + format: date-time 1542 + type: string 1543 + metadata: 1544 + additionalProperties: 1545 + type: string 1546 + description: Metadata holds upstream information such as OCI annotations. 1547 + type: object 1548 + path: 1549 + description: |- 1550 + Path is the relative file path of the Artifact. It can be used to locate 1551 + the file in the root of the Artifact storage on the local file system of 1552 + the controller managing the Source. 1553 + type: string 1554 + revision: 1555 + description: |- 1556 + Revision is a human-readable identifier traceable in the origin source 1557 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 1558 + type: string 1559 + size: 1560 + description: Size is the number of bytes in the file. 1561 + format: int64 1562 + type: integer 1563 + url: 1564 + description: |- 1565 + URL is the HTTP address of the Artifact as exposed by the controller 1566 + managing the Source. It can be used to retrieve the Artifact for 1567 + consumption, e.g. by another controller applying the Artifact contents. 1568 + type: string 1569 + required: 1570 + - digest 1571 + - lastUpdateTime 1572 + - path 1573 + - revision 1574 + - url 1575 + type: object 1576 + conditions: 1577 + description: Conditions holds the conditions for the GitRepository. 1578 + items: 1579 + description: Condition contains details for one aspect of the current 1580 + state of this API Resource. 1581 + properties: 1582 + lastTransitionTime: 1583 + description: |- 1584 + lastTransitionTime is the last time the condition transitioned from one status to another. 1585 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 1586 + format: date-time 1587 + type: string 1588 + message: 1589 + description: |- 1590 + message is a human readable message indicating details about the transition. 1591 + This may be an empty string. 1592 + maxLength: 32768 1593 + type: string 1594 + observedGeneration: 1595 + description: |- 1596 + observedGeneration represents the .metadata.generation that the condition was set based upon. 1597 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 1598 + with respect to the current state of the instance. 1599 + format: int64 1600 + minimum: 0 1601 + type: integer 1602 + reason: 1603 + description: |- 1604 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 1605 + Producers of specific condition types may define expected values and meanings for this field, 1606 + and whether the values are considered a guaranteed API. 1607 + The value should be a CamelCase string. 1608 + This field may not be empty. 1609 + maxLength: 1024 1610 + minLength: 1 1611 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 1612 + type: string 1613 + status: 1614 + description: status of the condition, one of True, False, Unknown. 1615 + enum: 1616 + - "True" 1617 + - "False" 1618 + - Unknown 1619 + type: string 1620 + type: 1621 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 1622 + maxLength: 316 1623 + 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])$ 1624 + type: string 1625 + required: 1626 + - lastTransitionTime 1627 + - message 1628 + - reason 1629 + - status 1630 + - type 1631 + type: object 1632 + type: array 1633 + includedArtifacts: 1634 + description: |- 1635 + IncludedArtifacts contains a list of the last successfully included 1636 + Artifacts as instructed by GitRepositorySpec.Include. 1637 + items: 1638 + description: Artifact represents the output of a Source reconciliation. 1639 + properties: 1640 + digest: 1641 + description: Digest is the digest of the file in the form of 1642 + '<algorithm>:<checksum>'. 1643 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1644 + type: string 1645 + lastUpdateTime: 1646 + description: |- 1647 + LastUpdateTime is the timestamp corresponding to the last update of the 1648 + Artifact. 1649 + format: date-time 1650 + type: string 1651 + metadata: 1652 + additionalProperties: 1653 + type: string 1654 + description: Metadata holds upstream information such as OCI 1655 + annotations. 1656 + type: object 1657 + path: 1658 + description: |- 1659 + Path is the relative file path of the Artifact. It can be used to locate 1660 + the file in the root of the Artifact storage on the local file system of 1661 + the controller managing the Source. 1662 + type: string 1663 + revision: 1664 + description: |- 1665 + Revision is a human-readable identifier traceable in the origin source 1666 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 1667 + type: string 1668 + size: 1669 + description: Size is the number of bytes in the file. 1670 + format: int64 1671 + type: integer 1672 + url: 1673 + description: |- 1674 + URL is the HTTP address of the Artifact as exposed by the controller 1675 + managing the Source. It can be used to retrieve the Artifact for 1676 + consumption, e.g. by another controller applying the Artifact contents. 1677 + type: string 1678 + required: 1679 + - digest 1680 + - lastUpdateTime 1681 + - path 1682 + - revision 1683 + - url 1684 + type: object 1685 + type: array 1686 + lastHandledReconcileAt: 1687 + description: |- 1688 + LastHandledReconcileAt holds the value of the most recent 1689 + reconcile request value, so a change of the annotation value 1690 + can be detected. 1691 + type: string 1692 + observedGeneration: 1693 + description: |- 1694 + ObservedGeneration is the last observed generation of the GitRepository 1695 + object. 1696 + format: int64 1697 + type: integer 1698 + observedIgnore: 1699 + description: |- 1700 + ObservedIgnore is the observed exclusion patterns used for constructing 1701 + the source artifact. 1702 + type: string 1703 + observedInclude: 1704 + description: |- 1705 + ObservedInclude is the observed list of GitRepository resources used to 1706 + produce the current Artifact. 1707 + items: 1708 + description: |- 1709 + GitRepositoryInclude specifies a local reference to a GitRepository which 1710 + Artifact (sub-)contents must be included, and where they should be placed. 1711 + properties: 1712 + fromPath: 1713 + description: |- 1714 + FromPath specifies the path to copy contents from, defaults to the root 1715 + of the Artifact. 1716 + type: string 1717 + repository: 1718 + description: |- 1719 + GitRepositoryRef specifies the GitRepository which Artifact contents 1720 + must be included. 1721 + properties: 1722 + name: 1723 + description: Name of the referent. 1724 + type: string 1725 + required: 1726 + - name 1727 + type: object 1728 + toPath: 1729 + description: |- 1730 + ToPath specifies the path to copy contents to, defaults to the name of 1731 + the GitRepositoryRef. 1732 + type: string 1733 + required: 1734 + - repository 1735 + type: object 1736 + type: array 1737 + observedRecurseSubmodules: 1738 + description: |- 1739 + ObservedRecurseSubmodules is the observed resource submodules 1740 + configuration used to produce the current Artifact. 1741 + type: boolean 1742 + observedSparseCheckout: 1743 + description: |- 1744 + ObservedSparseCheckout is the observed list of directories used to 1745 + produce the current Artifact. 1746 + items: 1747 + type: string 1748 + type: array 1749 + sourceVerificationMode: 1750 + description: |- 1751 + SourceVerificationMode is the last used verification mode indicating 1752 + which Git object(s) have been verified. 1753 + type: string 1754 + type: object 1755 + type: object 1756 + served: true 1757 + storage: true 1758 + subresources: 1759 + status: {} 1760 + - additionalPrinterColumns: 1761 + - jsonPath: .spec.url 1762 + name: URL 1763 + type: string 1764 + - jsonPath: .metadata.creationTimestamp 1765 + name: Age 1766 + type: date 1767 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 1768 + name: Ready 1769 + type: string 1770 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 1771 + name: Status 1772 + type: string 1773 + deprecated: true 1774 + deprecationWarning: v1beta2 GitRepository is deprecated, upgrade to v1 1775 + name: v1beta2 1776 + schema: 1777 + openAPIV3Schema: 1778 + description: GitRepository is the Schema for the gitrepositories API. 1779 + properties: 1780 + apiVersion: 1781 + description: |- 1782 + APIVersion defines the versioned schema of this representation of an object. 1783 + Servers should convert recognized schemas to the latest internal value, and 1784 + may reject unrecognized values. 1785 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 1786 + type: string 1787 + kind: 1788 + description: |- 1789 + Kind is a string value representing the REST resource this object represents. 1790 + Servers may infer this from the endpoint the client submits requests to. 1791 + Cannot be updated. 1792 + In CamelCase. 1793 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 1794 + type: string 1795 + metadata: 1796 + type: object 1797 + spec: 1798 + description: |- 1799 + GitRepositorySpec specifies the required configuration to produce an 1800 + Artifact for a Git repository. 1801 + properties: 1802 + accessFrom: 1803 + description: |- 1804 + AccessFrom specifies an Access Control List for allowing cross-namespace 1805 + references to this object. 1806 + NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 1807 + properties: 1808 + namespaceSelectors: 1809 + description: |- 1810 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 1811 + Items in this list are evaluated using a logical OR operation. 1812 + items: 1813 + description: |- 1814 + NamespaceSelector selects the namespaces to which this ACL applies. 1815 + An empty map of MatchLabels matches all namespaces in a cluster. 1816 + properties: 1817 + matchLabels: 1818 + additionalProperties: 1819 + type: string 1820 + description: |- 1821 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 1822 + map is equivalent to an element of matchExpressions, whose key field is "key", the 1823 + operator is "In", and the values array contains only "value". The requirements are ANDed. 1824 + type: object 1825 + type: object 1826 + type: array 1827 + required: 1828 + - namespaceSelectors 1829 + type: object 1830 + gitImplementation: 1831 + default: go-git 1832 + description: |- 1833 + GitImplementation specifies which Git client library implementation to 1834 + use. Defaults to 'go-git', valid values are ('go-git', 'libgit2'). 1835 + Deprecated: gitImplementation is deprecated now that 'go-git' is the 1836 + only supported implementation. 1837 + enum: 1838 + - go-git 1839 + - libgit2 1840 + type: string 1841 + ignore: 1842 + description: |- 1843 + Ignore overrides the set of excluded patterns in the .sourceignore format 1844 + (which is the same as .gitignore). If not provided, a default will be used, 1845 + consult the documentation for your version to find out what those are. 1846 + type: string 1847 + include: 1848 + description: |- 1849 + Include specifies a list of GitRepository resources which Artifacts 1850 + should be included in the Artifact produced for this GitRepository. 1851 + items: 1852 + description: |- 1853 + GitRepositoryInclude specifies a local reference to a GitRepository which 1854 + Artifact (sub-)contents must be included, and where they should be placed. 1855 + properties: 1856 + fromPath: 1857 + description: |- 1858 + FromPath specifies the path to copy contents from, defaults to the root 1859 + of the Artifact. 1860 + type: string 1861 + repository: 1862 + description: |- 1863 + GitRepositoryRef specifies the GitRepository which Artifact contents 1864 + must be included. 1865 + properties: 1866 + name: 1867 + description: Name of the referent. 1868 + type: string 1869 + required: 1870 + - name 1871 + type: object 1872 + toPath: 1873 + description: |- 1874 + ToPath specifies the path to copy contents to, defaults to the name of 1875 + the GitRepositoryRef. 1876 + type: string 1877 + required: 1878 + - repository 1879 + type: object 1880 + type: array 1881 + interval: 1882 + description: Interval at which to check the GitRepository for updates. 1883 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 1884 + type: string 1885 + recurseSubmodules: 1886 + description: |- 1887 + RecurseSubmodules enables the initialization of all submodules within 1888 + the GitRepository as cloned from the URL, using their default settings. 1889 + type: boolean 1890 + ref: 1891 + description: |- 1892 + Reference specifies the Git reference to resolve and monitor for 1893 + changes, defaults to the 'master' branch. 1894 + properties: 1895 + branch: 1896 + description: Branch to check out, defaults to 'master' if no other 1897 + field is defined. 1898 + type: string 1899 + commit: 1900 + description: |- 1901 + Commit SHA to check out, takes precedence over all reference fields. 1902 + 1903 + This can be combined with Branch to shallow clone the branch, in which 1904 + the commit is expected to exist. 1905 + type: string 1906 + name: 1907 + description: |- 1908 + Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 1909 + 1910 + It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 1911 + Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 1912 + type: string 1913 + semver: 1914 + description: SemVer tag expression to check out, takes precedence 1915 + over Tag. 1916 + type: string 1917 + tag: 1918 + description: Tag to check out, takes precedence over Branch. 1919 + type: string 1920 + type: object 1921 + secretRef: 1922 + description: |- 1923 + SecretRef specifies the Secret containing authentication credentials for 1924 + the GitRepository. 1925 + For HTTPS repositories the Secret must contain 'username' and 'password' 1926 + fields for basic auth or 'bearerToken' field for token auth. 1927 + For SSH repositories the Secret must contain 'identity' 1928 + and 'known_hosts' fields. 1929 + properties: 1930 + name: 1931 + description: Name of the referent. 1932 + type: string 1933 + required: 1934 + - name 1935 + type: object 1936 + suspend: 1937 + description: |- 1938 + Suspend tells the controller to suspend the reconciliation of this 1939 + GitRepository. 1940 + type: boolean 1941 + timeout: 1942 + default: 60s 1943 + description: Timeout for Git operations like cloning, defaults to 1944 + 60s. 1945 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 1946 + type: string 1947 + url: 1948 + description: URL specifies the Git repository URL, it can be an HTTP/S 1949 + or SSH address. 1950 + pattern: ^(http|https|ssh)://.*$ 1951 + type: string 1952 + verify: 1953 + description: |- 1954 + Verification specifies the configuration to verify the Git commit 1955 + signature(s). 1956 + properties: 1957 + mode: 1958 + description: Mode specifies what Git object should be verified, 1959 + currently ('head'). 1960 + enum: 1961 + - head 1962 + type: string 1963 + secretRef: 1964 + description: |- 1965 + SecretRef specifies the Secret containing the public keys of trusted Git 1966 + authors. 1967 + properties: 1968 + name: 1969 + description: Name of the referent. 1970 + type: string 1971 + required: 1972 + - name 1973 + type: object 1974 + required: 1975 + - mode 1976 + - secretRef 1977 + type: object 1978 + required: 1979 + - interval 1980 + - url 1981 + type: object 1982 + status: 1983 + default: 1984 + observedGeneration: -1 1985 + description: GitRepositoryStatus records the observed state of a Git repository. 1986 + properties: 1987 + artifact: 1988 + description: Artifact represents the last successful GitRepository 1989 + reconciliation. 1990 + properties: 1991 + digest: 1992 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 1993 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1994 + type: string 1995 + lastUpdateTime: 1996 + description: |- 1997 + LastUpdateTime is the timestamp corresponding to the last update of the 1998 + Artifact. 1999 + format: date-time 2000 + type: string 2001 + metadata: 2002 + additionalProperties: 2003 + type: string 2004 + description: Metadata holds upstream information such as OCI annotations. 2005 + type: object 2006 + path: 2007 + description: |- 2008 + Path is the relative file path of the Artifact. It can be used to locate 2009 + the file in the root of the Artifact storage on the local file system of 2010 + the controller managing the Source. 2011 + type: string 2012 + revision: 2013 + description: |- 2014 + Revision is a human-readable identifier traceable in the origin source 2015 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2016 + type: string 2017 + size: 2018 + description: Size is the number of bytes in the file. 2019 + format: int64 2020 + type: integer 2021 + url: 2022 + description: |- 2023 + URL is the HTTP address of the Artifact as exposed by the controller 2024 + managing the Source. It can be used to retrieve the Artifact for 2025 + consumption, e.g. by another controller applying the Artifact contents. 2026 + type: string 2027 + required: 2028 + - digest 2029 + - lastUpdateTime 2030 + - path 2031 + - revision 2032 + - url 2033 + type: object 2034 + conditions: 2035 + description: Conditions holds the conditions for the GitRepository. 2036 + items: 2037 + description: Condition contains details for one aspect of the current 2038 + state of this API Resource. 2039 + properties: 2040 + lastTransitionTime: 2041 + description: |- 2042 + lastTransitionTime is the last time the condition transitioned from one status to another. 2043 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 2044 + format: date-time 2045 + type: string 2046 + message: 2047 + description: |- 2048 + message is a human readable message indicating details about the transition. 2049 + This may be an empty string. 2050 + maxLength: 32768 2051 + type: string 2052 + observedGeneration: 2053 + description: |- 2054 + observedGeneration represents the .metadata.generation that the condition was set based upon. 2055 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 2056 + with respect to the current state of the instance. 2057 + format: int64 2058 + minimum: 0 2059 + type: integer 2060 + reason: 2061 + description: |- 2062 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 2063 + Producers of specific condition types may define expected values and meanings for this field, 2064 + and whether the values are considered a guaranteed API. 2065 + The value should be a CamelCase string. 2066 + This field may not be empty. 2067 + maxLength: 1024 2068 + minLength: 1 2069 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 2070 + type: string 2071 + status: 2072 + description: status of the condition, one of True, False, Unknown. 2073 + enum: 2074 + - "True" 2075 + - "False" 2076 + - Unknown 2077 + type: string 2078 + type: 2079 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 2080 + maxLength: 316 2081 + 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])$ 2082 + type: string 2083 + required: 2084 + - lastTransitionTime 2085 + - message 2086 + - reason 2087 + - status 2088 + - type 2089 + type: object 2090 + type: array 2091 + contentConfigChecksum: 2092 + description: |- 2093 + ContentConfigChecksum is a checksum of all the configurations related to 2094 + the content of the source artifact: 2095 + - .spec.ignore 2096 + - .spec.recurseSubmodules 2097 + - .spec.included and the checksum of the included artifacts 2098 + observed in .status.observedGeneration version of the object. This can 2099 + be used to determine if the content of the included repository has 2100 + changed. 2101 + It has the format of `<algo>:<checksum>`, for example: `sha256:<checksum>`. 2102 + 2103 + Deprecated: Replaced with explicit fields for observed artifact content 2104 + config in the status. 2105 + type: string 2106 + includedArtifacts: 2107 + description: |- 2108 + IncludedArtifacts contains a list of the last successfully included 2109 + Artifacts as instructed by GitRepositorySpec.Include. 2110 + items: 2111 + description: Artifact represents the output of a Source reconciliation. 2112 + properties: 2113 + digest: 2114 + description: Digest is the digest of the file in the form of 2115 + '<algorithm>:<checksum>'. 2116 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 2117 + type: string 2118 + lastUpdateTime: 2119 + description: |- 2120 + LastUpdateTime is the timestamp corresponding to the last update of the 2121 + Artifact. 2122 + format: date-time 2123 + type: string 2124 + metadata: 2125 + additionalProperties: 2126 + type: string 2127 + description: Metadata holds upstream information such as OCI 2128 + annotations. 2129 + type: object 2130 + path: 2131 + description: |- 2132 + Path is the relative file path of the Artifact. It can be used to locate 2133 + the file in the root of the Artifact storage on the local file system of 2134 + the controller managing the Source. 2135 + type: string 2136 + revision: 2137 + description: |- 2138 + Revision is a human-readable identifier traceable in the origin source 2139 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2140 + type: string 2141 + size: 2142 + description: Size is the number of bytes in the file. 2143 + format: int64 2144 + type: integer 2145 + url: 2146 + description: |- 2147 + URL is the HTTP address of the Artifact as exposed by the controller 2148 + managing the Source. It can be used to retrieve the Artifact for 2149 + consumption, e.g. by another controller applying the Artifact contents. 2150 + type: string 2151 + required: 2152 + - digest 2153 + - lastUpdateTime 2154 + - path 2155 + - revision 2156 + - url 2157 + type: object 2158 + type: array 2159 + lastHandledReconcileAt: 2160 + description: |- 2161 + LastHandledReconcileAt holds the value of the most recent 2162 + reconcile request value, so a change of the annotation value 2163 + can be detected. 2164 + type: string 2165 + observedGeneration: 2166 + description: |- 2167 + ObservedGeneration is the last observed generation of the GitRepository 2168 + object. 2169 + format: int64 2170 + type: integer 2171 + observedIgnore: 2172 + description: |- 2173 + ObservedIgnore is the observed exclusion patterns used for constructing 2174 + the source artifact. 2175 + type: string 2176 + observedInclude: 2177 + description: |- 2178 + ObservedInclude is the observed list of GitRepository resources used to 2179 + to produce the current Artifact. 2180 + items: 2181 + description: |- 2182 + GitRepositoryInclude specifies a local reference to a GitRepository which 2183 + Artifact (sub-)contents must be included, and where they should be placed. 2184 + properties: 2185 + fromPath: 2186 + description: |- 2187 + FromPath specifies the path to copy contents from, defaults to the root 2188 + of the Artifact. 2189 + type: string 2190 + repository: 2191 + description: |- 2192 + GitRepositoryRef specifies the GitRepository which Artifact contents 2193 + must be included. 2194 + properties: 2195 + name: 2196 + description: Name of the referent. 2197 + type: string 2198 + required: 2199 + - name 2200 + type: object 2201 + toPath: 2202 + description: |- 2203 + ToPath specifies the path to copy contents to, defaults to the name of 2204 + the GitRepositoryRef. 2205 + type: string 2206 + required: 2207 + - repository 2208 + type: object 2209 + type: array 2210 + observedRecurseSubmodules: 2211 + description: |- 2212 + ObservedRecurseSubmodules is the observed resource submodules 2213 + configuration used to produce the current Artifact. 2214 + type: boolean 2215 + url: 2216 + description: |- 2217 + URL is the dynamic fetch link for the latest Artifact. 2218 + It is provided on a "best effort" basis, and using the precise 2219 + GitRepositoryStatus.Artifact data is recommended. 2220 + type: string 2221 + type: object 2222 + type: object 2223 + served: true 2224 + storage: false 2225 + subresources: 2226 + status: {} 2227 + --- 2228 + apiVersion: apiextensions.k8s.io/v1 2229 + kind: CustomResourceDefinition 2230 + metadata: 2231 + annotations: 2232 + controller-gen.kubebuilder.io/version: v0.19.0 2233 + labels: 2234 + app.kubernetes.io/component: source-controller 2235 + app.kubernetes.io/instance: flux-system 2236 + app.kubernetes.io/part-of: flux 2237 + app.kubernetes.io/version: v2.7.3 2238 + name: helmcharts.source.toolkit.fluxcd.io 2239 + spec: 2240 + group: source.toolkit.fluxcd.io 2241 + names: 2242 + kind: HelmChart 2243 + listKind: HelmChartList 2244 + plural: helmcharts 2245 + shortNames: 2246 + - hc 2247 + singular: helmchart 2248 + scope: Namespaced 2249 + versions: 2250 + - additionalPrinterColumns: 2251 + - jsonPath: .spec.chart 2252 + name: Chart 2253 + type: string 2254 + - jsonPath: .spec.version 2255 + name: Version 2256 + type: string 2257 + - jsonPath: .spec.sourceRef.kind 2258 + name: Source Kind 2259 + type: string 2260 + - jsonPath: .spec.sourceRef.name 2261 + name: Source Name 2262 + type: string 2263 + - jsonPath: .metadata.creationTimestamp 2264 + name: Age 2265 + type: date 2266 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 2267 + name: Ready 2268 + type: string 2269 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 2270 + name: Status 2271 + type: string 2272 + name: v1 2273 + schema: 2274 + openAPIV3Schema: 2275 + description: HelmChart is the Schema for the helmcharts API. 2276 + properties: 2277 + apiVersion: 2278 + description: |- 2279 + APIVersion defines the versioned schema of this representation of an object. 2280 + Servers should convert recognized schemas to the latest internal value, and 2281 + may reject unrecognized values. 2282 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 2283 + type: string 2284 + kind: 2285 + description: |- 2286 + Kind is a string value representing the REST resource this object represents. 2287 + Servers may infer this from the endpoint the client submits requests to. 2288 + Cannot be updated. 2289 + In CamelCase. 2290 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 2291 + type: string 2292 + metadata: 2293 + type: object 2294 + spec: 2295 + description: HelmChartSpec specifies the desired state of a Helm chart. 2296 + properties: 2297 + chart: 2298 + description: |- 2299 + Chart is the name or path the Helm chart is available at in the 2300 + SourceRef. 2301 + type: string 2302 + ignoreMissingValuesFiles: 2303 + description: |- 2304 + IgnoreMissingValuesFiles controls whether to silently ignore missing values 2305 + files rather than failing. 2306 + type: boolean 2307 + interval: 2308 + description: |- 2309 + Interval at which the HelmChart SourceRef is checked for updates. 2310 + This interval is approximate and may be subject to jitter to ensure 2311 + efficient use of resources. 2312 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 2313 + type: string 2314 + reconcileStrategy: 2315 + default: ChartVersion 2316 + description: |- 2317 + ReconcileStrategy determines what enables the creation of a new artifact. 2318 + Valid values are ('ChartVersion', 'Revision'). 2319 + See the documentation of the values for an explanation on their behavior. 2320 + Defaults to ChartVersion when omitted. 2321 + enum: 2322 + - ChartVersion 2323 + - Revision 2324 + type: string 2325 + sourceRef: 2326 + description: SourceRef is the reference to the Source the chart is 2327 + available at. 2328 + properties: 2329 + apiVersion: 2330 + description: APIVersion of the referent. 2331 + type: string 2332 + kind: 2333 + description: |- 2334 + Kind of the referent, valid values are ('HelmRepository', 'GitRepository', 2335 + 'Bucket'). 2336 + enum: 2337 + - HelmRepository 2338 + - GitRepository 2339 + - Bucket 2340 + type: string 2341 + name: 2342 + description: Name of the referent. 2343 + type: string 2344 + required: 2345 + - kind 2346 + - name 2347 + type: object 2348 + suspend: 2349 + description: |- 2350 + Suspend tells the controller to suspend the reconciliation of this 2351 + source. 2352 + type: boolean 2353 + valuesFiles: 2354 + description: |- 2355 + ValuesFiles is an alternative list of values files to use as the chart 2356 + values (values.yaml is not included by default), expected to be a 2357 + relative path in the SourceRef. 2358 + Values files are merged in the order of this list with the last file 2359 + overriding the first. Ignored when omitted. 2360 + items: 2361 + type: string 2362 + type: array 2363 + verify: 2364 + description: |- 2365 + Verify contains the secret name containing the trusted public keys 2366 + used to verify the signature and specifies which provider to use to check 2367 + whether OCI image is authentic. 2368 + This field is only supported when using HelmRepository source with spec.type 'oci'. 2369 + Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. 2370 + properties: 2371 + matchOIDCIdentity: 2372 + description: |- 2373 + MatchOIDCIdentity specifies the identity matching criteria to use 2374 + while verifying an OCI artifact which was signed using Cosign keyless 2375 + signing. The artifact's identity is deemed to be verified if any of the 2376 + specified matchers match against the identity. 2377 + items: 2378 + description: |- 2379 + OIDCIdentityMatch specifies options for verifying the certificate identity, 2380 + i.e. the issuer and the subject of the certificate. 2381 + properties: 2382 + issuer: 2383 + description: |- 2384 + Issuer specifies the regex pattern to match against to verify 2385 + the OIDC issuer in the Fulcio certificate. The pattern must be a 2386 + valid Go regular expression. 2387 + type: string 2388 + subject: 2389 + description: |- 2390 + Subject specifies the regex pattern to match against to verify 2391 + the identity subject in the Fulcio certificate. The pattern must 2392 + be a valid Go regular expression. 2393 + type: string 2394 + required: 2395 + - issuer 2396 + - subject 2397 + type: object 2398 + type: array 2399 + provider: 2400 + default: cosign 2401 + description: Provider specifies the technology used to sign the 2402 + OCI Artifact. 2403 + enum: 2404 + - cosign 2405 + - notation 2406 + type: string 2407 + secretRef: 2408 + description: |- 2409 + SecretRef specifies the Kubernetes Secret containing the 2410 + trusted public keys. 2411 + properties: 2412 + name: 2413 + description: Name of the referent. 2414 + type: string 2415 + required: 2416 + - name 2417 + type: object 2418 + required: 2419 + - provider 2420 + type: object 2421 + version: 2422 + default: '*' 2423 + description: |- 2424 + Version is the chart version semver expression, ignored for charts from 2425 + GitRepository and Bucket sources. Defaults to latest when omitted. 2426 + type: string 2427 + required: 2428 + - chart 2429 + - interval 2430 + - sourceRef 2431 + type: object 2432 + status: 2433 + default: 2434 + observedGeneration: -1 2435 + description: HelmChartStatus records the observed state of the HelmChart. 2436 + properties: 2437 + artifact: 2438 + description: Artifact represents the output of the last successful 2439 + reconciliation. 2440 + properties: 2441 + digest: 2442 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 2443 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 2444 + type: string 2445 + lastUpdateTime: 2446 + description: |- 2447 + LastUpdateTime is the timestamp corresponding to the last update of the 2448 + Artifact. 2449 + format: date-time 2450 + type: string 2451 + metadata: 2452 + additionalProperties: 2453 + type: string 2454 + description: Metadata holds upstream information such as OCI annotations. 2455 + type: object 2456 + path: 2457 + description: |- 2458 + Path is the relative file path of the Artifact. It can be used to locate 2459 + the file in the root of the Artifact storage on the local file system of 2460 + the controller managing the Source. 2461 + type: string 2462 + revision: 2463 + description: |- 2464 + Revision is a human-readable identifier traceable in the origin source 2465 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2466 + type: string 2467 + size: 2468 + description: Size is the number of bytes in the file. 2469 + format: int64 2470 + type: integer 2471 + url: 2472 + description: |- 2473 + URL is the HTTP address of the Artifact as exposed by the controller 2474 + managing the Source. It can be used to retrieve the Artifact for 2475 + consumption, e.g. by another controller applying the Artifact contents. 2476 + type: string 2477 + required: 2478 + - digest 2479 + - lastUpdateTime 2480 + - path 2481 + - revision 2482 + - url 2483 + type: object 2484 + conditions: 2485 + description: Conditions holds the conditions for the HelmChart. 2486 + items: 2487 + description: Condition contains details for one aspect of the current 2488 + state of this API Resource. 2489 + properties: 2490 + lastTransitionTime: 2491 + description: |- 2492 + lastTransitionTime is the last time the condition transitioned from one status to another. 2493 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 2494 + format: date-time 2495 + type: string 2496 + message: 2497 + description: |- 2498 + message is a human readable message indicating details about the transition. 2499 + This may be an empty string. 2500 + maxLength: 32768 2501 + type: string 2502 + observedGeneration: 2503 + description: |- 2504 + observedGeneration represents the .metadata.generation that the condition was set based upon. 2505 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 2506 + with respect to the current state of the instance. 2507 + format: int64 2508 + minimum: 0 2509 + type: integer 2510 + reason: 2511 + description: |- 2512 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 2513 + Producers of specific condition types may define expected values and meanings for this field, 2514 + and whether the values are considered a guaranteed API. 2515 + The value should be a CamelCase string. 2516 + This field may not be empty. 2517 + maxLength: 1024 2518 + minLength: 1 2519 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 2520 + type: string 2521 + status: 2522 + description: status of the condition, one of True, False, Unknown. 2523 + enum: 2524 + - "True" 2525 + - "False" 2526 + - Unknown 2527 + type: string 2528 + type: 2529 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 2530 + maxLength: 316 2531 + 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])$ 2532 + type: string 2533 + required: 2534 + - lastTransitionTime 2535 + - message 2536 + - reason 2537 + - status 2538 + - type 2539 + type: object 2540 + type: array 2541 + lastHandledReconcileAt: 2542 + description: |- 2543 + LastHandledReconcileAt holds the value of the most recent 2544 + reconcile request value, so a change of the annotation value 2545 + can be detected. 2546 + type: string 2547 + observedChartName: 2548 + description: |- 2549 + ObservedChartName is the last observed chart name as specified by the 2550 + resolved chart reference. 2551 + type: string 2552 + observedGeneration: 2553 + description: |- 2554 + ObservedGeneration is the last observed generation of the HelmChart 2555 + object. 2556 + format: int64 2557 + type: integer 2558 + observedSourceArtifactRevision: 2559 + description: |- 2560 + ObservedSourceArtifactRevision is the last observed Artifact.Revision 2561 + of the HelmChartSpec.SourceRef. 2562 + type: string 2563 + observedValuesFiles: 2564 + description: |- 2565 + ObservedValuesFiles are the observed value files of the last successful 2566 + reconciliation. 2567 + It matches the chart in the last successfully reconciled artifact. 2568 + items: 2569 + type: string 2570 + type: array 2571 + url: 2572 + description: |- 2573 + URL is the dynamic fetch link for the latest Artifact. 2574 + It is provided on a "best effort" basis, and using the precise 2575 + BucketStatus.Artifact data is recommended. 2576 + type: string 2577 + type: object 2578 + type: object 2579 + served: true 2580 + storage: true 2581 + subresources: 2582 + status: {} 2583 + - additionalPrinterColumns: 2584 + - jsonPath: .spec.chart 2585 + name: Chart 2586 + type: string 2587 + - jsonPath: .spec.version 2588 + name: Version 2589 + type: string 2590 + - jsonPath: .spec.sourceRef.kind 2591 + name: Source Kind 2592 + type: string 2593 + - jsonPath: .spec.sourceRef.name 2594 + name: Source Name 2595 + type: string 2596 + - jsonPath: .metadata.creationTimestamp 2597 + name: Age 2598 + type: date 2599 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 2600 + name: Ready 2601 + type: string 2602 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 2603 + name: Status 2604 + type: string 2605 + deprecated: true 2606 + deprecationWarning: v1beta2 HelmChart is deprecated, upgrade to v1 2607 + name: v1beta2 2608 + schema: 2609 + openAPIV3Schema: 2610 + description: HelmChart is the Schema for the helmcharts API. 2611 + properties: 2612 + apiVersion: 2613 + description: |- 2614 + APIVersion defines the versioned schema of this representation of an object. 2615 + Servers should convert recognized schemas to the latest internal value, and 2616 + may reject unrecognized values. 2617 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 2618 + type: string 2619 + kind: 2620 + description: |- 2621 + Kind is a string value representing the REST resource this object represents. 2622 + Servers may infer this from the endpoint the client submits requests to. 2623 + Cannot be updated. 2624 + In CamelCase. 2625 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 2626 + type: string 2627 + metadata: 2628 + type: object 2629 + spec: 2630 + description: HelmChartSpec specifies the desired state of a Helm chart. 2631 + properties: 2632 + accessFrom: 2633 + description: |- 2634 + AccessFrom specifies an Access Control List for allowing cross-namespace 2635 + references to this object. 2636 + NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 2637 + properties: 2638 + namespaceSelectors: 2639 + description: |- 2640 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 2641 + Items in this list are evaluated using a logical OR operation. 2642 + items: 2643 + description: |- 2644 + NamespaceSelector selects the namespaces to which this ACL applies. 2645 + An empty map of MatchLabels matches all namespaces in a cluster. 2646 + properties: 2647 + matchLabels: 2648 + additionalProperties: 2649 + type: string 2650 + description: |- 2651 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 2652 + map is equivalent to an element of matchExpressions, whose key field is "key", the 2653 + operator is "In", and the values array contains only "value". The requirements are ANDed. 2654 + type: object 2655 + type: object 2656 + type: array 2657 + required: 2658 + - namespaceSelectors 2659 + type: object 2660 + chart: 2661 + description: |- 2662 + Chart is the name or path the Helm chart is available at in the 2663 + SourceRef. 2664 + type: string 2665 + ignoreMissingValuesFiles: 2666 + description: |- 2667 + IgnoreMissingValuesFiles controls whether to silently ignore missing values 2668 + files rather than failing. 2669 + type: boolean 2670 + interval: 2671 + description: |- 2672 + Interval at which the HelmChart SourceRef is checked for updates. 2673 + This interval is approximate and may be subject to jitter to ensure 2674 + efficient use of resources. 2675 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 2676 + type: string 2677 + reconcileStrategy: 2678 + default: ChartVersion 2679 + description: |- 2680 + ReconcileStrategy determines what enables the creation of a new artifact. 2681 + Valid values are ('ChartVersion', 'Revision'). 2682 + See the documentation of the values for an explanation on their behavior. 2683 + Defaults to ChartVersion when omitted. 2684 + enum: 2685 + - ChartVersion 2686 + - Revision 2687 + type: string 2688 + sourceRef: 2689 + description: SourceRef is the reference to the Source the chart is 2690 + available at. 2691 + properties: 2692 + apiVersion: 2693 + description: APIVersion of the referent. 2694 + type: string 2695 + kind: 2696 + description: |- 2697 + Kind of the referent, valid values are ('HelmRepository', 'GitRepository', 2698 + 'Bucket'). 2699 + enum: 2700 + - HelmRepository 2701 + - GitRepository 2702 + - Bucket 2703 + type: string 2704 + name: 2705 + description: Name of the referent. 2706 + type: string 2707 + required: 2708 + - kind 2709 + - name 2710 + type: object 2711 + suspend: 2712 + description: |- 2713 + Suspend tells the controller to suspend the reconciliation of this 2714 + source. 2715 + type: boolean 2716 + valuesFile: 2717 + description: |- 2718 + ValuesFile is an alternative values file to use as the default chart 2719 + values, expected to be a relative path in the SourceRef. Deprecated in 2720 + favor of ValuesFiles, for backwards compatibility the file specified here 2721 + is merged before the ValuesFiles items. Ignored when omitted. 2722 + type: string 2723 + valuesFiles: 2724 + description: |- 2725 + ValuesFiles is an alternative list of values files to use as the chart 2726 + values (values.yaml is not included by default), expected to be a 2727 + relative path in the SourceRef. 2728 + Values files are merged in the order of this list with the last file 2729 + overriding the first. Ignored when omitted. 2730 + items: 2731 + type: string 2732 + type: array 2733 + verify: 2734 + description: |- 2735 + Verify contains the secret name containing the trusted public keys 2736 + used to verify the signature and specifies which provider to use to check 2737 + whether OCI image is authentic. 2738 + This field is only supported when using HelmRepository source with spec.type 'oci'. 2739 + Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. 2740 + properties: 2741 + matchOIDCIdentity: 2742 + description: |- 2743 + MatchOIDCIdentity specifies the identity matching criteria to use 2744 + while verifying an OCI artifact which was signed using Cosign keyless 2745 + signing. The artifact's identity is deemed to be verified if any of the 2746 + specified matchers match against the identity. 2747 + items: 2748 + description: |- 2749 + OIDCIdentityMatch specifies options for verifying the certificate identity, 2750 + i.e. the issuer and the subject of the certificate. 2751 + properties: 2752 + issuer: 2753 + description: |- 2754 + Issuer specifies the regex pattern to match against to verify 2755 + the OIDC issuer in the Fulcio certificate. The pattern must be a 2756 + valid Go regular expression. 2757 + type: string 2758 + subject: 2759 + description: |- 2760 + Subject specifies the regex pattern to match against to verify 2761 + the identity subject in the Fulcio certificate. The pattern must 2762 + be a valid Go regular expression. 2763 + type: string 2764 + required: 2765 + - issuer 2766 + - subject 2767 + type: object 2768 + type: array 2769 + provider: 2770 + default: cosign 2771 + description: Provider specifies the technology used to sign the 2772 + OCI Artifact. 2773 + enum: 2774 + - cosign 2775 + - notation 2776 + type: string 2777 + secretRef: 2778 + description: |- 2779 + SecretRef specifies the Kubernetes Secret containing the 2780 + trusted public keys. 2781 + properties: 2782 + name: 2783 + description: Name of the referent. 2784 + type: string 2785 + required: 2786 + - name 2787 + type: object 2788 + required: 2789 + - provider 2790 + type: object 2791 + version: 2792 + default: '*' 2793 + description: |- 2794 + Version is the chart version semver expression, ignored for charts from 2795 + GitRepository and Bucket sources. Defaults to latest when omitted. 2796 + type: string 2797 + required: 2798 + - chart 2799 + - interval 2800 + - sourceRef 2801 + type: object 2802 + status: 2803 + default: 2804 + observedGeneration: -1 2805 + description: HelmChartStatus records the observed state of the HelmChart. 2806 + properties: 2807 + artifact: 2808 + description: Artifact represents the output of the last successful 2809 + reconciliation. 2810 + properties: 2811 + digest: 2812 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 2813 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 2814 + type: string 2815 + lastUpdateTime: 2816 + description: |- 2817 + LastUpdateTime is the timestamp corresponding to the last update of the 2818 + Artifact. 2819 + format: date-time 2820 + type: string 2821 + metadata: 2822 + additionalProperties: 2823 + type: string 2824 + description: Metadata holds upstream information such as OCI annotations. 2825 + type: object 2826 + path: 2827 + description: |- 2828 + Path is the relative file path of the Artifact. It can be used to locate 2829 + the file in the root of the Artifact storage on the local file system of 2830 + the controller managing the Source. 2831 + type: string 2832 + revision: 2833 + description: |- 2834 + Revision is a human-readable identifier traceable in the origin source 2835 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2836 + type: string 2837 + size: 2838 + description: Size is the number of bytes in the file. 2839 + format: int64 2840 + type: integer 2841 + url: 2842 + description: |- 2843 + URL is the HTTP address of the Artifact as exposed by the controller 2844 + managing the Source. It can be used to retrieve the Artifact for 2845 + consumption, e.g. by another controller applying the Artifact contents. 2846 + type: string 2847 + required: 2848 + - digest 2849 + - lastUpdateTime 2850 + - path 2851 + - revision 2852 + - url 2853 + type: object 2854 + conditions: 2855 + description: Conditions holds the conditions for the HelmChart. 2856 + items: 2857 + description: Condition contains details for one aspect of the current 2858 + state of this API Resource. 2859 + properties: 2860 + lastTransitionTime: 2861 + description: |- 2862 + lastTransitionTime is the last time the condition transitioned from one status to another. 2863 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 2864 + format: date-time 2865 + type: string 2866 + message: 2867 + description: |- 2868 + message is a human readable message indicating details about the transition. 2869 + This may be an empty string. 2870 + maxLength: 32768 2871 + type: string 2872 + observedGeneration: 2873 + description: |- 2874 + observedGeneration represents the .metadata.generation that the condition was set based upon. 2875 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 2876 + with respect to the current state of the instance. 2877 + format: int64 2878 + minimum: 0 2879 + type: integer 2880 + reason: 2881 + description: |- 2882 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 2883 + Producers of specific condition types may define expected values and meanings for this field, 2884 + and whether the values are considered a guaranteed API. 2885 + The value should be a CamelCase string. 2886 + This field may not be empty. 2887 + maxLength: 1024 2888 + minLength: 1 2889 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 2890 + type: string 2891 + status: 2892 + description: status of the condition, one of True, False, Unknown. 2893 + enum: 2894 + - "True" 2895 + - "False" 2896 + - Unknown 2897 + type: string 2898 + type: 2899 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 2900 + maxLength: 316 2901 + 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])$ 2902 + type: string 2903 + required: 2904 + - lastTransitionTime 2905 + - message 2906 + - reason 2907 + - status 2908 + - type 2909 + type: object 2910 + type: array 2911 + lastHandledReconcileAt: 2912 + description: |- 2913 + LastHandledReconcileAt holds the value of the most recent 2914 + reconcile request value, so a change of the annotation value 2915 + can be detected. 2916 + type: string 2917 + observedChartName: 2918 + description: |- 2919 + ObservedChartName is the last observed chart name as specified by the 2920 + resolved chart reference. 2921 + type: string 2922 + observedGeneration: 2923 + description: |- 2924 + ObservedGeneration is the last observed generation of the HelmChart 2925 + object. 2926 + format: int64 2927 + type: integer 2928 + observedSourceArtifactRevision: 2929 + description: |- 2930 + ObservedSourceArtifactRevision is the last observed Artifact.Revision 2931 + of the HelmChartSpec.SourceRef. 2932 + type: string 2933 + observedValuesFiles: 2934 + description: |- 2935 + ObservedValuesFiles are the observed value files of the last successful 2936 + reconciliation. 2937 + It matches the chart in the last successfully reconciled artifact. 2938 + items: 2939 + type: string 2940 + type: array 2941 + url: 2942 + description: |- 2943 + URL is the dynamic fetch link for the latest Artifact. 2944 + It is provided on a "best effort" basis, and using the precise 2945 + BucketStatus.Artifact data is recommended. 2946 + type: string 2947 + type: object 2948 + type: object 2949 + served: true 2950 + storage: false 2951 + subresources: 2952 + status: {} 2953 + --- 2954 + apiVersion: apiextensions.k8s.io/v1 2955 + kind: CustomResourceDefinition 2956 + metadata: 2957 + annotations: 2958 + controller-gen.kubebuilder.io/version: v0.19.0 2959 + labels: 2960 + app.kubernetes.io/component: source-controller 2961 + app.kubernetes.io/instance: flux-system 2962 + app.kubernetes.io/part-of: flux 2963 + app.kubernetes.io/version: v2.7.3 2964 + name: helmrepositories.source.toolkit.fluxcd.io 2965 + spec: 2966 + group: source.toolkit.fluxcd.io 2967 + names: 2968 + kind: HelmRepository 2969 + listKind: HelmRepositoryList 2970 + plural: helmrepositories 2971 + shortNames: 2972 + - helmrepo 2973 + singular: helmrepository 2974 + scope: Namespaced 2975 + versions: 2976 + - additionalPrinterColumns: 2977 + - jsonPath: .spec.url 2978 + name: URL 2979 + type: string 2980 + - jsonPath: .metadata.creationTimestamp 2981 + name: Age 2982 + type: date 2983 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 2984 + name: Ready 2985 + type: string 2986 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 2987 + name: Status 2988 + type: string 2989 + name: v1 2990 + schema: 2991 + openAPIV3Schema: 2992 + description: HelmRepository is the Schema for the helmrepositories API. 2993 + properties: 2994 + apiVersion: 2995 + description: |- 2996 + APIVersion defines the versioned schema of this representation of an object. 2997 + Servers should convert recognized schemas to the latest internal value, and 2998 + may reject unrecognized values. 2999 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 3000 + type: string 3001 + kind: 3002 + description: |- 3003 + Kind is a string value representing the REST resource this object represents. 3004 + Servers may infer this from the endpoint the client submits requests to. 3005 + Cannot be updated. 3006 + In CamelCase. 3007 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 3008 + type: string 3009 + metadata: 3010 + type: object 3011 + spec: 3012 + description: |- 3013 + HelmRepositorySpec specifies the required configuration to produce an 3014 + Artifact for a Helm repository index YAML. 3015 + properties: 3016 + accessFrom: 3017 + description: |- 3018 + AccessFrom specifies an Access Control List for allowing cross-namespace 3019 + references to this object. 3020 + NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 3021 + properties: 3022 + namespaceSelectors: 3023 + description: |- 3024 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 3025 + Items in this list are evaluated using a logical OR operation. 3026 + items: 3027 + description: |- 3028 + NamespaceSelector selects the namespaces to which this ACL applies. 3029 + An empty map of MatchLabels matches all namespaces in a cluster. 3030 + properties: 3031 + matchLabels: 3032 + additionalProperties: 3033 + type: string 3034 + description: |- 3035 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 3036 + map is equivalent to an element of matchExpressions, whose key field is "key", the 3037 + operator is "In", and the values array contains only "value". The requirements are ANDed. 3038 + type: object 3039 + type: object 3040 + type: array 3041 + required: 3042 + - namespaceSelectors 3043 + type: object 3044 + certSecretRef: 3045 + description: |- 3046 + CertSecretRef can be given the name of a Secret containing 3047 + either or both of 3048 + 3049 + - a PEM-encoded client certificate (`tls.crt`) and private 3050 + key (`tls.key`); 3051 + - a PEM-encoded CA certificate (`ca.crt`) 3052 + 3053 + and whichever are supplied, will be used for connecting to the 3054 + registry. The client cert and key are useful if you are 3055 + authenticating with a certificate; the CA cert is useful if 3056 + you are using a self-signed server certificate. The Secret must 3057 + be of type `Opaque` or `kubernetes.io/tls`. 3058 + 3059 + It takes precedence over the values specified in the Secret referred 3060 + to by `.spec.secretRef`. 3061 + properties: 3062 + name: 3063 + description: Name of the referent. 3064 + type: string 3065 + required: 3066 + - name 3067 + type: object 3068 + insecure: 3069 + description: |- 3070 + Insecure allows connecting to a non-TLS HTTP container registry. 3071 + This field is only taken into account if the .spec.type field is set to 'oci'. 3072 + type: boolean 3073 + interval: 3074 + description: |- 3075 + Interval at which the HelmRepository URL is checked for updates. 3076 + This interval is approximate and may be subject to jitter to ensure 3077 + efficient use of resources. 3078 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 3079 + type: string 3080 + passCredentials: 3081 + description: |- 3082 + PassCredentials allows the credentials from the SecretRef to be passed 3083 + on to a host that does not match the host as defined in URL. 3084 + This may be required if the host of the advertised chart URLs in the 3085 + index differ from the defined URL. 3086 + Enabling this should be done with caution, as it can potentially result 3087 + in credentials getting stolen in a MITM-attack. 3088 + type: boolean 3089 + provider: 3090 + default: generic 3091 + description: |- 3092 + Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 3093 + This field is optional, and only taken into account if the .spec.type field is set to 'oci'. 3094 + When not specified, defaults to 'generic'. 3095 + enum: 3096 + - generic 3097 + - aws 3098 + - azure 3099 + - gcp 3100 + type: string 3101 + secretRef: 3102 + description: |- 3103 + SecretRef specifies the Secret containing authentication credentials 3104 + for the HelmRepository. 3105 + For HTTP/S basic auth the secret must contain 'username' and 'password' 3106 + fields. 3107 + Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile' 3108 + keys is deprecated. Please use `.spec.certSecretRef` instead. 3109 + properties: 3110 + name: 3111 + description: Name of the referent. 3112 + type: string 3113 + required: 3114 + - name 3115 + type: object 3116 + suspend: 3117 + description: |- 3118 + Suspend tells the controller to suspend the reconciliation of this 3119 + HelmRepository. 3120 + type: boolean 3121 + timeout: 3122 + description: |- 3123 + Timeout is used for the index fetch operation for an HTTPS helm repository, 3124 + and for remote OCI Repository operations like pulling for an OCI helm 3125 + chart by the associated HelmChart. 3126 + Its default value is 60s. 3127 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 3128 + type: string 3129 + type: 3130 + description: |- 3131 + Type of the HelmRepository. 3132 + When this field is set to "oci", the URL field value must be prefixed with "oci://". 3133 + enum: 3134 + - default 3135 + - oci 3136 + type: string 3137 + url: 3138 + description: |- 3139 + URL of the Helm repository, a valid URL contains at least a protocol and 3140 + host. 3141 + pattern: ^(http|https|oci)://.*$ 3142 + type: string 3143 + required: 3144 + - url 3145 + type: object 3146 + status: 3147 + default: 3148 + observedGeneration: -1 3149 + description: HelmRepositoryStatus records the observed state of the HelmRepository. 3150 + properties: 3151 + artifact: 3152 + description: Artifact represents the last successful HelmRepository 3153 + reconciliation. 3154 + properties: 3155 + digest: 3156 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3157 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3158 + type: string 3159 + lastUpdateTime: 3160 + description: |- 3161 + LastUpdateTime is the timestamp corresponding to the last update of the 3162 + Artifact. 3163 + format: date-time 3164 + type: string 3165 + metadata: 3166 + additionalProperties: 3167 + type: string 3168 + description: Metadata holds upstream information such as OCI annotations. 3169 + type: object 3170 + path: 3171 + description: |- 3172 + Path is the relative file path of the Artifact. It can be used to locate 3173 + the file in the root of the Artifact storage on the local file system of 3174 + the controller managing the Source. 3175 + type: string 3176 + revision: 3177 + description: |- 3178 + Revision is a human-readable identifier traceable in the origin source 3179 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3180 + type: string 3181 + size: 3182 + description: Size is the number of bytes in the file. 3183 + format: int64 3184 + type: integer 3185 + url: 3186 + description: |- 3187 + URL is the HTTP address of the Artifact as exposed by the controller 3188 + managing the Source. It can be used to retrieve the Artifact for 3189 + consumption, e.g. by another controller applying the Artifact contents. 3190 + type: string 3191 + required: 3192 + - digest 3193 + - lastUpdateTime 3194 + - path 3195 + - revision 3196 + - url 3197 + type: object 3198 + conditions: 3199 + description: Conditions holds the conditions for the HelmRepository. 3200 + items: 3201 + description: Condition contains details for one aspect of the current 3202 + state of this API Resource. 3203 + properties: 3204 + lastTransitionTime: 3205 + description: |- 3206 + lastTransitionTime is the last time the condition transitioned from one status to another. 3207 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 3208 + format: date-time 3209 + type: string 3210 + message: 3211 + description: |- 3212 + message is a human readable message indicating details about the transition. 3213 + This may be an empty string. 3214 + maxLength: 32768 3215 + type: string 3216 + observedGeneration: 3217 + description: |- 3218 + observedGeneration represents the .metadata.generation that the condition was set based upon. 3219 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 3220 + with respect to the current state of the instance. 3221 + format: int64 3222 + minimum: 0 3223 + type: integer 3224 + reason: 3225 + description: |- 3226 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 3227 + Producers of specific condition types may define expected values and meanings for this field, 3228 + and whether the values are considered a guaranteed API. 3229 + The value should be a CamelCase string. 3230 + This field may not be empty. 3231 + maxLength: 1024 3232 + minLength: 1 3233 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 3234 + type: string 3235 + status: 3236 + description: status of the condition, one of True, False, Unknown. 3237 + enum: 3238 + - "True" 3239 + - "False" 3240 + - Unknown 3241 + type: string 3242 + type: 3243 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 3244 + maxLength: 316 3245 + 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])$ 3246 + type: string 3247 + required: 3248 + - lastTransitionTime 3249 + - message 3250 + - reason 3251 + - status 3252 + - type 3253 + type: object 3254 + type: array 3255 + lastHandledReconcileAt: 3256 + description: |- 3257 + LastHandledReconcileAt holds the value of the most recent 3258 + reconcile request value, so a change of the annotation value 3259 + can be detected. 3260 + type: string 3261 + observedGeneration: 3262 + description: |- 3263 + ObservedGeneration is the last observed generation of the HelmRepository 3264 + object. 3265 + format: int64 3266 + type: integer 3267 + url: 3268 + description: |- 3269 + URL is the dynamic fetch link for the latest Artifact. 3270 + It is provided on a "best effort" basis, and using the precise 3271 + HelmRepositoryStatus.Artifact data is recommended. 3272 + type: string 3273 + type: object 3274 + type: object 3275 + served: true 3276 + storage: true 3277 + subresources: 3278 + status: {} 3279 + - additionalPrinterColumns: 3280 + - jsonPath: .spec.url 3281 + name: URL 3282 + type: string 3283 + - jsonPath: .metadata.creationTimestamp 3284 + name: Age 3285 + type: date 3286 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 3287 + name: Ready 3288 + type: string 3289 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 3290 + name: Status 3291 + type: string 3292 + deprecated: true 3293 + deprecationWarning: v1beta2 HelmRepository is deprecated, upgrade to v1 3294 + name: v1beta2 3295 + schema: 3296 + openAPIV3Schema: 3297 + description: HelmRepository is the Schema for the helmrepositories API. 3298 + properties: 3299 + apiVersion: 3300 + description: |- 3301 + APIVersion defines the versioned schema of this representation of an object. 3302 + Servers should convert recognized schemas to the latest internal value, and 3303 + may reject unrecognized values. 3304 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 3305 + type: string 3306 + kind: 3307 + description: |- 3308 + Kind is a string value representing the REST resource this object represents. 3309 + Servers may infer this from the endpoint the client submits requests to. 3310 + Cannot be updated. 3311 + In CamelCase. 3312 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 3313 + type: string 3314 + metadata: 3315 + type: object 3316 + spec: 3317 + description: |- 3318 + HelmRepositorySpec specifies the required configuration to produce an 3319 + Artifact for a Helm repository index YAML. 3320 + properties: 3321 + accessFrom: 3322 + description: |- 3323 + AccessFrom specifies an Access Control List for allowing cross-namespace 3324 + references to this object. 3325 + NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 3326 + properties: 3327 + namespaceSelectors: 3328 + description: |- 3329 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 3330 + Items in this list are evaluated using a logical OR operation. 3331 + items: 3332 + description: |- 3333 + NamespaceSelector selects the namespaces to which this ACL applies. 3334 + An empty map of MatchLabels matches all namespaces in a cluster. 3335 + properties: 3336 + matchLabels: 3337 + additionalProperties: 3338 + type: string 3339 + description: |- 3340 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 3341 + map is equivalent to an element of matchExpressions, whose key field is "key", the 3342 + operator is "In", and the values array contains only "value". The requirements are ANDed. 3343 + type: object 3344 + type: object 3345 + type: array 3346 + required: 3347 + - namespaceSelectors 3348 + type: object 3349 + certSecretRef: 3350 + description: |- 3351 + CertSecretRef can be given the name of a Secret containing 3352 + either or both of 3353 + 3354 + - a PEM-encoded client certificate (`tls.crt`) and private 3355 + key (`tls.key`); 3356 + - a PEM-encoded CA certificate (`ca.crt`) 3357 + 3358 + and whichever are supplied, will be used for connecting to the 3359 + registry. The client cert and key are useful if you are 3360 + authenticating with a certificate; the CA cert is useful if 3361 + you are using a self-signed server certificate. The Secret must 3362 + be of type `Opaque` or `kubernetes.io/tls`. 3363 + 3364 + It takes precedence over the values specified in the Secret referred 3365 + to by `.spec.secretRef`. 3366 + properties: 3367 + name: 3368 + description: Name of the referent. 3369 + type: string 3370 + required: 3371 + - name 3372 + type: object 3373 + insecure: 3374 + description: |- 3375 + Insecure allows connecting to a non-TLS HTTP container registry. 3376 + This field is only taken into account if the .spec.type field is set to 'oci'. 3377 + type: boolean 3378 + interval: 3379 + description: |- 3380 + Interval at which the HelmRepository URL is checked for updates. 3381 + This interval is approximate and may be subject to jitter to ensure 3382 + efficient use of resources. 3383 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 3384 + type: string 3385 + passCredentials: 3386 + description: |- 3387 + PassCredentials allows the credentials from the SecretRef to be passed 3388 + on to a host that does not match the host as defined in URL. 3389 + This may be required if the host of the advertised chart URLs in the 3390 + index differ from the defined URL. 3391 + Enabling this should be done with caution, as it can potentially result 3392 + in credentials getting stolen in a MITM-attack. 3393 + type: boolean 3394 + provider: 3395 + default: generic 3396 + description: |- 3397 + Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 3398 + This field is optional, and only taken into account if the .spec.type field is set to 'oci'. 3399 + When not specified, defaults to 'generic'. 3400 + enum: 3401 + - generic 3402 + - aws 3403 + - azure 3404 + - gcp 3405 + type: string 3406 + secretRef: 3407 + description: |- 3408 + SecretRef specifies the Secret containing authentication credentials 3409 + for the HelmRepository. 3410 + For HTTP/S basic auth the secret must contain 'username' and 'password' 3411 + fields. 3412 + Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile' 3413 + keys is deprecated. Please use `.spec.certSecretRef` instead. 3414 + properties: 3415 + name: 3416 + description: Name of the referent. 3417 + type: string 3418 + required: 3419 + - name 3420 + type: object 3421 + suspend: 3422 + description: |- 3423 + Suspend tells the controller to suspend the reconciliation of this 3424 + HelmRepository. 3425 + type: boolean 3426 + timeout: 3427 + description: |- 3428 + Timeout is used for the index fetch operation for an HTTPS helm repository, 3429 + and for remote OCI Repository operations like pulling for an OCI helm 3430 + chart by the associated HelmChart. 3431 + Its default value is 60s. 3432 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 3433 + type: string 3434 + type: 3435 + description: |- 3436 + Type of the HelmRepository. 3437 + When this field is set to "oci", the URL field value must be prefixed with "oci://". 3438 + enum: 3439 + - default 3440 + - oci 3441 + type: string 3442 + url: 3443 + description: |- 3444 + URL of the Helm repository, a valid URL contains at least a protocol and 3445 + host. 3446 + pattern: ^(http|https|oci)://.*$ 3447 + type: string 3448 + required: 3449 + - url 3450 + type: object 3451 + status: 3452 + default: 3453 + observedGeneration: -1 3454 + description: HelmRepositoryStatus records the observed state of the HelmRepository. 3455 + properties: 3456 + artifact: 3457 + description: Artifact represents the last successful HelmRepository 3458 + reconciliation. 3459 + properties: 3460 + digest: 3461 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3462 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3463 + type: string 3464 + lastUpdateTime: 3465 + description: |- 3466 + LastUpdateTime is the timestamp corresponding to the last update of the 3467 + Artifact. 3468 + format: date-time 3469 + type: string 3470 + metadata: 3471 + additionalProperties: 3472 + type: string 3473 + description: Metadata holds upstream information such as OCI annotations. 3474 + type: object 3475 + path: 3476 + description: |- 3477 + Path is the relative file path of the Artifact. It can be used to locate 3478 + the file in the root of the Artifact storage on the local file system of 3479 + the controller managing the Source. 3480 + type: string 3481 + revision: 3482 + description: |- 3483 + Revision is a human-readable identifier traceable in the origin source 3484 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3485 + type: string 3486 + size: 3487 + description: Size is the number of bytes in the file. 3488 + format: int64 3489 + type: integer 3490 + url: 3491 + description: |- 3492 + URL is the HTTP address of the Artifact as exposed by the controller 3493 + managing the Source. It can be used to retrieve the Artifact for 3494 + consumption, e.g. by another controller applying the Artifact contents. 3495 + type: string 3496 + required: 3497 + - digest 3498 + - lastUpdateTime 3499 + - path 3500 + - revision 3501 + - url 3502 + type: object 3503 + conditions: 3504 + description: Conditions holds the conditions for the HelmRepository. 3505 + items: 3506 + description: Condition contains details for one aspect of the current 3507 + state of this API Resource. 3508 + properties: 3509 + lastTransitionTime: 3510 + description: |- 3511 + lastTransitionTime is the last time the condition transitioned from one status to another. 3512 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 3513 + format: date-time 3514 + type: string 3515 + message: 3516 + description: |- 3517 + message is a human readable message indicating details about the transition. 3518 + This may be an empty string. 3519 + maxLength: 32768 3520 + type: string 3521 + observedGeneration: 3522 + description: |- 3523 + observedGeneration represents the .metadata.generation that the condition was set based upon. 3524 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 3525 + with respect to the current state of the instance. 3526 + format: int64 3527 + minimum: 0 3528 + type: integer 3529 + reason: 3530 + description: |- 3531 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 3532 + Producers of specific condition types may define expected values and meanings for this field, 3533 + and whether the values are considered a guaranteed API. 3534 + The value should be a CamelCase string. 3535 + This field may not be empty. 3536 + maxLength: 1024 3537 + minLength: 1 3538 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 3539 + type: string 3540 + status: 3541 + description: status of the condition, one of True, False, Unknown. 3542 + enum: 3543 + - "True" 3544 + - "False" 3545 + - Unknown 3546 + type: string 3547 + type: 3548 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 3549 + maxLength: 316 3550 + 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])$ 3551 + type: string 3552 + required: 3553 + - lastTransitionTime 3554 + - message 3555 + - reason 3556 + - status 3557 + - type 3558 + type: object 3559 + type: array 3560 + lastHandledReconcileAt: 3561 + description: |- 3562 + LastHandledReconcileAt holds the value of the most recent 3563 + reconcile request value, so a change of the annotation value 3564 + can be detected. 3565 + type: string 3566 + observedGeneration: 3567 + description: |- 3568 + ObservedGeneration is the last observed generation of the HelmRepository 3569 + object. 3570 + format: int64 3571 + type: integer 3572 + url: 3573 + description: |- 3574 + URL is the dynamic fetch link for the latest Artifact. 3575 + It is provided on a "best effort" basis, and using the precise 3576 + HelmRepositoryStatus.Artifact data is recommended. 3577 + type: string 3578 + type: object 3579 + type: object 3580 + served: true 3581 + storage: false 3582 + subresources: 3583 + status: {} 3584 + --- 3585 + apiVersion: apiextensions.k8s.io/v1 3586 + kind: CustomResourceDefinition 3587 + metadata: 3588 + annotations: 3589 + controller-gen.kubebuilder.io/version: v0.19.0 3590 + labels: 3591 + app.kubernetes.io/component: source-controller 3592 + app.kubernetes.io/instance: flux-system 3593 + app.kubernetes.io/part-of: flux 3594 + app.kubernetes.io/version: v2.7.3 3595 + name: ocirepositories.source.toolkit.fluxcd.io 3596 + spec: 3597 + group: source.toolkit.fluxcd.io 3598 + names: 3599 + kind: OCIRepository 3600 + listKind: OCIRepositoryList 3601 + plural: ocirepositories 3602 + shortNames: 3603 + - ocirepo 3604 + singular: ocirepository 3605 + scope: Namespaced 3606 + versions: 3607 + - additionalPrinterColumns: 3608 + - jsonPath: .spec.url 3609 + name: URL 3610 + type: string 3611 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 3612 + name: Ready 3613 + type: string 3614 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 3615 + name: Status 3616 + type: string 3617 + - jsonPath: .metadata.creationTimestamp 3618 + name: Age 3619 + type: date 3620 + name: v1 3621 + schema: 3622 + openAPIV3Schema: 3623 + description: OCIRepository is the Schema for the ocirepositories API 3624 + properties: 3625 + apiVersion: 3626 + description: |- 3627 + APIVersion defines the versioned schema of this representation of an object. 3628 + Servers should convert recognized schemas to the latest internal value, and 3629 + may reject unrecognized values. 3630 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 3631 + type: string 3632 + kind: 3633 + description: |- 3634 + Kind is a string value representing the REST resource this object represents. 3635 + Servers may infer this from the endpoint the client submits requests to. 3636 + Cannot be updated. 3637 + In CamelCase. 3638 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 3639 + type: string 3640 + metadata: 3641 + type: object 3642 + spec: 3643 + description: OCIRepositorySpec defines the desired state of OCIRepository 3644 + properties: 3645 + certSecretRef: 3646 + description: |- 3647 + CertSecretRef can be given the name of a Secret containing 3648 + either or both of 3649 + 3650 + - a PEM-encoded client certificate (`tls.crt`) and private 3651 + key (`tls.key`); 3652 + - a PEM-encoded CA certificate (`ca.crt`) 3653 + 3654 + and whichever are supplied, will be used for connecting to the 3655 + registry. The client cert and key are useful if you are 3656 + authenticating with a certificate; the CA cert is useful if 3657 + you are using a self-signed server certificate. The Secret must 3658 + be of type `Opaque` or `kubernetes.io/tls`. 3659 + properties: 3660 + name: 3661 + description: Name of the referent. 3662 + type: string 3663 + required: 3664 + - name 3665 + type: object 3666 + ignore: 3667 + description: |- 3668 + Ignore overrides the set of excluded patterns in the .sourceignore format 3669 + (which is the same as .gitignore). If not provided, a default will be used, 3670 + consult the documentation for your version to find out what those are. 3671 + type: string 3672 + insecure: 3673 + description: Insecure allows connecting to a non-TLS HTTP container 3674 + registry. 3675 + type: boolean 3676 + interval: 3677 + description: |- 3678 + Interval at which the OCIRepository URL is checked for updates. 3679 + This interval is approximate and may be subject to jitter to ensure 3680 + efficient use of resources. 3681 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 3682 + type: string 3683 + layerSelector: 3684 + description: |- 3685 + LayerSelector specifies which layer should be extracted from the OCI artifact. 3686 + When not specified, the first layer found in the artifact is selected. 3687 + properties: 3688 + mediaType: 3689 + description: |- 3690 + MediaType specifies the OCI media type of the layer 3691 + which should be extracted from the OCI Artifact. The 3692 + first layer matching this type is selected. 3693 + type: string 3694 + operation: 3695 + description: |- 3696 + Operation specifies how the selected layer should be processed. 3697 + By default, the layer compressed content is extracted to storage. 3698 + When the operation is set to 'copy', the layer compressed content 3699 + is persisted to storage as it is. 3700 + enum: 3701 + - extract 3702 + - copy 3703 + type: string 3704 + type: object 3705 + provider: 3706 + default: generic 3707 + description: |- 3708 + The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 3709 + When not specified, defaults to 'generic'. 3710 + enum: 3711 + - generic 3712 + - aws 3713 + - azure 3714 + - gcp 3715 + type: string 3716 + proxySecretRef: 3717 + description: |- 3718 + ProxySecretRef specifies the Secret containing the proxy configuration 3719 + to use while communicating with the container registry. 3720 + properties: 3721 + name: 3722 + description: Name of the referent. 3723 + type: string 3724 + required: 3725 + - name 3726 + type: object 3727 + ref: 3728 + description: |- 3729 + The OCI reference to pull and monitor for changes, 3730 + defaults to the latest tag. 3731 + properties: 3732 + digest: 3733 + description: |- 3734 + Digest is the image digest to pull, takes precedence over SemVer. 3735 + The value should be in the format 'sha256:<HASH>'. 3736 + type: string 3737 + semver: 3738 + description: |- 3739 + SemVer is the range of tags to pull selecting the latest within 3740 + the range, takes precedence over Tag. 3741 + type: string 3742 + semverFilter: 3743 + description: SemverFilter is a regex pattern to filter the tags 3744 + within the SemVer range. 3745 + type: string 3746 + tag: 3747 + description: Tag is the image tag to pull, defaults to latest. 3748 + type: string 3749 + type: object 3750 + secretRef: 3751 + description: |- 3752 + SecretRef contains the secret name containing the registry login 3753 + credentials to resolve image metadata. 3754 + The secret must be of type kubernetes.io/dockerconfigjson. 3755 + properties: 3756 + name: 3757 + description: Name of the referent. 3758 + type: string 3759 + required: 3760 + - name 3761 + type: object 3762 + serviceAccountName: 3763 + description: |- 3764 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 3765 + the image pull if the service account has attached pull secrets. For more information: 3766 + https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account 3767 + type: string 3768 + suspend: 3769 + description: This flag tells the controller to suspend the reconciliation 3770 + of this source. 3771 + type: boolean 3772 + timeout: 3773 + default: 60s 3774 + description: The timeout for remote OCI Repository operations like 3775 + pulling, defaults to 60s. 3776 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 3777 + type: string 3778 + url: 3779 + description: |- 3780 + URL is a reference to an OCI artifact repository hosted 3781 + on a remote container registry. 3782 + pattern: ^oci://.*$ 3783 + type: string 3784 + verify: 3785 + description: |- 3786 + Verify contains the secret name containing the trusted public keys 3787 + used to verify the signature and specifies which provider to use to check 3788 + whether OCI image is authentic. 3789 + properties: 3790 + matchOIDCIdentity: 3791 + description: |- 3792 + MatchOIDCIdentity specifies the identity matching criteria to use 3793 + while verifying an OCI artifact which was signed using Cosign keyless 3794 + signing. The artifact's identity is deemed to be verified if any of the 3795 + specified matchers match against the identity. 3796 + items: 3797 + description: |- 3798 + OIDCIdentityMatch specifies options for verifying the certificate identity, 3799 + i.e. the issuer and the subject of the certificate. 3800 + properties: 3801 + issuer: 3802 + description: |- 3803 + Issuer specifies the regex pattern to match against to verify 3804 + the OIDC issuer in the Fulcio certificate. The pattern must be a 3805 + valid Go regular expression. 3806 + type: string 3807 + subject: 3808 + description: |- 3809 + Subject specifies the regex pattern to match against to verify 3810 + the identity subject in the Fulcio certificate. The pattern must 3811 + be a valid Go regular expression. 3812 + type: string 3813 + required: 3814 + - issuer 3815 + - subject 3816 + type: object 3817 + type: array 3818 + provider: 3819 + default: cosign 3820 + description: Provider specifies the technology used to sign the 3821 + OCI Artifact. 3822 + enum: 3823 + - cosign 3824 + - notation 3825 + type: string 3826 + secretRef: 3827 + description: |- 3828 + SecretRef specifies the Kubernetes Secret containing the 3829 + trusted public keys. 3830 + properties: 3831 + name: 3832 + description: Name of the referent. 3833 + type: string 3834 + required: 3835 + - name 3836 + type: object 3837 + required: 3838 + - provider 3839 + type: object 3840 + required: 3841 + - interval 3842 + - url 3843 + type: object 3844 + status: 3845 + default: 3846 + observedGeneration: -1 3847 + description: OCIRepositoryStatus defines the observed state of OCIRepository 3848 + properties: 3849 + artifact: 3850 + description: Artifact represents the output of the last successful 3851 + OCI Repository sync. 3852 + properties: 3853 + digest: 3854 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3855 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3856 + type: string 3857 + lastUpdateTime: 3858 + description: |- 3859 + LastUpdateTime is the timestamp corresponding to the last update of the 3860 + Artifact. 3861 + format: date-time 3862 + type: string 3863 + metadata: 3864 + additionalProperties: 3865 + type: string 3866 + description: Metadata holds upstream information such as OCI annotations. 3867 + type: object 3868 + path: 3869 + description: |- 3870 + Path is the relative file path of the Artifact. It can be used to locate 3871 + the file in the root of the Artifact storage on the local file system of 3872 + the controller managing the Source. 3873 + type: string 3874 + revision: 3875 + description: |- 3876 + Revision is a human-readable identifier traceable in the origin source 3877 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3878 + type: string 3879 + size: 3880 + description: Size is the number of bytes in the file. 3881 + format: int64 3882 + type: integer 3883 + url: 3884 + description: |- 3885 + URL is the HTTP address of the Artifact as exposed by the controller 3886 + managing the Source. It can be used to retrieve the Artifact for 3887 + consumption, e.g. by another controller applying the Artifact contents. 3888 + type: string 3889 + required: 3890 + - digest 3891 + - lastUpdateTime 3892 + - path 3893 + - revision 3894 + - url 3895 + type: object 3896 + conditions: 3897 + description: Conditions holds the conditions for the OCIRepository. 3898 + items: 3899 + description: Condition contains details for one aspect of the current 3900 + state of this API Resource. 3901 + properties: 3902 + lastTransitionTime: 3903 + description: |- 3904 + lastTransitionTime is the last time the condition transitioned from one status to another. 3905 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 3906 + format: date-time 3907 + type: string 3908 + message: 3909 + description: |- 3910 + message is a human readable message indicating details about the transition. 3911 + This may be an empty string. 3912 + maxLength: 32768 3913 + type: string 3914 + observedGeneration: 3915 + description: |- 3916 + observedGeneration represents the .metadata.generation that the condition was set based upon. 3917 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 3918 + with respect to the current state of the instance. 3919 + format: int64 3920 + minimum: 0 3921 + type: integer 3922 + reason: 3923 + description: |- 3924 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 3925 + Producers of specific condition types may define expected values and meanings for this field, 3926 + and whether the values are considered a guaranteed API. 3927 + The value should be a CamelCase string. 3928 + This field may not be empty. 3929 + maxLength: 1024 3930 + minLength: 1 3931 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 3932 + type: string 3933 + status: 3934 + description: status of the condition, one of True, False, Unknown. 3935 + enum: 3936 + - "True" 3937 + - "False" 3938 + - Unknown 3939 + type: string 3940 + type: 3941 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 3942 + maxLength: 316 3943 + 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])$ 3944 + type: string 3945 + required: 3946 + - lastTransitionTime 3947 + - message 3948 + - reason 3949 + - status 3950 + - type 3951 + type: object 3952 + type: array 3953 + lastHandledReconcileAt: 3954 + description: |- 3955 + LastHandledReconcileAt holds the value of the most recent 3956 + reconcile request value, so a change of the annotation value 3957 + can be detected. 3958 + type: string 3959 + observedGeneration: 3960 + description: ObservedGeneration is the last observed generation. 3961 + format: int64 3962 + type: integer 3963 + observedIgnore: 3964 + description: |- 3965 + ObservedIgnore is the observed exclusion patterns used for constructing 3966 + the source artifact. 3967 + type: string 3968 + observedLayerSelector: 3969 + description: |- 3970 + ObservedLayerSelector is the observed layer selector used for constructing 3971 + the source artifact. 3972 + properties: 3973 + mediaType: 3974 + description: |- 3975 + MediaType specifies the OCI media type of the layer 3976 + which should be extracted from the OCI Artifact. The 3977 + first layer matching this type is selected. 3978 + type: string 3979 + operation: 3980 + description: |- 3981 + Operation specifies how the selected layer should be processed. 3982 + By default, the layer compressed content is extracted to storage. 3983 + When the operation is set to 'copy', the layer compressed content 3984 + is persisted to storage as it is. 3985 + enum: 3986 + - extract 3987 + - copy 3988 + type: string 3989 + type: object 3990 + url: 3991 + description: URL is the download link for the artifact output of the 3992 + last OCI Repository sync. 3993 + type: string 3994 + type: object 3995 + type: object 3996 + served: true 3997 + storage: true 3998 + subresources: 3999 + status: {} 4000 + - additionalPrinterColumns: 4001 + - jsonPath: .spec.url 4002 + name: URL 4003 + type: string 4004 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 4005 + name: Ready 4006 + type: string 4007 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 4008 + name: Status 4009 + type: string 4010 + - jsonPath: .metadata.creationTimestamp 4011 + name: Age 4012 + type: date 4013 + deprecated: true 4014 + deprecationWarning: v1beta2 OCIRepository is deprecated, upgrade to v1 4015 + name: v1beta2 4016 + schema: 4017 + openAPIV3Schema: 4018 + description: OCIRepository is the Schema for the ocirepositories API 4019 + properties: 4020 + apiVersion: 4021 + description: |- 4022 + APIVersion defines the versioned schema of this representation of an object. 4023 + Servers should convert recognized schemas to the latest internal value, and 4024 + may reject unrecognized values. 4025 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 4026 + type: string 4027 + kind: 4028 + description: |- 4029 + Kind is a string value representing the REST resource this object represents. 4030 + Servers may infer this from the endpoint the client submits requests to. 4031 + Cannot be updated. 4032 + In CamelCase. 4033 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 4034 + type: string 4035 + metadata: 4036 + type: object 4037 + spec: 4038 + description: OCIRepositorySpec defines the desired state of OCIRepository 4039 + properties: 4040 + certSecretRef: 4041 + description: |- 4042 + CertSecretRef can be given the name of a Secret containing 4043 + either or both of 4044 + 4045 + - a PEM-encoded client certificate (`tls.crt`) and private 4046 + key (`tls.key`); 4047 + - a PEM-encoded CA certificate (`ca.crt`) 4048 + 4049 + and whichever are supplied, will be used for connecting to the 4050 + registry. The client cert and key are useful if you are 4051 + authenticating with a certificate; the CA cert is useful if 4052 + you are using a self-signed server certificate. The Secret must 4053 + be of type `Opaque` or `kubernetes.io/tls`. 4054 + 4055 + Note: Support for the `caFile`, `certFile` and `keyFile` keys have 4056 + been deprecated. 4057 + properties: 4058 + name: 4059 + description: Name of the referent. 4060 + type: string 4061 + required: 4062 + - name 4063 + type: object 4064 + ignore: 4065 + description: |- 4066 + Ignore overrides the set of excluded patterns in the .sourceignore format 4067 + (which is the same as .gitignore). If not provided, a default will be used, 4068 + consult the documentation for your version to find out what those are. 4069 + type: string 4070 + insecure: 4071 + description: Insecure allows connecting to a non-TLS HTTP container 4072 + registry. 4073 + type: boolean 4074 + interval: 4075 + description: |- 4076 + Interval at which the OCIRepository URL is checked for updates. 4077 + This interval is approximate and may be subject to jitter to ensure 4078 + efficient use of resources. 4079 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 4080 + type: string 4081 + layerSelector: 4082 + description: |- 4083 + LayerSelector specifies which layer should be extracted from the OCI artifact. 4084 + When not specified, the first layer found in the artifact is selected. 4085 + properties: 4086 + mediaType: 4087 + description: |- 4088 + MediaType specifies the OCI media type of the layer 4089 + which should be extracted from the OCI Artifact. The 4090 + first layer matching this type is selected. 4091 + type: string 4092 + operation: 4093 + description: |- 4094 + Operation specifies how the selected layer should be processed. 4095 + By default, the layer compressed content is extracted to storage. 4096 + When the operation is set to 'copy', the layer compressed content 4097 + is persisted to storage as it is. 4098 + enum: 4099 + - extract 4100 + - copy 4101 + type: string 4102 + type: object 4103 + provider: 4104 + default: generic 4105 + description: |- 4106 + The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 4107 + When not specified, defaults to 'generic'. 4108 + enum: 4109 + - generic 4110 + - aws 4111 + - azure 4112 + - gcp 4113 + type: string 4114 + proxySecretRef: 4115 + description: |- 4116 + ProxySecretRef specifies the Secret containing the proxy configuration 4117 + to use while communicating with the container registry. 4118 + properties: 4119 + name: 4120 + description: Name of the referent. 4121 + type: string 4122 + required: 4123 + - name 4124 + type: object 4125 + ref: 4126 + description: |- 4127 + The OCI reference to pull and monitor for changes, 4128 + defaults to the latest tag. 4129 + properties: 4130 + digest: 4131 + description: |- 4132 + Digest is the image digest to pull, takes precedence over SemVer. 4133 + The value should be in the format 'sha256:<HASH>'. 4134 + type: string 4135 + semver: 4136 + description: |- 4137 + SemVer is the range of tags to pull selecting the latest within 4138 + the range, takes precedence over Tag. 4139 + type: string 4140 + semverFilter: 4141 + description: SemverFilter is a regex pattern to filter the tags 4142 + within the SemVer range. 4143 + type: string 4144 + tag: 4145 + description: Tag is the image tag to pull, defaults to latest. 4146 + type: string 4147 + type: object 4148 + secretRef: 4149 + description: |- 4150 + SecretRef contains the secret name containing the registry login 4151 + credentials to resolve image metadata. 4152 + The secret must be of type kubernetes.io/dockerconfigjson. 4153 + properties: 4154 + name: 4155 + description: Name of the referent. 4156 + type: string 4157 + required: 4158 + - name 4159 + type: object 4160 + serviceAccountName: 4161 + description: |- 4162 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 4163 + the image pull if the service account has attached pull secrets. For more information: 4164 + https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account 4165 + type: string 4166 + suspend: 4167 + description: This flag tells the controller to suspend the reconciliation 4168 + of this source. 4169 + type: boolean 4170 + timeout: 4171 + default: 60s 4172 + description: The timeout for remote OCI Repository operations like 4173 + pulling, defaults to 60s. 4174 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 4175 + type: string 4176 + url: 4177 + description: |- 4178 + URL is a reference to an OCI artifact repository hosted 4179 + on a remote container registry. 4180 + pattern: ^oci://.*$ 4181 + type: string 4182 + verify: 4183 + description: |- 4184 + Verify contains the secret name containing the trusted public keys 4185 + used to verify the signature and specifies which provider to use to check 4186 + whether OCI image is authentic. 4187 + properties: 4188 + matchOIDCIdentity: 4189 + description: |- 4190 + MatchOIDCIdentity specifies the identity matching criteria to use 4191 + while verifying an OCI artifact which was signed using Cosign keyless 4192 + signing. The artifact's identity is deemed to be verified if any of the 4193 + specified matchers match against the identity. 4194 + items: 4195 + description: |- 4196 + OIDCIdentityMatch specifies options for verifying the certificate identity, 4197 + i.e. the issuer and the subject of the certificate. 4198 + properties: 4199 + issuer: 4200 + description: |- 4201 + Issuer specifies the regex pattern to match against to verify 4202 + the OIDC issuer in the Fulcio certificate. The pattern must be a 4203 + valid Go regular expression. 4204 + type: string 4205 + subject: 4206 + description: |- 4207 + Subject specifies the regex pattern to match against to verify 4208 + the identity subject in the Fulcio certificate. The pattern must 4209 + be a valid Go regular expression. 4210 + type: string 4211 + required: 4212 + - issuer 4213 + - subject 4214 + type: object 4215 + type: array 4216 + provider: 4217 + default: cosign 4218 + description: Provider specifies the technology used to sign the 4219 + OCI Artifact. 4220 + enum: 4221 + - cosign 4222 + - notation 4223 + type: string 4224 + secretRef: 4225 + description: |- 4226 + SecretRef specifies the Kubernetes Secret containing the 4227 + trusted public keys. 4228 + properties: 4229 + name: 4230 + description: Name of the referent. 4231 + type: string 4232 + required: 4233 + - name 4234 + type: object 4235 + required: 4236 + - provider 4237 + type: object 4238 + required: 4239 + - interval 4240 + - url 4241 + type: object 4242 + status: 4243 + default: 4244 + observedGeneration: -1 4245 + description: OCIRepositoryStatus defines the observed state of OCIRepository 4246 + properties: 4247 + artifact: 4248 + description: Artifact represents the output of the last successful 4249 + OCI Repository sync. 4250 + properties: 4251 + digest: 4252 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 4253 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 4254 + type: string 4255 + lastUpdateTime: 4256 + description: |- 4257 + LastUpdateTime is the timestamp corresponding to the last update of the 4258 + Artifact. 4259 + format: date-time 4260 + type: string 4261 + metadata: 4262 + additionalProperties: 4263 + type: string 4264 + description: Metadata holds upstream information such as OCI annotations. 4265 + type: object 4266 + path: 4267 + description: |- 4268 + Path is the relative file path of the Artifact. It can be used to locate 4269 + the file in the root of the Artifact storage on the local file system of 4270 + the controller managing the Source. 4271 + type: string 4272 + revision: 4273 + description: |- 4274 + Revision is a human-readable identifier traceable in the origin source 4275 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 4276 + type: string 4277 + size: 4278 + description: Size is the number of bytes in the file. 4279 + format: int64 4280 + type: integer 4281 + url: 4282 + description: |- 4283 + URL is the HTTP address of the Artifact as exposed by the controller 4284 + managing the Source. It can be used to retrieve the Artifact for 4285 + consumption, e.g. by another controller applying the Artifact contents. 4286 + type: string 4287 + required: 4288 + - digest 4289 + - lastUpdateTime 4290 + - path 4291 + - revision 4292 + - url 4293 + type: object 4294 + conditions: 4295 + description: Conditions holds the conditions for the OCIRepository. 4296 + items: 4297 + description: Condition contains details for one aspect of the current 4298 + state of this API Resource. 4299 + properties: 4300 + lastTransitionTime: 4301 + description: |- 4302 + lastTransitionTime is the last time the condition transitioned from one status to another. 4303 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 4304 + format: date-time 4305 + type: string 4306 + message: 4307 + description: |- 4308 + message is a human readable message indicating details about the transition. 4309 + This may be an empty string. 4310 + maxLength: 32768 4311 + type: string 4312 + observedGeneration: 4313 + description: |- 4314 + observedGeneration represents the .metadata.generation that the condition was set based upon. 4315 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 4316 + with respect to the current state of the instance. 4317 + format: int64 4318 + minimum: 0 4319 + type: integer 4320 + reason: 4321 + description: |- 4322 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 4323 + Producers of specific condition types may define expected values and meanings for this field, 4324 + and whether the values are considered a guaranteed API. 4325 + The value should be a CamelCase string. 4326 + This field may not be empty. 4327 + maxLength: 1024 4328 + minLength: 1 4329 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 4330 + type: string 4331 + status: 4332 + description: status of the condition, one of True, False, Unknown. 4333 + enum: 4334 + - "True" 4335 + - "False" 4336 + - Unknown 4337 + type: string 4338 + type: 4339 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 4340 + maxLength: 316 4341 + 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])$ 4342 + type: string 4343 + required: 4344 + - lastTransitionTime 4345 + - message 4346 + - reason 4347 + - status 4348 + - type 4349 + type: object 4350 + type: array 4351 + contentConfigChecksum: 4352 + description: |- 4353 + ContentConfigChecksum is a checksum of all the configurations related to 4354 + the content of the source artifact: 4355 + - .spec.ignore 4356 + - .spec.layerSelector 4357 + observed in .status.observedGeneration version of the object. This can 4358 + be used to determine if the content configuration has changed and the 4359 + artifact needs to be rebuilt. 4360 + It has the format of `<algo>:<checksum>`, for example: `sha256:<checksum>`. 4361 + 4362 + Deprecated: Replaced with explicit fields for observed artifact content 4363 + config in the status. 4364 + type: string 4365 + lastHandledReconcileAt: 4366 + description: |- 4367 + LastHandledReconcileAt holds the value of the most recent 4368 + reconcile request value, so a change of the annotation value 4369 + can be detected. 4370 + type: string 4371 + observedGeneration: 4372 + description: ObservedGeneration is the last observed generation. 4373 + format: int64 4374 + type: integer 4375 + observedIgnore: 4376 + description: |- 4377 + ObservedIgnore is the observed exclusion patterns used for constructing 4378 + the source artifact. 4379 + type: string 4380 + observedLayerSelector: 4381 + description: |- 4382 + ObservedLayerSelector is the observed layer selector used for constructing 4383 + the source artifact. 4384 + properties: 4385 + mediaType: 4386 + description: |- 4387 + MediaType specifies the OCI media type of the layer 4388 + which should be extracted from the OCI Artifact. The 4389 + first layer matching this type is selected. 4390 + type: string 4391 + operation: 4392 + description: |- 4393 + Operation specifies how the selected layer should be processed. 4394 + By default, the layer compressed content is extracted to storage. 4395 + When the operation is set to 'copy', the layer compressed content 4396 + is persisted to storage as it is. 4397 + enum: 4398 + - extract 4399 + - copy 4400 + type: string 4401 + type: object 4402 + url: 4403 + description: URL is the download link for the artifact output of the 4404 + last OCI Repository sync. 4405 + type: string 4406 + type: object 4407 + type: object 4408 + served: true 4409 + storage: false 4410 + subresources: 4411 + status: {} 4412 + --- 4413 + apiVersion: v1 4414 + kind: ServiceAccount 4415 + metadata: 4416 + labels: 4417 + app.kubernetes.io/component: source-controller 4418 + app.kubernetes.io/instance: flux-system 4419 + app.kubernetes.io/part-of: flux 4420 + app.kubernetes.io/version: v2.7.3 4421 + name: source-controller 4422 + namespace: flux-system 4423 + --- 4424 + apiVersion: v1 4425 + kind: Service 4426 + metadata: 4427 + labels: 4428 + app.kubernetes.io/component: source-controller 4429 + app.kubernetes.io/instance: flux-system 4430 + app.kubernetes.io/part-of: flux 4431 + app.kubernetes.io/version: v2.7.3 4432 + control-plane: controller 4433 + name: source-controller 4434 + namespace: flux-system 4435 + spec: 4436 + ports: 4437 + - name: http 4438 + port: 80 4439 + protocol: TCP 4440 + targetPort: http 4441 + selector: 4442 + app: source-controller 4443 + type: ClusterIP 4444 + --- 4445 + apiVersion: apps/v1 4446 + kind: Deployment 4447 + metadata: 4448 + labels: 4449 + app.kubernetes.io/component: source-controller 4450 + app.kubernetes.io/instance: flux-system 4451 + app.kubernetes.io/part-of: flux 4452 + app.kubernetes.io/version: v2.7.3 4453 + control-plane: controller 4454 + name: source-controller 4455 + namespace: flux-system 4456 + spec: 4457 + replicas: 1 4458 + selector: 4459 + matchLabels: 4460 + app: source-controller 4461 + strategy: 4462 + type: Recreate 4463 + template: 4464 + metadata: 4465 + annotations: 4466 + prometheus.io/port: "8080" 4467 + prometheus.io/scrape: "true" 4468 + labels: 4469 + app: source-controller 4470 + app.kubernetes.io/component: source-controller 4471 + app.kubernetes.io/instance: flux-system 4472 + app.kubernetes.io/part-of: flux 4473 + app.kubernetes.io/version: v2.7.3 4474 + spec: 4475 + containers: 4476 + - args: 4477 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 4478 + - --watch-all-namespaces=true 4479 + - --log-level=info 4480 + - --log-encoding=json 4481 + - --enable-leader-election 4482 + - --storage-path=/data 4483 + - --storage-adv-addr=source-controller.$(RUNTIME_NAMESPACE).svc.cluster.local. 4484 + env: 4485 + - name: RUNTIME_NAMESPACE 4486 + valueFrom: 4487 + fieldRef: 4488 + fieldPath: metadata.namespace 4489 + - name: TUF_ROOT 4490 + value: /tmp/.sigstore 4491 + - name: GOMEMLIMIT 4492 + valueFrom: 4493 + resourceFieldRef: 4494 + containerName: manager 4495 + resource: limits.memory 4496 + image: ghcr.io/fluxcd/source-controller:v1.7.3 4497 + imagePullPolicy: IfNotPresent 4498 + livenessProbe: 4499 + httpGet: 4500 + path: /healthz 4501 + port: healthz 4502 + name: manager 4503 + ports: 4504 + - containerPort: 9090 4505 + name: http 4506 + protocol: TCP 4507 + - containerPort: 8080 4508 + name: http-prom 4509 + protocol: TCP 4510 + - containerPort: 9440 4511 + name: healthz 4512 + protocol: TCP 4513 + readinessProbe: 4514 + httpGet: 4515 + path: / 4516 + port: http 4517 + resources: 4518 + limits: 4519 + cpu: 1000m 4520 + memory: 1Gi 4521 + requests: 4522 + cpu: 50m 4523 + memory: 64Mi 4524 + securityContext: 4525 + allowPrivilegeEscalation: false 4526 + capabilities: 4527 + drop: 4528 + - ALL 4529 + readOnlyRootFilesystem: true 4530 + runAsNonRoot: true 4531 + seccompProfile: 4532 + type: RuntimeDefault 4533 + volumeMounts: 4534 + - mountPath: /data 4535 + name: data 4536 + - mountPath: /tmp 4537 + name: tmp 4538 + nodeSelector: 4539 + kubernetes.io/os: linux 4540 + priorityClassName: system-cluster-critical 4541 + securityContext: 4542 + fsGroup: 1337 4543 + serviceAccountName: source-controller 4544 + terminationGracePeriodSeconds: 10 4545 + volumes: 4546 + - emptyDir: {} 4547 + name: data 4548 + - emptyDir: {} 4549 + name: tmp 4550 + --- 4551 + apiVersion: apiextensions.k8s.io/v1 4552 + kind: CustomResourceDefinition 4553 + metadata: 4554 + annotations: 4555 + controller-gen.kubebuilder.io/version: v0.19.0 4556 + labels: 4557 + app.kubernetes.io/component: kustomize-controller 4558 + app.kubernetes.io/instance: flux-system 4559 + app.kubernetes.io/part-of: flux 4560 + app.kubernetes.io/version: v2.7.3 4561 + name: kustomizations.kustomize.toolkit.fluxcd.io 4562 + spec: 4563 + group: kustomize.toolkit.fluxcd.io 4564 + names: 4565 + kind: Kustomization 4566 + listKind: KustomizationList 4567 + plural: kustomizations 4568 + shortNames: 4569 + - ks 4570 + singular: kustomization 4571 + scope: Namespaced 4572 + versions: 4573 + - additionalPrinterColumns: 4574 + - jsonPath: .metadata.creationTimestamp 4575 + name: Age 4576 + type: date 4577 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 4578 + name: Ready 4579 + type: string 4580 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 4581 + name: Status 4582 + type: string 4583 + name: v1 4584 + schema: 4585 + openAPIV3Schema: 4586 + description: Kustomization is the Schema for the kustomizations API. 4587 + properties: 4588 + apiVersion: 4589 + description: |- 4590 + APIVersion defines the versioned schema of this representation of an object. 4591 + Servers should convert recognized schemas to the latest internal value, and 4592 + may reject unrecognized values. 4593 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 4594 + type: string 4595 + kind: 4596 + description: |- 4597 + Kind is a string value representing the REST resource this object represents. 4598 + Servers may infer this from the endpoint the client submits requests to. 4599 + Cannot be updated. 4600 + In CamelCase. 4601 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 4602 + type: string 4603 + metadata: 4604 + type: object 4605 + spec: 4606 + description: |- 4607 + KustomizationSpec defines the configuration to calculate the desired state 4608 + from a Source using Kustomize. 4609 + properties: 4610 + commonMetadata: 4611 + description: |- 4612 + CommonMetadata specifies the common labels and annotations that are 4613 + applied to all resources. Any existing label or annotation will be 4614 + overridden if its key matches a common one. 4615 + properties: 4616 + annotations: 4617 + additionalProperties: 4618 + type: string 4619 + description: Annotations to be added to the object's metadata. 4620 + type: object 4621 + labels: 4622 + additionalProperties: 4623 + type: string 4624 + description: Labels to be added to the object's metadata. 4625 + type: object 4626 + type: object 4627 + components: 4628 + description: Components specifies relative paths to kustomize Components. 4629 + items: 4630 + type: string 4631 + type: array 4632 + decryption: 4633 + description: Decrypt Kubernetes secrets before applying them on the 4634 + cluster. 4635 + properties: 4636 + provider: 4637 + description: Provider is the name of the decryption engine. 4638 + enum: 4639 + - sops 4640 + type: string 4641 + secretRef: 4642 + description: |- 4643 + The secret name containing the private OpenPGP keys used for decryption. 4644 + A static credential for a cloud provider defined inside the Secret 4645 + takes priority to secret-less authentication with the ServiceAccountName 4646 + field. 4647 + properties: 4648 + name: 4649 + description: Name of the referent. 4650 + type: string 4651 + required: 4652 + - name 4653 + type: object 4654 + serviceAccountName: 4655 + description: |- 4656 + ServiceAccountName is the name of the service account used to 4657 + authenticate with KMS services from cloud providers. If a 4658 + static credential for a given cloud provider is defined 4659 + inside the Secret referenced by SecretRef, that static 4660 + credential takes priority. 4661 + type: string 4662 + required: 4663 + - provider 4664 + type: object 4665 + deletionPolicy: 4666 + description: |- 4667 + DeletionPolicy can be used to control garbage collection when this 4668 + Kustomization is deleted. Valid values are ('MirrorPrune', 'Delete', 4669 + 'WaitForTermination', 'Orphan'). 'MirrorPrune' mirrors the Prune field 4670 + (orphan if false, delete if true). Defaults to 'MirrorPrune'. 4671 + enum: 4672 + - MirrorPrune 4673 + - Delete 4674 + - WaitForTermination 4675 + - Orphan 4676 + type: string 4677 + dependsOn: 4678 + description: |- 4679 + DependsOn may contain a DependencyReference slice 4680 + with references to Kustomization resources that must be ready before this 4681 + Kustomization can be reconciled. 4682 + items: 4683 + description: DependencyReference defines a Kustomization dependency 4684 + on another Kustomization resource. 4685 + properties: 4686 + name: 4687 + description: Name of the referent. 4688 + type: string 4689 + namespace: 4690 + description: |- 4691 + Namespace of the referent, defaults to the namespace of the Kustomization 4692 + resource object that contains the reference. 4693 + type: string 4694 + readyExpr: 4695 + description: |- 4696 + ReadyExpr is a CEL expression that can be used to assess the readiness 4697 + of a dependency. When specified, the built-in readiness check 4698 + is replaced by the logic defined in the CEL expression. 4699 + To make the CEL expression additive to the built-in readiness check, 4700 + the feature gate `AdditiveCELDependencyCheck` must be set to `true`. 4701 + type: string 4702 + required: 4703 + - name 4704 + type: object 4705 + type: array 4706 + force: 4707 + default: false 4708 + description: |- 4709 + Force instructs the controller to recreate resources 4710 + when patching fails due to an immutable field change. 4711 + type: boolean 4712 + healthCheckExprs: 4713 + description: |- 4714 + HealthCheckExprs is a list of healthcheck expressions for evaluating the 4715 + health of custom resources using Common Expression Language (CEL). 4716 + The expressions are evaluated only when Wait or HealthChecks are specified. 4717 + items: 4718 + description: CustomHealthCheck defines the health check for custom 4719 + resources. 4720 + properties: 4721 + apiVersion: 4722 + description: APIVersion of the custom resource under evaluation. 4723 + type: string 4724 + current: 4725 + description: |- 4726 + Current is the CEL expression that determines if the status 4727 + of the custom resource has reached the desired state. 4728 + type: string 4729 + failed: 4730 + description: |- 4731 + Failed is the CEL expression that determines if the status 4732 + of the custom resource has failed to reach the desired state. 4733 + type: string 4734 + inProgress: 4735 + description: |- 4736 + InProgress is the CEL expression that determines if the status 4737 + of the custom resource has not yet reached the desired state. 4738 + type: string 4739 + kind: 4740 + description: Kind of the custom resource under evaluation. 4741 + type: string 4742 + required: 4743 + - apiVersion 4744 + - current 4745 + - kind 4746 + type: object 4747 + type: array 4748 + healthChecks: 4749 + description: A list of resources to be included in the health assessment. 4750 + items: 4751 + description: |- 4752 + NamespacedObjectKindReference contains enough information to locate the typed referenced Kubernetes resource object 4753 + in any namespace. 4754 + properties: 4755 + apiVersion: 4756 + description: API version of the referent, if not specified the 4757 + Kubernetes preferred version will be used. 4758 + type: string 4759 + kind: 4760 + description: Kind of the referent. 4761 + type: string 4762 + name: 4763 + description: Name of the referent. 4764 + type: string 4765 + namespace: 4766 + description: Namespace of the referent, when not specified it 4767 + acts as LocalObjectReference. 4768 + type: string 4769 + required: 4770 + - kind 4771 + - name 4772 + type: object 4773 + type: array 4774 + ignoreMissingComponents: 4775 + description: |- 4776 + IgnoreMissingComponents instructs the controller to ignore Components paths 4777 + not found in source by removing them from the generated kustomization.yaml 4778 + before running kustomize build. 4779 + type: boolean 4780 + images: 4781 + description: |- 4782 + Images is a list of (image name, new name, new tag or digest) 4783 + for changing image names, tags or digests. This can also be achieved with a 4784 + patch, but this operator is simpler to specify. 4785 + items: 4786 + description: Image contains an image name, a new name, a new tag 4787 + or digest, which will replace the original name and tag. 4788 + properties: 4789 + digest: 4790 + description: |- 4791 + Digest is the value used to replace the original image tag. 4792 + If digest is present NewTag value is ignored. 4793 + type: string 4794 + name: 4795 + description: Name is a tag-less image name. 4796 + type: string 4797 + newName: 4798 + description: NewName is the value used to replace the original 4799 + name. 4800 + type: string 4801 + newTag: 4802 + description: NewTag is the value used to replace the original 4803 + tag. 4804 + type: string 4805 + required: 4806 + - name 4807 + type: object 4808 + type: array 4809 + interval: 4810 + description: |- 4811 + The interval at which to reconcile the Kustomization. 4812 + This interval is approximate and may be subject to jitter to ensure 4813 + efficient use of resources. 4814 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 4815 + type: string 4816 + kubeConfig: 4817 + description: |- 4818 + The KubeConfig for reconciling the Kustomization on a remote cluster. 4819 + When used in combination with KustomizationSpec.ServiceAccountName, 4820 + forces the controller to act on behalf of that Service Account at the 4821 + target cluster. 4822 + If the --default-service-account flag is set, its value will be used as 4823 + a controller level fallback for when KustomizationSpec.ServiceAccountName 4824 + is empty. 4825 + properties: 4826 + configMapRef: 4827 + description: |- 4828 + ConfigMapRef holds an optional name of a ConfigMap that contains 4829 + the following keys: 4830 + 4831 + - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 4832 + `generic`. Required. 4833 + - `cluster`: the fully qualified resource name of the Kubernetes 4834 + cluster in the cloud provider API. Not used by the `generic` 4835 + provider. Required when one of `address` or `ca.crt` is not set. 4836 + - `address`: the address of the Kubernetes API server. Required 4837 + for `generic`. For the other providers, if not specified, the 4838 + first address in the cluster resource will be used, and if 4839 + specified, it must match one of the addresses in the cluster 4840 + resource. 4841 + If audiences is not set, will be used as the audience for the 4842 + `generic` provider. 4843 + - `ca.crt`: the optional PEM-encoded CA certificate for the 4844 + Kubernetes API server. If not set, the controller will use the 4845 + CA certificate from the cluster resource. 4846 + - `audiences`: the optional audiences as a list of 4847 + line-break-separated strings for the Kubernetes ServiceAccount 4848 + token. Defaults to the `address` for the `generic` provider, or 4849 + to specific values for the other providers depending on the 4850 + provider. 4851 + - `serviceAccountName`: the optional name of the Kubernetes 4852 + ServiceAccount in the same namespace that should be used 4853 + for authentication. If not specified, the controller 4854 + ServiceAccount will be used. 4855 + 4856 + Mutually exclusive with SecretRef. 4857 + properties: 4858 + name: 4859 + description: Name of the referent. 4860 + type: string 4861 + required: 4862 + - name 4863 + type: object 4864 + secretRef: 4865 + description: |- 4866 + SecretRef holds an optional name of a secret that contains a key with 4867 + the kubeconfig file as the value. If no key is set, the key will default 4868 + to 'value'. Mutually exclusive with ConfigMapRef. 4869 + It is recommended that the kubeconfig is self-contained, and the secret 4870 + is regularly updated if credentials such as a cloud-access-token expire. 4871 + Cloud specific `cmd-path` auth helpers will not function without adding 4872 + binaries and credentials to the Pod that is responsible for reconciling 4873 + Kubernetes resources. Supported only for the generic provider. 4874 + properties: 4875 + key: 4876 + description: Key in the Secret, when not specified an implementation-specific 4877 + default key is used. 4878 + type: string 4879 + name: 4880 + description: Name of the Secret. 4881 + type: string 4882 + required: 4883 + - name 4884 + type: object 4885 + type: object 4886 + x-kubernetes-validations: 4887 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 4888 + must be specified 4889 + rule: has(self.configMapRef) || has(self.secretRef) 4890 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 4891 + must be specified 4892 + rule: '!has(self.configMapRef) || !has(self.secretRef)' 4893 + namePrefix: 4894 + description: NamePrefix will prefix the names of all managed resources. 4895 + maxLength: 200 4896 + minLength: 1 4897 + type: string 4898 + nameSuffix: 4899 + description: NameSuffix will suffix the names of all managed resources. 4900 + maxLength: 200 4901 + minLength: 1 4902 + type: string 4903 + patches: 4904 + description: |- 4905 + Strategic merge and JSON patches, defined as inline YAML objects, 4906 + capable of targeting objects based on kind, label and annotation selectors. 4907 + items: 4908 + description: |- 4909 + Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 4910 + be applied to. 4911 + properties: 4912 + patch: 4913 + description: |- 4914 + Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 4915 + an array of operation objects. 4916 + type: string 4917 + target: 4918 + description: Target points to the resources that the patch document 4919 + should be applied to. 4920 + properties: 4921 + annotationSelector: 4922 + description: |- 4923 + AnnotationSelector is a string that follows the label selection expression 4924 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 4925 + It matches with the resource annotations. 4926 + type: string 4927 + group: 4928 + description: |- 4929 + Group is the API group to select resources from. 4930 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 4931 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 4932 + type: string 4933 + kind: 4934 + description: |- 4935 + Kind of the API Group to select resources from. 4936 + Together with Group and Version it is capable of unambiguously 4937 + identifying and/or selecting resources. 4938 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 4939 + type: string 4940 + labelSelector: 4941 + description: |- 4942 + LabelSelector is a string that follows the label selection expression 4943 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 4944 + It matches with the resource labels. 4945 + type: string 4946 + name: 4947 + description: Name to match resources with. 4948 + type: string 4949 + namespace: 4950 + description: Namespace to select resources from. 4951 + type: string 4952 + version: 4953 + description: |- 4954 + Version of the API Group to select resources from. 4955 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 4956 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 4957 + type: string 4958 + type: object 4959 + required: 4960 + - patch 4961 + type: object 4962 + type: array 4963 + path: 4964 + description: |- 4965 + Path to the directory containing the kustomization.yaml file, or the 4966 + set of plain YAMLs a kustomization.yaml should be generated for. 4967 + Defaults to 'None', which translates to the root path of the SourceRef. 4968 + type: string 4969 + postBuild: 4970 + description: |- 4971 + PostBuild describes which actions to perform on the YAML manifest 4972 + generated by building the kustomize overlay. 4973 + properties: 4974 + substitute: 4975 + additionalProperties: 4976 + type: string 4977 + description: |- 4978 + Substitute holds a map of key/value pairs. 4979 + The variables defined in your YAML manifests that match any of the keys 4980 + defined in the map will be substituted with the set value. 4981 + Includes support for bash string replacement functions 4982 + e.g. ${var:=default}, ${var:position} and ${var/substring/replacement}. 4983 + type: object 4984 + substituteFrom: 4985 + description: |- 4986 + SubstituteFrom holds references to ConfigMaps and Secrets containing 4987 + the variables and their values to be substituted in the YAML manifests. 4988 + The ConfigMap and the Secret data keys represent the var names, and they 4989 + must match the vars declared in the manifests for the substitution to 4990 + happen. 4991 + items: 4992 + description: |- 4993 + SubstituteReference contains a reference to a resource containing 4994 + the variables name and value. 4995 + properties: 4996 + kind: 4997 + description: Kind of the values referent, valid values are 4998 + ('Secret', 'ConfigMap'). 4999 + enum: 5000 + - Secret 5001 + - ConfigMap 5002 + type: string 5003 + name: 5004 + description: |- 5005 + Name of the values referent. Should reside in the same namespace as the 5006 + referring resource. 5007 + maxLength: 253 5008 + minLength: 1 5009 + type: string 5010 + optional: 5011 + default: false 5012 + description: |- 5013 + Optional indicates whether the referenced resource must exist, or whether to 5014 + tolerate its absence. If true and the referenced resource is absent, proceed 5015 + as if the resource was present but empty, without any variables defined. 5016 + type: boolean 5017 + required: 5018 + - kind 5019 + - name 5020 + type: object 5021 + type: array 5022 + type: object 5023 + prune: 5024 + description: Prune enables garbage collection. 5025 + type: boolean 5026 + retryInterval: 5027 + description: |- 5028 + The interval at which to retry a previously failed reconciliation. 5029 + When not specified, the controller uses the KustomizationSpec.Interval 5030 + value to retry failures. 5031 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5032 + type: string 5033 + serviceAccountName: 5034 + description: |- 5035 + The name of the Kubernetes service account to impersonate 5036 + when reconciling this Kustomization. 5037 + type: string 5038 + sourceRef: 5039 + description: Reference of the source where the kustomization file 5040 + is. 5041 + properties: 5042 + apiVersion: 5043 + description: API version of the referent. 5044 + type: string 5045 + kind: 5046 + description: Kind of the referent. 5047 + enum: 5048 + - OCIRepository 5049 + - GitRepository 5050 + - Bucket 5051 + - ExternalArtifact 5052 + type: string 5053 + name: 5054 + description: Name of the referent. 5055 + type: string 5056 + namespace: 5057 + description: |- 5058 + Namespace of the referent, defaults to the namespace of the Kubernetes 5059 + resource object that contains the reference. 5060 + type: string 5061 + required: 5062 + - kind 5063 + - name 5064 + type: object 5065 + suspend: 5066 + description: |- 5067 + This flag tells the controller to suspend subsequent kustomize executions, 5068 + it does not apply to already started executions. Defaults to false. 5069 + type: boolean 5070 + targetNamespace: 5071 + description: |- 5072 + TargetNamespace sets or overrides the namespace in the 5073 + kustomization.yaml file. 5074 + maxLength: 63 5075 + minLength: 1 5076 + type: string 5077 + timeout: 5078 + description: |- 5079 + Timeout for validation, apply and health checking operations. 5080 + Defaults to 'Interval' duration. 5081 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5082 + type: string 5083 + wait: 5084 + description: |- 5085 + Wait instructs the controller to check the health of all the reconciled 5086 + resources. When enabled, the HealthChecks are ignored. Defaults to false. 5087 + type: boolean 5088 + required: 5089 + - interval 5090 + - prune 5091 + - sourceRef 5092 + type: object 5093 + status: 5094 + default: 5095 + observedGeneration: -1 5096 + description: KustomizationStatus defines the observed state of a kustomization. 5097 + properties: 5098 + conditions: 5099 + items: 5100 + description: Condition contains details for one aspect of the current 5101 + state of this API Resource. 5102 + properties: 5103 + lastTransitionTime: 5104 + description: |- 5105 + lastTransitionTime is the last time the condition transitioned from one status to another. 5106 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 5107 + format: date-time 5108 + type: string 5109 + message: 5110 + description: |- 5111 + message is a human readable message indicating details about the transition. 5112 + This may be an empty string. 5113 + maxLength: 32768 5114 + type: string 5115 + observedGeneration: 5116 + description: |- 5117 + observedGeneration represents the .metadata.generation that the condition was set based upon. 5118 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 5119 + with respect to the current state of the instance. 5120 + format: int64 5121 + minimum: 0 5122 + type: integer 5123 + reason: 5124 + description: |- 5125 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 5126 + Producers of specific condition types may define expected values and meanings for this field, 5127 + and whether the values are considered a guaranteed API. 5128 + The value should be a CamelCase string. 5129 + This field may not be empty. 5130 + maxLength: 1024 5131 + minLength: 1 5132 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 5133 + type: string 5134 + status: 5135 + description: status of the condition, one of True, False, Unknown. 5136 + enum: 5137 + - "True" 5138 + - "False" 5139 + - Unknown 5140 + type: string 5141 + type: 5142 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 5143 + maxLength: 316 5144 + 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])$ 5145 + type: string 5146 + required: 5147 + - lastTransitionTime 5148 + - message 5149 + - reason 5150 + - status 5151 + - type 5152 + type: object 5153 + type: array 5154 + history: 5155 + description: |- 5156 + History contains a set of snapshots of the last reconciliation attempts 5157 + tracking the revision, the state and the duration of each attempt. 5158 + items: 5159 + description: |- 5160 + Snapshot represents a point-in-time record of a group of resources reconciliation, 5161 + including timing information, status, and a unique digest identifier. 5162 + properties: 5163 + digest: 5164 + description: Digest is the checksum in the format `<algo>:<hex>` 5165 + of the resources in this snapshot. 5166 + type: string 5167 + firstReconciled: 5168 + description: FirstReconciled is the time when this revision 5169 + was first reconciled to the cluster. 5170 + format: date-time 5171 + type: string 5172 + lastReconciled: 5173 + description: LastReconciled is the time when this revision was 5174 + last reconciled to the cluster. 5175 + format: date-time 5176 + type: string 5177 + lastReconciledDuration: 5178 + description: LastReconciledDuration is time it took to reconcile 5179 + the resources in this revision. 5180 + type: string 5181 + lastReconciledStatus: 5182 + description: LastReconciledStatus is the status of the last 5183 + reconciliation. 5184 + type: string 5185 + metadata: 5186 + additionalProperties: 5187 + type: string 5188 + description: Metadata contains additional information about 5189 + the snapshot. 5190 + type: object 5191 + totalReconciliations: 5192 + description: TotalReconciliations is the total number of reconciliations 5193 + that have occurred for this snapshot. 5194 + format: int64 5195 + type: integer 5196 + required: 5197 + - digest 5198 + - firstReconciled 5199 + - lastReconciled 5200 + - lastReconciledDuration 5201 + - lastReconciledStatus 5202 + - totalReconciliations 5203 + type: object 5204 + type: array 5205 + inventory: 5206 + description: |- 5207 + Inventory contains the list of Kubernetes resource object references that 5208 + have been successfully applied. 5209 + properties: 5210 + entries: 5211 + description: Entries of Kubernetes resource object references. 5212 + items: 5213 + description: ResourceRef contains the information necessary 5214 + to locate a resource within a cluster. 5215 + properties: 5216 + id: 5217 + description: |- 5218 + ID is the string representation of the Kubernetes resource object's metadata, 5219 + in the format '<namespace>_<name>_<group>_<kind>'. 5220 + type: string 5221 + v: 5222 + description: Version is the API version of the Kubernetes 5223 + resource object's kind. 5224 + type: string 5225 + required: 5226 + - id 5227 + - v 5228 + type: object 5229 + type: array 5230 + required: 5231 + - entries 5232 + type: object 5233 + lastAppliedOriginRevision: 5234 + description: |- 5235 + The last successfully applied origin revision. 5236 + Equals the origin revision of the applied Artifact from the referenced Source. 5237 + Usually present on the Metadata of the applied Artifact and depends on the 5238 + Source type, e.g. for OCI it's the value associated with the key 5239 + "org.opencontainers.image.revision". 5240 + type: string 5241 + lastAppliedRevision: 5242 + description: |- 5243 + The last successfully applied revision. 5244 + Equals the Revision of the applied Artifact from the referenced Source. 5245 + type: string 5246 + lastAttemptedRevision: 5247 + description: LastAttemptedRevision is the revision of the last reconciliation 5248 + attempt. 5249 + type: string 5250 + lastHandledReconcileAt: 5251 + description: |- 5252 + LastHandledReconcileAt holds the value of the most recent 5253 + reconcile request value, so a change of the annotation value 5254 + can be detected. 5255 + type: string 5256 + observedGeneration: 5257 + description: ObservedGeneration is the last reconciled generation. 5258 + format: int64 5259 + type: integer 5260 + type: object 5261 + type: object 5262 + served: true 5263 + storage: true 5264 + subresources: 5265 + status: {} 5266 + - additionalPrinterColumns: 5267 + - jsonPath: .metadata.creationTimestamp 5268 + name: Age 5269 + type: date 5270 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 5271 + name: Ready 5272 + type: string 5273 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 5274 + name: Status 5275 + type: string 5276 + deprecated: true 5277 + deprecationWarning: v1beta2 Kustomization is deprecated, upgrade to v1 5278 + name: v1beta2 5279 + schema: 5280 + openAPIV3Schema: 5281 + description: Kustomization is the Schema for the kustomizations API. 5282 + properties: 5283 + apiVersion: 5284 + description: |- 5285 + APIVersion defines the versioned schema of this representation of an object. 5286 + Servers should convert recognized schemas to the latest internal value, and 5287 + may reject unrecognized values. 5288 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 5289 + type: string 5290 + kind: 5291 + description: |- 5292 + Kind is a string value representing the REST resource this object represents. 5293 + Servers may infer this from the endpoint the client submits requests to. 5294 + Cannot be updated. 5295 + In CamelCase. 5296 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 5297 + type: string 5298 + metadata: 5299 + type: object 5300 + spec: 5301 + description: KustomizationSpec defines the configuration to calculate 5302 + the desired state from a Source using Kustomize. 5303 + properties: 5304 + commonMetadata: 5305 + description: |- 5306 + CommonMetadata specifies the common labels and annotations that are applied to all resources. 5307 + Any existing label or annotation will be overridden if its key matches a common one. 5308 + properties: 5309 + annotations: 5310 + additionalProperties: 5311 + type: string 5312 + description: Annotations to be added to the object's metadata. 5313 + type: object 5314 + labels: 5315 + additionalProperties: 5316 + type: string 5317 + description: Labels to be added to the object's metadata. 5318 + type: object 5319 + type: object 5320 + components: 5321 + description: Components specifies relative paths to specifications 5322 + of other Components. 5323 + items: 5324 + type: string 5325 + type: array 5326 + decryption: 5327 + description: Decrypt Kubernetes secrets before applying them on the 5328 + cluster. 5329 + properties: 5330 + provider: 5331 + description: Provider is the name of the decryption engine. 5332 + enum: 5333 + - sops 5334 + type: string 5335 + secretRef: 5336 + description: The secret name containing the private OpenPGP keys 5337 + used for decryption. 5338 + properties: 5339 + name: 5340 + description: Name of the referent. 5341 + type: string 5342 + required: 5343 + - name 5344 + type: object 5345 + required: 5346 + - provider 5347 + type: object 5348 + dependsOn: 5349 + description: |- 5350 + DependsOn may contain a meta.NamespacedObjectReference slice 5351 + with references to Kustomization resources that must be ready before this 5352 + Kustomization can be reconciled. 5353 + items: 5354 + description: |- 5355 + NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any 5356 + namespace. 5357 + properties: 5358 + name: 5359 + description: Name of the referent. 5360 + type: string 5361 + namespace: 5362 + description: Namespace of the referent, when not specified it 5363 + acts as LocalObjectReference. 5364 + type: string 5365 + required: 5366 + - name 5367 + type: object 5368 + type: array 5369 + force: 5370 + default: false 5371 + description: |- 5372 + Force instructs the controller to recreate resources 5373 + when patching fails due to an immutable field change. 5374 + type: boolean 5375 + healthChecks: 5376 + description: A list of resources to be included in the health assessment. 5377 + items: 5378 + description: |- 5379 + NamespacedObjectKindReference contains enough information to locate the typed referenced Kubernetes resource object 5380 + in any namespace. 5381 + properties: 5382 + apiVersion: 5383 + description: API version of the referent, if not specified the 5384 + Kubernetes preferred version will be used. 5385 + type: string 5386 + kind: 5387 + description: Kind of the referent. 5388 + type: string 5389 + name: 5390 + description: Name of the referent. 5391 + type: string 5392 + namespace: 5393 + description: Namespace of the referent, when not specified it 5394 + acts as LocalObjectReference. 5395 + type: string 5396 + required: 5397 + - kind 5398 + - name 5399 + type: object 5400 + type: array 5401 + images: 5402 + description: |- 5403 + Images is a list of (image name, new name, new tag or digest) 5404 + for changing image names, tags or digests. This can also be achieved with a 5405 + patch, but this operator is simpler to specify. 5406 + items: 5407 + description: Image contains an image name, a new name, a new tag 5408 + or digest, which will replace the original name and tag. 5409 + properties: 5410 + digest: 5411 + description: |- 5412 + Digest is the value used to replace the original image tag. 5413 + If digest is present NewTag value is ignored. 5414 + type: string 5415 + name: 5416 + description: Name is a tag-less image name. 5417 + type: string 5418 + newName: 5419 + description: NewName is the value used to replace the original 5420 + name. 5421 + type: string 5422 + newTag: 5423 + description: NewTag is the value used to replace the original 5424 + tag. 5425 + type: string 5426 + required: 5427 + - name 5428 + type: object 5429 + type: array 5430 + interval: 5431 + description: The interval at which to reconcile the Kustomization. 5432 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5433 + type: string 5434 + kubeConfig: 5435 + description: |- 5436 + The KubeConfig for reconciling the Kustomization on a remote cluster. 5437 + When used in combination with KustomizationSpec.ServiceAccountName, 5438 + forces the controller to act on behalf of that Service Account at the 5439 + target cluster. 5440 + If the --default-service-account flag is set, its value will be used as 5441 + a controller level fallback for when KustomizationSpec.ServiceAccountName 5442 + is empty. 5443 + properties: 5444 + configMapRef: 5445 + description: |- 5446 + ConfigMapRef holds an optional name of a ConfigMap that contains 5447 + the following keys: 5448 + 5449 + - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 5450 + `generic`. Required. 5451 + - `cluster`: the fully qualified resource name of the Kubernetes 5452 + cluster in the cloud provider API. Not used by the `generic` 5453 + provider. Required when one of `address` or `ca.crt` is not set. 5454 + - `address`: the address of the Kubernetes API server. Required 5455 + for `generic`. For the other providers, if not specified, the 5456 + first address in the cluster resource will be used, and if 5457 + specified, it must match one of the addresses in the cluster 5458 + resource. 5459 + If audiences is not set, will be used as the audience for the 5460 + `generic` provider. 5461 + - `ca.crt`: the optional PEM-encoded CA certificate for the 5462 + Kubernetes API server. If not set, the controller will use the 5463 + CA certificate from the cluster resource. 5464 + - `audiences`: the optional audiences as a list of 5465 + line-break-separated strings for the Kubernetes ServiceAccount 5466 + token. Defaults to the `address` for the `generic` provider, or 5467 + to specific values for the other providers depending on the 5468 + provider. 5469 + - `serviceAccountName`: the optional name of the Kubernetes 5470 + ServiceAccount in the same namespace that should be used 5471 + for authentication. If not specified, the controller 5472 + ServiceAccount will be used. 5473 + 5474 + Mutually exclusive with SecretRef. 5475 + properties: 5476 + name: 5477 + description: Name of the referent. 5478 + type: string 5479 + required: 5480 + - name 5481 + type: object 5482 + secretRef: 5483 + description: |- 5484 + SecretRef holds an optional name of a secret that contains a key with 5485 + the kubeconfig file as the value. If no key is set, the key will default 5486 + to 'value'. Mutually exclusive with ConfigMapRef. 5487 + It is recommended that the kubeconfig is self-contained, and the secret 5488 + is regularly updated if credentials such as a cloud-access-token expire. 5489 + Cloud specific `cmd-path` auth helpers will not function without adding 5490 + binaries and credentials to the Pod that is responsible for reconciling 5491 + Kubernetes resources. Supported only for the generic provider. 5492 + properties: 5493 + key: 5494 + description: Key in the Secret, when not specified an implementation-specific 5495 + default key is used. 5496 + type: string 5497 + name: 5498 + description: Name of the Secret. 5499 + type: string 5500 + required: 5501 + - name 5502 + type: object 5503 + type: object 5504 + x-kubernetes-validations: 5505 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 5506 + must be specified 5507 + rule: has(self.configMapRef) || has(self.secretRef) 5508 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 5509 + must be specified 5510 + rule: '!has(self.configMapRef) || !has(self.secretRef)' 5511 + patches: 5512 + description: |- 5513 + Strategic merge and JSON patches, defined as inline YAML objects, 5514 + capable of targeting objects based on kind, label and annotation selectors. 5515 + items: 5516 + description: |- 5517 + Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 5518 + be applied to. 5519 + properties: 5520 + patch: 5521 + description: |- 5522 + Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 5523 + an array of operation objects. 5524 + type: string 5525 + target: 5526 + description: Target points to the resources that the patch document 5527 + should be applied to. 5528 + properties: 5529 + annotationSelector: 5530 + description: |- 5531 + AnnotationSelector is a string that follows the label selection expression 5532 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 5533 + It matches with the resource annotations. 5534 + type: string 5535 + group: 5536 + description: |- 5537 + Group is the API group to select resources from. 5538 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 5539 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 5540 + type: string 5541 + kind: 5542 + description: |- 5543 + Kind of the API Group to select resources from. 5544 + Together with Group and Version it is capable of unambiguously 5545 + identifying and/or selecting resources. 5546 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 5547 + type: string 5548 + labelSelector: 5549 + description: |- 5550 + LabelSelector is a string that follows the label selection expression 5551 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 5552 + It matches with the resource labels. 5553 + type: string 5554 + name: 5555 + description: Name to match resources with. 5556 + type: string 5557 + namespace: 5558 + description: Namespace to select resources from. 5559 + type: string 5560 + version: 5561 + description: |- 5562 + Version of the API Group to select resources from. 5563 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 5564 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 5565 + type: string 5566 + type: object 5567 + required: 5568 + - patch 5569 + type: object 5570 + type: array 5571 + patchesJson6902: 5572 + description: |- 5573 + JSON 6902 patches, defined as inline YAML objects. 5574 + Deprecated: Use Patches instead. 5575 + items: 5576 + description: JSON6902Patch contains a JSON6902 patch and the target 5577 + the patch should be applied to. 5578 + properties: 5579 + patch: 5580 + description: Patch contains the JSON6902 patch document with 5581 + an array of operation objects. 5582 + items: 5583 + description: |- 5584 + JSON6902 is a JSON6902 operation object. 5585 + https://datatracker.ietf.org/doc/html/rfc6902#section-4 5586 + properties: 5587 + from: 5588 + description: |- 5589 + From contains a JSON-pointer value that references a location within the target document where the operation is 5590 + performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. 5591 + type: string 5592 + op: 5593 + description: |- 5594 + Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or 5595 + "test". 5596 + https://datatracker.ietf.org/doc/html/rfc6902#section-4 5597 + enum: 5598 + - test 5599 + - remove 5600 + - add 5601 + - replace 5602 + - move 5603 + - copy 5604 + type: string 5605 + path: 5606 + description: |- 5607 + Path contains the JSON-pointer value that references a location within the target document where the operation 5608 + is performed. The meaning of the value depends on the value of Op. 5609 + type: string 5610 + value: 5611 + description: |- 5612 + Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into 5613 + account by all operations. 5614 + x-kubernetes-preserve-unknown-fields: true 5615 + required: 5616 + - op 5617 + - path 5618 + type: object 5619 + type: array 5620 + target: 5621 + description: Target points to the resources that the patch document 5622 + should be applied to. 5623 + properties: 5624 + annotationSelector: 5625 + description: |- 5626 + AnnotationSelector is a string that follows the label selection expression 5627 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 5628 + It matches with the resource annotations. 5629 + type: string 5630 + group: 5631 + description: |- 5632 + Group is the API group to select resources from. 5633 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 5634 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 5635 + type: string 5636 + kind: 5637 + description: |- 5638 + Kind of the API Group to select resources from. 5639 + Together with Group and Version it is capable of unambiguously 5640 + identifying and/or selecting resources. 5641 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 5642 + type: string 5643 + labelSelector: 5644 + description: |- 5645 + LabelSelector is a string that follows the label selection expression 5646 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 5647 + It matches with the resource labels. 5648 + type: string 5649 + name: 5650 + description: Name to match resources with. 5651 + type: string 5652 + namespace: 5653 + description: Namespace to select resources from. 5654 + type: string 5655 + version: 5656 + description: |- 5657 + Version of the API Group to select resources from. 5658 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 5659 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 5660 + type: string 5661 + type: object 5662 + required: 5663 + - patch 5664 + - target 5665 + type: object 5666 + type: array 5667 + patchesStrategicMerge: 5668 + description: |- 5669 + Strategic merge patches, defined as inline YAML objects. 5670 + Deprecated: Use Patches instead. 5671 + items: 5672 + x-kubernetes-preserve-unknown-fields: true 5673 + type: array 5674 + path: 5675 + description: |- 5676 + Path to the directory containing the kustomization.yaml file, or the 5677 + set of plain YAMLs a kustomization.yaml should be generated for. 5678 + Defaults to 'None', which translates to the root path of the SourceRef. 5679 + type: string 5680 + postBuild: 5681 + description: |- 5682 + PostBuild describes which actions to perform on the YAML manifest 5683 + generated by building the kustomize overlay. 5684 + properties: 5685 + substitute: 5686 + additionalProperties: 5687 + type: string 5688 + description: |- 5689 + Substitute holds a map of key/value pairs. 5690 + The variables defined in your YAML manifests 5691 + that match any of the keys defined in the map 5692 + will be substituted with the set value. 5693 + Includes support for bash string replacement functions 5694 + e.g. ${var:=default}, ${var:position} and ${var/substring/replacement}. 5695 + type: object 5696 + substituteFrom: 5697 + description: |- 5698 + SubstituteFrom holds references to ConfigMaps and Secrets containing 5699 + the variables and their values to be substituted in the YAML manifests. 5700 + The ConfigMap and the Secret data keys represent the var names and they 5701 + must match the vars declared in the manifests for the substitution to happen. 5702 + items: 5703 + description: |- 5704 + SubstituteReference contains a reference to a resource containing 5705 + the variables name and value. 5706 + properties: 5707 + kind: 5708 + description: Kind of the values referent, valid values are 5709 + ('Secret', 'ConfigMap'). 5710 + enum: 5711 + - Secret 5712 + - ConfigMap 5713 + type: string 5714 + name: 5715 + description: |- 5716 + Name of the values referent. Should reside in the same namespace as the 5717 + referring resource. 5718 + maxLength: 253 5719 + minLength: 1 5720 + type: string 5721 + optional: 5722 + default: false 5723 + description: |- 5724 + Optional indicates whether the referenced resource must exist, or whether to 5725 + tolerate its absence. If true and the referenced resource is absent, proceed 5726 + as if the resource was present but empty, without any variables defined. 5727 + type: boolean 5728 + required: 5729 + - kind 5730 + - name 5731 + type: object 5732 + type: array 5733 + type: object 5734 + prune: 5735 + description: Prune enables garbage collection. 5736 + type: boolean 5737 + retryInterval: 5738 + description: |- 5739 + The interval at which to retry a previously failed reconciliation. 5740 + When not specified, the controller uses the KustomizationSpec.Interval 5741 + value to retry failures. 5742 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5743 + type: string 5744 + serviceAccountName: 5745 + description: |- 5746 + The name of the Kubernetes service account to impersonate 5747 + when reconciling this Kustomization. 5748 + type: string 5749 + sourceRef: 5750 + description: Reference of the source where the kustomization file 5751 + is. 5752 + properties: 5753 + apiVersion: 5754 + description: API version of the referent. 5755 + type: string 5756 + kind: 5757 + description: Kind of the referent. 5758 + enum: 5759 + - OCIRepository 5760 + - GitRepository 5761 + - Bucket 5762 + type: string 5763 + name: 5764 + description: Name of the referent. 5765 + type: string 5766 + namespace: 5767 + description: Namespace of the referent, defaults to the namespace 5768 + of the Kubernetes resource object that contains the reference. 5769 + type: string 5770 + required: 5771 + - kind 5772 + - name 5773 + type: object 5774 + suspend: 5775 + description: |- 5776 + This flag tells the controller to suspend subsequent kustomize executions, 5777 + it does not apply to already started executions. Defaults to false. 5778 + type: boolean 5779 + targetNamespace: 5780 + description: |- 5781 + TargetNamespace sets or overrides the namespace in the 5782 + kustomization.yaml file. 5783 + maxLength: 63 5784 + minLength: 1 5785 + type: string 5786 + timeout: 5787 + description: |- 5788 + Timeout for validation, apply and health checking operations. 5789 + Defaults to 'Interval' duration. 5790 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5791 + type: string 5792 + validation: 5793 + description: 'Deprecated: Not used in v1beta2.' 5794 + enum: 5795 + - none 5796 + - client 5797 + - server 5798 + type: string 5799 + wait: 5800 + description: |- 5801 + Wait instructs the controller to check the health of all the reconciled resources. 5802 + When enabled, the HealthChecks are ignored. Defaults to false. 5803 + type: boolean 5804 + required: 5805 + - interval 5806 + - prune 5807 + - sourceRef 5808 + type: object 5809 + status: 5810 + default: 5811 + observedGeneration: -1 5812 + description: KustomizationStatus defines the observed state of a kustomization. 5813 + properties: 5814 + conditions: 5815 + items: 5816 + description: Condition contains details for one aspect of the current 5817 + state of this API Resource. 5818 + properties: 5819 + lastTransitionTime: 5820 + description: |- 5821 + lastTransitionTime is the last time the condition transitioned from one status to another. 5822 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 5823 + format: date-time 5824 + type: string 5825 + message: 5826 + description: |- 5827 + message is a human readable message indicating details about the transition. 5828 + This may be an empty string. 5829 + maxLength: 32768 5830 + type: string 5831 + observedGeneration: 5832 + description: |- 5833 + observedGeneration represents the .metadata.generation that the condition was set based upon. 5834 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 5835 + with respect to the current state of the instance. 5836 + format: int64 5837 + minimum: 0 5838 + type: integer 5839 + reason: 5840 + description: |- 5841 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 5842 + Producers of specific condition types may define expected values and meanings for this field, 5843 + and whether the values are considered a guaranteed API. 5844 + The value should be a CamelCase string. 5845 + This field may not be empty. 5846 + maxLength: 1024 5847 + minLength: 1 5848 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 5849 + type: string 5850 + status: 5851 + description: status of the condition, one of True, False, Unknown. 5852 + enum: 5853 + - "True" 5854 + - "False" 5855 + - Unknown 5856 + type: string 5857 + type: 5858 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 5859 + maxLength: 316 5860 + 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])$ 5861 + type: string 5862 + required: 5863 + - lastTransitionTime 5864 + - message 5865 + - reason 5866 + - status 5867 + - type 5868 + type: object 5869 + type: array 5870 + inventory: 5871 + description: Inventory contains the list of Kubernetes resource object 5872 + references that have been successfully applied. 5873 + properties: 5874 + entries: 5875 + description: Entries of Kubernetes resource object references. 5876 + items: 5877 + description: ResourceRef contains the information necessary 5878 + to locate a resource within a cluster. 5879 + properties: 5880 + id: 5881 + description: |- 5882 + ID is the string representation of the Kubernetes resource object's metadata, 5883 + in the format '<namespace>_<name>_<group>_<kind>'. 5884 + type: string 5885 + v: 5886 + description: Version is the API version of the Kubernetes 5887 + resource object's kind. 5888 + type: string 5889 + required: 5890 + - id 5891 + - v 5892 + type: object 5893 + type: array 5894 + required: 5895 + - entries 5896 + type: object 5897 + lastAppliedRevision: 5898 + description: |- 5899 + The last successfully applied revision. 5900 + Equals the Revision of the applied Artifact from the referenced Source. 5901 + type: string 5902 + lastAttemptedRevision: 5903 + description: LastAttemptedRevision is the revision of the last reconciliation 5904 + attempt. 5905 + type: string 5906 + lastHandledReconcileAt: 5907 + description: |- 5908 + LastHandledReconcileAt holds the value of the most recent 5909 + reconcile request value, so a change of the annotation value 5910 + can be detected. 5911 + type: string 5912 + observedGeneration: 5913 + description: ObservedGeneration is the last reconciled generation. 5914 + format: int64 5915 + type: integer 5916 + type: object 5917 + type: object 5918 + served: true 5919 + storage: false 5920 + subresources: 5921 + status: {} 5922 + --- 5923 + apiVersion: v1 5924 + kind: ServiceAccount 5925 + metadata: 5926 + labels: 5927 + app.kubernetes.io/component: kustomize-controller 5928 + app.kubernetes.io/instance: flux-system 5929 + app.kubernetes.io/part-of: flux 5930 + app.kubernetes.io/version: v2.7.3 5931 + name: kustomize-controller 5932 + namespace: flux-system 5933 + --- 5934 + apiVersion: apps/v1 5935 + kind: Deployment 5936 + metadata: 5937 + labels: 5938 + app.kubernetes.io/component: kustomize-controller 5939 + app.kubernetes.io/instance: flux-system 5940 + app.kubernetes.io/part-of: flux 5941 + app.kubernetes.io/version: v2.7.3 5942 + control-plane: controller 5943 + name: kustomize-controller 5944 + namespace: flux-system 5945 + spec: 5946 + replicas: 1 5947 + selector: 5948 + matchLabels: 5949 + app: kustomize-controller 5950 + template: 5951 + metadata: 5952 + annotations: 5953 + prometheus.io/port: "8080" 5954 + prometheus.io/scrape: "true" 5955 + labels: 5956 + app: kustomize-controller 5957 + app.kubernetes.io/component: kustomize-controller 5958 + app.kubernetes.io/instance: flux-system 5959 + app.kubernetes.io/part-of: flux 5960 + app.kubernetes.io/version: v2.7.3 5961 + spec: 5962 + containers: 5963 + - args: 5964 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 5965 + - --watch-all-namespaces=true 5966 + - --log-level=info 5967 + - --log-encoding=json 5968 + - --enable-leader-election 5969 + env: 5970 + - name: RUNTIME_NAMESPACE 5971 + valueFrom: 5972 + fieldRef: 5973 + fieldPath: metadata.namespace 5974 + - name: GOMEMLIMIT 5975 + valueFrom: 5976 + resourceFieldRef: 5977 + containerName: manager 5978 + resource: limits.memory 5979 + image: ghcr.io/fluxcd/kustomize-controller:v1.7.2 5980 + imagePullPolicy: IfNotPresent 5981 + livenessProbe: 5982 + httpGet: 5983 + path: /healthz 5984 + port: healthz 5985 + name: manager 5986 + ports: 5987 + - containerPort: 8080 5988 + name: http-prom 5989 + protocol: TCP 5990 + - containerPort: 9440 5991 + name: healthz 5992 + protocol: TCP 5993 + readinessProbe: 5994 + httpGet: 5995 + path: /readyz 5996 + port: healthz 5997 + resources: 5998 + limits: 5999 + cpu: 1000m 6000 + memory: 1Gi 6001 + requests: 6002 + cpu: 100m 6003 + memory: 64Mi 6004 + securityContext: 6005 + allowPrivilegeEscalation: false 6006 + capabilities: 6007 + drop: 6008 + - ALL 6009 + readOnlyRootFilesystem: true 6010 + runAsNonRoot: true 6011 + seccompProfile: 6012 + type: RuntimeDefault 6013 + volumeMounts: 6014 + - mountPath: /tmp 6015 + name: temp 6016 + nodeSelector: 6017 + kubernetes.io/os: linux 6018 + priorityClassName: system-cluster-critical 6019 + securityContext: 6020 + fsGroup: 1337 6021 + serviceAccountName: kustomize-controller 6022 + terminationGracePeriodSeconds: 60 6023 + volumes: 6024 + - emptyDir: {} 6025 + name: temp 6026 + --- 6027 + apiVersion: apiextensions.k8s.io/v1 6028 + kind: CustomResourceDefinition 6029 + metadata: 6030 + annotations: 6031 + controller-gen.kubebuilder.io/version: v0.19.0 6032 + labels: 6033 + app.kubernetes.io/component: helm-controller 6034 + app.kubernetes.io/instance: flux-system 6035 + app.kubernetes.io/part-of: flux 6036 + app.kubernetes.io/version: v2.7.3 6037 + name: helmreleases.helm.toolkit.fluxcd.io 6038 + spec: 6039 + group: helm.toolkit.fluxcd.io 6040 + names: 6041 + kind: HelmRelease 6042 + listKind: HelmReleaseList 6043 + plural: helmreleases 6044 + shortNames: 6045 + - hr 6046 + singular: helmrelease 6047 + scope: Namespaced 6048 + versions: 6049 + - additionalPrinterColumns: 6050 + - jsonPath: .metadata.creationTimestamp 6051 + name: Age 6052 + type: date 6053 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 6054 + name: Ready 6055 + type: string 6056 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 6057 + name: Status 6058 + type: string 6059 + name: v2 6060 + schema: 6061 + openAPIV3Schema: 6062 + description: HelmRelease is the Schema for the helmreleases API 6063 + properties: 6064 + apiVersion: 6065 + description: |- 6066 + APIVersion defines the versioned schema of this representation of an object. 6067 + Servers should convert recognized schemas to the latest internal value, and 6068 + may reject unrecognized values. 6069 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 6070 + type: string 6071 + kind: 6072 + description: |- 6073 + Kind is a string value representing the REST resource this object represents. 6074 + Servers may infer this from the endpoint the client submits requests to. 6075 + Cannot be updated. 6076 + In CamelCase. 6077 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 6078 + type: string 6079 + metadata: 6080 + type: object 6081 + spec: 6082 + description: HelmReleaseSpec defines the desired state of a Helm release. 6083 + properties: 6084 + chart: 6085 + description: |- 6086 + Chart defines the template of the v1.HelmChart that should be created 6087 + for this HelmRelease. 6088 + properties: 6089 + metadata: 6090 + description: ObjectMeta holds the template for metadata like labels 6091 + and annotations. 6092 + properties: 6093 + annotations: 6094 + additionalProperties: 6095 + type: string 6096 + description: |- 6097 + Annotations is an unstructured key value map stored with a resource that may be 6098 + set by external tools to store and retrieve arbitrary metadata. They are not 6099 + queryable and should be preserved when modifying objects. 6100 + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 6101 + type: object 6102 + labels: 6103 + additionalProperties: 6104 + type: string 6105 + description: |- 6106 + Map of string keys and values that can be used to organize and categorize 6107 + (scope and select) objects. 6108 + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 6109 + type: object 6110 + type: object 6111 + spec: 6112 + description: Spec holds the template for the v1.HelmChartSpec 6113 + for this HelmRelease. 6114 + properties: 6115 + chart: 6116 + description: The name or path the Helm chart is available 6117 + at in the SourceRef. 6118 + maxLength: 2048 6119 + minLength: 1 6120 + type: string 6121 + ignoreMissingValuesFiles: 6122 + description: IgnoreMissingValuesFiles controls whether to 6123 + silently ignore missing values files rather than failing. 6124 + type: boolean 6125 + interval: 6126 + description: |- 6127 + Interval at which to check the v1.Source for updates. Defaults to 6128 + 'HelmReleaseSpec.Interval'. 6129 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6130 + type: string 6131 + reconcileStrategy: 6132 + default: ChartVersion 6133 + description: |- 6134 + Determines what enables the creation of a new artifact. Valid values are 6135 + ('ChartVersion', 'Revision'). 6136 + See the documentation of the values for an explanation on their behavior. 6137 + Defaults to ChartVersion when omitted. 6138 + enum: 6139 + - ChartVersion 6140 + - Revision 6141 + type: string 6142 + sourceRef: 6143 + description: The name and namespace of the v1.Source the chart 6144 + is available at. 6145 + properties: 6146 + apiVersion: 6147 + description: APIVersion of the referent. 6148 + type: string 6149 + kind: 6150 + description: Kind of the referent. 6151 + enum: 6152 + - HelmRepository 6153 + - GitRepository 6154 + - Bucket 6155 + type: string 6156 + name: 6157 + description: Name of the referent. 6158 + maxLength: 253 6159 + minLength: 1 6160 + type: string 6161 + namespace: 6162 + description: Namespace of the referent. 6163 + maxLength: 63 6164 + minLength: 1 6165 + type: string 6166 + required: 6167 + - kind 6168 + - name 6169 + type: object 6170 + valuesFiles: 6171 + description: |- 6172 + Alternative list of values files to use as the chart values (values.yaml 6173 + is not included by default), expected to be a relative path in the SourceRef. 6174 + Values files are merged in the order of this list with the last file overriding 6175 + the first. Ignored when omitted. 6176 + items: 6177 + type: string 6178 + type: array 6179 + verify: 6180 + description: |- 6181 + Verify contains the secret name containing the trusted public keys 6182 + used to verify the signature and specifies which provider to use to check 6183 + whether OCI image is authentic. 6184 + This field is only supported for OCI sources. 6185 + Chart dependencies, which are not bundled in the umbrella chart artifact, 6186 + are not verified. 6187 + properties: 6188 + provider: 6189 + default: cosign 6190 + description: Provider specifies the technology used to 6191 + sign the OCI Helm chart. 6192 + enum: 6193 + - cosign 6194 + - notation 6195 + type: string 6196 + secretRef: 6197 + description: |- 6198 + SecretRef specifies the Kubernetes Secret containing the 6199 + trusted public keys. 6200 + properties: 6201 + name: 6202 + description: Name of the referent. 6203 + type: string 6204 + required: 6205 + - name 6206 + type: object 6207 + required: 6208 + - provider 6209 + type: object 6210 + version: 6211 + default: '*' 6212 + description: |- 6213 + Version semver expression, ignored for charts from v1.GitRepository and 6214 + v1beta2.Bucket sources. Defaults to latest when omitted. 6215 + type: string 6216 + required: 6217 + - chart 6218 + - sourceRef 6219 + type: object 6220 + required: 6221 + - spec 6222 + type: object 6223 + chartRef: 6224 + description: |- 6225 + ChartRef holds a reference to a source controller resource containing the 6226 + Helm chart artifact. 6227 + properties: 6228 + apiVersion: 6229 + description: APIVersion of the referent. 6230 + type: string 6231 + kind: 6232 + description: Kind of the referent. 6233 + enum: 6234 + - OCIRepository 6235 + - HelmChart 6236 + - ExternalArtifact 6237 + type: string 6238 + name: 6239 + description: Name of the referent. 6240 + maxLength: 253 6241 + minLength: 1 6242 + type: string 6243 + namespace: 6244 + description: |- 6245 + Namespace of the referent, defaults to the namespace of the Kubernetes 6246 + resource object that contains the reference. 6247 + maxLength: 63 6248 + minLength: 1 6249 + type: string 6250 + required: 6251 + - kind 6252 + - name 6253 + type: object 6254 + commonMetadata: 6255 + description: |- 6256 + CommonMetadata specifies the common labels and annotations that are 6257 + applied to all resources. Any existing label or annotation will be 6258 + overridden if its key matches a common one. 6259 + properties: 6260 + annotations: 6261 + additionalProperties: 6262 + type: string 6263 + description: Annotations to be added to the object's metadata. 6264 + type: object 6265 + labels: 6266 + additionalProperties: 6267 + type: string 6268 + description: Labels to be added to the object's metadata. 6269 + type: object 6270 + type: object 6271 + dependsOn: 6272 + description: |- 6273 + DependsOn may contain a DependencyReference slice with 6274 + references to HelmRelease resources that must be ready before this HelmRelease 6275 + can be reconciled. 6276 + items: 6277 + description: DependencyReference defines a HelmRelease dependency 6278 + on another HelmRelease resource. 6279 + properties: 6280 + name: 6281 + description: Name of the referent. 6282 + type: string 6283 + namespace: 6284 + description: |- 6285 + Namespace of the referent, defaults to the namespace of the HelmRelease 6286 + resource object that contains the reference. 6287 + type: string 6288 + readyExpr: 6289 + description: |- 6290 + ReadyExpr is a CEL expression that can be used to assess the readiness 6291 + of a dependency. When specified, the built-in readiness check 6292 + is replaced by the logic defined in the CEL expression. 6293 + To make the CEL expression additive to the built-in readiness check, 6294 + the feature gate `AdditiveCELDependencyCheck` must be set to `true`. 6295 + type: string 6296 + required: 6297 + - name 6298 + type: object 6299 + type: array 6300 + driftDetection: 6301 + description: |- 6302 + DriftDetection holds the configuration for detecting and handling 6303 + differences between the manifest in the Helm storage and the resources 6304 + currently existing in the cluster. 6305 + properties: 6306 + ignore: 6307 + description: |- 6308 + Ignore contains a list of rules for specifying which changes to ignore 6309 + during diffing. 6310 + items: 6311 + description: |- 6312 + IgnoreRule defines a rule to selectively disregard specific changes during 6313 + the drift detection process. 6314 + properties: 6315 + paths: 6316 + description: |- 6317 + Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from 6318 + consideration in a Kubernetes object. 6319 + items: 6320 + type: string 6321 + type: array 6322 + target: 6323 + description: |- 6324 + Target is a selector for specifying Kubernetes objects to which this 6325 + rule applies. 6326 + If Target is not set, the Paths will be ignored for all Kubernetes 6327 + objects within the manifest of the Helm release. 6328 + properties: 6329 + annotationSelector: 6330 + description: |- 6331 + AnnotationSelector is a string that follows the label selection expression 6332 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 6333 + It matches with the resource annotations. 6334 + type: string 6335 + group: 6336 + description: |- 6337 + Group is the API group to select resources from. 6338 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 6339 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 6340 + type: string 6341 + kind: 6342 + description: |- 6343 + Kind of the API Group to select resources from. 6344 + Together with Group and Version it is capable of unambiguously 6345 + identifying and/or selecting resources. 6346 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 6347 + type: string 6348 + labelSelector: 6349 + description: |- 6350 + LabelSelector is a string that follows the label selection expression 6351 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 6352 + It matches with the resource labels. 6353 + type: string 6354 + name: 6355 + description: Name to match resources with. 6356 + type: string 6357 + namespace: 6358 + description: Namespace to select resources from. 6359 + type: string 6360 + version: 6361 + description: |- 6362 + Version of the API Group to select resources from. 6363 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 6364 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 6365 + type: string 6366 + type: object 6367 + required: 6368 + - paths 6369 + type: object 6370 + type: array 6371 + mode: 6372 + description: |- 6373 + Mode defines how differences should be handled between the Helm manifest 6374 + and the manifest currently applied to the cluster. 6375 + If not explicitly set, it defaults to DiffModeDisabled. 6376 + enum: 6377 + - enabled 6378 + - warn 6379 + - disabled 6380 + type: string 6381 + type: object 6382 + install: 6383 + description: Install holds the configuration for Helm install actions 6384 + for this HelmRelease. 6385 + properties: 6386 + crds: 6387 + description: |- 6388 + CRDs upgrade CRDs from the Helm Chart's crds directory according 6389 + to the CRD upgrade policy provided here. Valid values are `Skip`, 6390 + `Create` or `CreateReplace`. Default is `Create` and if omitted 6391 + CRDs are installed but not updated. 6392 + 6393 + Skip: do neither install nor replace (update) any CRDs. 6394 + 6395 + Create: new CRDs are created, existing CRDs are neither updated nor deleted. 6396 + 6397 + CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 6398 + but not deleted. 6399 + 6400 + By default, CRDs are applied (installed) during Helm install action. 6401 + With this option users can opt in to CRD replace existing CRDs on Helm 6402 + install actions, which is not (yet) natively supported by Helm. 6403 + https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 6404 + enum: 6405 + - Skip 6406 + - Create 6407 + - CreateReplace 6408 + type: string 6409 + createNamespace: 6410 + description: |- 6411 + CreateNamespace tells the Helm install action to create the 6412 + HelmReleaseSpec.TargetNamespace if it does not exist yet. 6413 + On uninstall, the namespace will not be garbage collected. 6414 + type: boolean 6415 + disableHooks: 6416 + description: DisableHooks prevents hooks from running during the 6417 + Helm install action. 6418 + type: boolean 6419 + disableOpenAPIValidation: 6420 + description: |- 6421 + DisableOpenAPIValidation prevents the Helm install action from validating 6422 + rendered templates against the Kubernetes OpenAPI Schema. 6423 + type: boolean 6424 + disableSchemaValidation: 6425 + description: |- 6426 + DisableSchemaValidation prevents the Helm install action from validating 6427 + the values against the JSON Schema. 6428 + type: boolean 6429 + disableTakeOwnership: 6430 + description: |- 6431 + DisableTakeOwnership disables taking ownership of existing resources 6432 + during the Helm install action. Defaults to false. 6433 + type: boolean 6434 + disableWait: 6435 + description: |- 6436 + DisableWait disables the waiting for resources to be ready after a Helm 6437 + install has been performed. 6438 + type: boolean 6439 + disableWaitForJobs: 6440 + description: |- 6441 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 6442 + install has been performed. 6443 + type: boolean 6444 + remediation: 6445 + description: |- 6446 + Remediation holds the remediation configuration for when the Helm install 6447 + action for the HelmRelease fails. The default is to not perform any action. 6448 + properties: 6449 + ignoreTestFailures: 6450 + description: |- 6451 + IgnoreTestFailures tells the controller to skip remediation when the Helm 6452 + tests are run after an install action but fail. Defaults to 6453 + 'Test.IgnoreFailures'. 6454 + type: boolean 6455 + remediateLastFailure: 6456 + description: |- 6457 + RemediateLastFailure tells the controller to remediate the last failure, when 6458 + no retries remain. Defaults to 'false'. 6459 + type: boolean 6460 + retries: 6461 + description: |- 6462 + Retries is the number of retries that should be attempted on failures before 6463 + bailing. Remediation, using an uninstall, is performed between each attempt. 6464 + Defaults to '0', a negative integer equals to unlimited retries. 6465 + type: integer 6466 + type: object 6467 + replace: 6468 + description: |- 6469 + Replace tells the Helm install action to re-use the 'ReleaseName', but only 6470 + if that name is a deleted release which remains in the history. 6471 + type: boolean 6472 + skipCRDs: 6473 + description: |- 6474 + SkipCRDs tells the Helm install action to not install any CRDs. By default, 6475 + CRDs are installed if not already present. 6476 + 6477 + Deprecated use CRD policy (`crds`) attribute with value `Skip` instead. 6478 + type: boolean 6479 + strategy: 6480 + description: |- 6481 + Strategy defines the install strategy to use for this HelmRelease. 6482 + Defaults to 'RemediateOnFailure'. 6483 + properties: 6484 + name: 6485 + description: Name of the install strategy. 6486 + enum: 6487 + - RemediateOnFailure 6488 + - RetryOnFailure 6489 + type: string 6490 + retryInterval: 6491 + description: |- 6492 + RetryInterval is the interval at which to retry a failed install. 6493 + Can be used only when Name is set to RetryOnFailure. 6494 + Defaults to '5m'. 6495 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6496 + type: string 6497 + required: 6498 + - name 6499 + type: object 6500 + x-kubernetes-validations: 6501 + - message: .retryInterval cannot be set when .name is 'RemediateOnFailure' 6502 + rule: '!has(self.retryInterval) || self.name != ''RemediateOnFailure''' 6503 + timeout: 6504 + description: |- 6505 + Timeout is the time to wait for any individual Kubernetes operation (like 6506 + Jobs for hooks) during the performance of a Helm install action. Defaults to 6507 + 'HelmReleaseSpec.Timeout'. 6508 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6509 + type: string 6510 + type: object 6511 + interval: 6512 + description: Interval at which to reconcile the Helm release. 6513 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6514 + type: string 6515 + kubeConfig: 6516 + description: |- 6517 + KubeConfig for reconciling the HelmRelease on a remote cluster. 6518 + When used in combination with HelmReleaseSpec.ServiceAccountName, 6519 + forces the controller to act on behalf of that Service Account at the 6520 + target cluster. 6521 + If the --default-service-account flag is set, its value will be used as 6522 + a controller level fallback for when HelmReleaseSpec.ServiceAccountName 6523 + is empty. 6524 + properties: 6525 + configMapRef: 6526 + description: |- 6527 + ConfigMapRef holds an optional name of a ConfigMap that contains 6528 + the following keys: 6529 + 6530 + - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 6531 + `generic`. Required. 6532 + - `cluster`: the fully qualified resource name of the Kubernetes 6533 + cluster in the cloud provider API. Not used by the `generic` 6534 + provider. Required when one of `address` or `ca.crt` is not set. 6535 + - `address`: the address of the Kubernetes API server. Required 6536 + for `generic`. For the other providers, if not specified, the 6537 + first address in the cluster resource will be used, and if 6538 + specified, it must match one of the addresses in the cluster 6539 + resource. 6540 + If audiences is not set, will be used as the audience for the 6541 + `generic` provider. 6542 + - `ca.crt`: the optional PEM-encoded CA certificate for the 6543 + Kubernetes API server. If not set, the controller will use the 6544 + CA certificate from the cluster resource. 6545 + - `audiences`: the optional audiences as a list of 6546 + line-break-separated strings for the Kubernetes ServiceAccount 6547 + token. Defaults to the `address` for the `generic` provider, or 6548 + to specific values for the other providers depending on the 6549 + provider. 6550 + - `serviceAccountName`: the optional name of the Kubernetes 6551 + ServiceAccount in the same namespace that should be used 6552 + for authentication. If not specified, the controller 6553 + ServiceAccount will be used. 6554 + 6555 + Mutually exclusive with SecretRef. 6556 + properties: 6557 + name: 6558 + description: Name of the referent. 6559 + type: string 6560 + required: 6561 + - name 6562 + type: object 6563 + secretRef: 6564 + description: |- 6565 + SecretRef holds an optional name of a secret that contains a key with 6566 + the kubeconfig file as the value. If no key is set, the key will default 6567 + to 'value'. Mutually exclusive with ConfigMapRef. 6568 + It is recommended that the kubeconfig is self-contained, and the secret 6569 + is regularly updated if credentials such as a cloud-access-token expire. 6570 + Cloud specific `cmd-path` auth helpers will not function without adding 6571 + binaries and credentials to the Pod that is responsible for reconciling 6572 + Kubernetes resources. Supported only for the generic provider. 6573 + properties: 6574 + key: 6575 + description: Key in the Secret, when not specified an implementation-specific 6576 + default key is used. 6577 + type: string 6578 + name: 6579 + description: Name of the Secret. 6580 + type: string 6581 + required: 6582 + - name 6583 + type: object 6584 + type: object 6585 + x-kubernetes-validations: 6586 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 6587 + must be specified 6588 + rule: has(self.configMapRef) || has(self.secretRef) 6589 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 6590 + must be specified 6591 + rule: '!has(self.configMapRef) || !has(self.secretRef)' 6592 + maxHistory: 6593 + description: |- 6594 + MaxHistory is the number of revisions saved by Helm for this HelmRelease. 6595 + Use '0' for an unlimited number of revisions; defaults to '5'. 6596 + type: integer 6597 + persistentClient: 6598 + description: |- 6599 + PersistentClient tells the controller to use a persistent Kubernetes 6600 + client for this release. When enabled, the client will be reused for the 6601 + duration of the reconciliation, instead of being created and destroyed 6602 + for each (step of a) Helm action. 6603 + 6604 + This can improve performance, but may cause issues with some Helm charts 6605 + that for example do create Custom Resource Definitions during installation 6606 + outside Helm's CRD lifecycle hooks, which are then not observed to be 6607 + available by e.g. post-install hooks. 6608 + 6609 + If not set, it defaults to true. 6610 + type: boolean 6611 + postRenderers: 6612 + description: |- 6613 + PostRenderers holds an array of Helm PostRenderers, which will be applied in order 6614 + of their definition. 6615 + items: 6616 + description: PostRenderer contains a Helm PostRenderer specification. 6617 + properties: 6618 + kustomize: 6619 + description: Kustomization to apply as PostRenderer. 6620 + properties: 6621 + images: 6622 + description: |- 6623 + Images is a list of (image name, new name, new tag or digest) 6624 + for changing image names, tags or digests. This can also be achieved with a 6625 + patch, but this operator is simpler to specify. 6626 + items: 6627 + description: Image contains an image name, a new name, 6628 + a new tag or digest, which will replace the original 6629 + name and tag. 6630 + properties: 6631 + digest: 6632 + description: |- 6633 + Digest is the value used to replace the original image tag. 6634 + If digest is present NewTag value is ignored. 6635 + type: string 6636 + name: 6637 + description: Name is a tag-less image name. 6638 + type: string 6639 + newName: 6640 + description: NewName is the value used to replace 6641 + the original name. 6642 + type: string 6643 + newTag: 6644 + description: NewTag is the value used to replace the 6645 + original tag. 6646 + type: string 6647 + required: 6648 + - name 6649 + type: object 6650 + type: array 6651 + patches: 6652 + description: |- 6653 + Strategic merge and JSON patches, defined as inline YAML objects, 6654 + capable of targeting objects based on kind, label and annotation selectors. 6655 + items: 6656 + description: |- 6657 + Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 6658 + be applied to. 6659 + properties: 6660 + patch: 6661 + description: |- 6662 + Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 6663 + an array of operation objects. 6664 + type: string 6665 + target: 6666 + description: Target points to the resources that the 6667 + patch document should be applied to. 6668 + properties: 6669 + annotationSelector: 6670 + description: |- 6671 + AnnotationSelector is a string that follows the label selection expression 6672 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 6673 + It matches with the resource annotations. 6674 + type: string 6675 + group: 6676 + description: |- 6677 + Group is the API group to select resources from. 6678 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 6679 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 6680 + type: string 6681 + kind: 6682 + description: |- 6683 + Kind of the API Group to select resources from. 6684 + Together with Group and Version it is capable of unambiguously 6685 + identifying and/or selecting resources. 6686 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 6687 + type: string 6688 + labelSelector: 6689 + description: |- 6690 + LabelSelector is a string that follows the label selection expression 6691 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 6692 + It matches with the resource labels. 6693 + type: string 6694 + name: 6695 + description: Name to match resources with. 6696 + type: string 6697 + namespace: 6698 + description: Namespace to select resources from. 6699 + type: string 6700 + version: 6701 + description: |- 6702 + Version of the API Group to select resources from. 6703 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 6704 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 6705 + type: string 6706 + type: object 6707 + required: 6708 + - patch 6709 + type: object 6710 + type: array 6711 + type: object 6712 + type: object 6713 + type: array 6714 + releaseName: 6715 + description: |- 6716 + ReleaseName used for the Helm release. Defaults to a composition of 6717 + '[TargetNamespace-]Name'. 6718 + maxLength: 53 6719 + minLength: 1 6720 + type: string 6721 + rollback: 6722 + description: Rollback holds the configuration for Helm rollback actions 6723 + for this HelmRelease. 6724 + properties: 6725 + cleanupOnFail: 6726 + description: |- 6727 + CleanupOnFail allows deletion of new resources created during the Helm 6728 + rollback action when it fails. 6729 + type: boolean 6730 + disableHooks: 6731 + description: DisableHooks prevents hooks from running during the 6732 + Helm rollback action. 6733 + type: boolean 6734 + disableWait: 6735 + description: |- 6736 + DisableWait disables the waiting for resources to be ready after a Helm 6737 + rollback has been performed. 6738 + type: boolean 6739 + disableWaitForJobs: 6740 + description: |- 6741 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 6742 + rollback has been performed. 6743 + type: boolean 6744 + force: 6745 + description: Force forces resource updates through a replacement 6746 + strategy. 6747 + type: boolean 6748 + recreate: 6749 + description: Recreate performs pod restarts for the resource if 6750 + applicable. 6751 + type: boolean 6752 + timeout: 6753 + description: |- 6754 + Timeout is the time to wait for any individual Kubernetes operation (like 6755 + Jobs for hooks) during the performance of a Helm rollback action. Defaults to 6756 + 'HelmReleaseSpec.Timeout'. 6757 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6758 + type: string 6759 + type: object 6760 + serviceAccountName: 6761 + description: |- 6762 + The name of the Kubernetes service account to impersonate 6763 + when reconciling this HelmRelease. 6764 + maxLength: 253 6765 + minLength: 1 6766 + type: string 6767 + storageNamespace: 6768 + description: |- 6769 + StorageNamespace used for the Helm storage. 6770 + Defaults to the namespace of the HelmRelease. 6771 + maxLength: 63 6772 + minLength: 1 6773 + type: string 6774 + suspend: 6775 + description: |- 6776 + Suspend tells the controller to suspend reconciliation for this HelmRelease, 6777 + it does not apply to already started reconciliations. Defaults to false. 6778 + type: boolean 6779 + targetNamespace: 6780 + description: |- 6781 + TargetNamespace to target when performing operations for the HelmRelease. 6782 + Defaults to the namespace of the HelmRelease. 6783 + maxLength: 63 6784 + minLength: 1 6785 + type: string 6786 + test: 6787 + description: Test holds the configuration for Helm test actions for 6788 + this HelmRelease. 6789 + properties: 6790 + enable: 6791 + description: |- 6792 + Enable enables Helm test actions for this HelmRelease after an Helm install 6793 + or upgrade action has been performed. 6794 + type: boolean 6795 + filters: 6796 + description: Filters is a list of tests to run or exclude from 6797 + running. 6798 + items: 6799 + description: Filter holds the configuration for individual Helm 6800 + test filters. 6801 + properties: 6802 + exclude: 6803 + description: Exclude specifies whether the named test should 6804 + be excluded. 6805 + type: boolean 6806 + name: 6807 + description: Name is the name of the test. 6808 + maxLength: 253 6809 + minLength: 1 6810 + type: string 6811 + required: 6812 + - name 6813 + type: object 6814 + type: array 6815 + ignoreFailures: 6816 + description: |- 6817 + IgnoreFailures tells the controller to skip remediation when the Helm tests 6818 + are run but fail. Can be overwritten for tests run after install or upgrade 6819 + actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. 6820 + type: boolean 6821 + timeout: 6822 + description: |- 6823 + Timeout is the time to wait for any individual Kubernetes operation during 6824 + the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. 6825 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6826 + type: string 6827 + type: object 6828 + timeout: 6829 + description: |- 6830 + Timeout is the time to wait for any individual Kubernetes operation (like Jobs 6831 + for hooks) during the performance of a Helm action. Defaults to '5m0s'. 6832 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6833 + type: string 6834 + uninstall: 6835 + description: Uninstall holds the configuration for Helm uninstall 6836 + actions for this HelmRelease. 6837 + properties: 6838 + deletionPropagation: 6839 + default: background 6840 + description: |- 6841 + DeletionPropagation specifies the deletion propagation policy when 6842 + a Helm uninstall is performed. 6843 + enum: 6844 + - background 6845 + - foreground 6846 + - orphan 6847 + type: string 6848 + disableHooks: 6849 + description: DisableHooks prevents hooks from running during the 6850 + Helm rollback action. 6851 + type: boolean 6852 + disableWait: 6853 + description: |- 6854 + DisableWait disables waiting for all the resources to be deleted after 6855 + a Helm uninstall is performed. 6856 + type: boolean 6857 + keepHistory: 6858 + description: |- 6859 + KeepHistory tells Helm to remove all associated resources and mark the 6860 + release as deleted, but retain the release history. 6861 + type: boolean 6862 + timeout: 6863 + description: |- 6864 + Timeout is the time to wait for any individual Kubernetes operation (like 6865 + Jobs for hooks) during the performance of a Helm uninstall action. Defaults 6866 + to 'HelmReleaseSpec.Timeout'. 6867 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6868 + type: string 6869 + type: object 6870 + upgrade: 6871 + description: Upgrade holds the configuration for Helm upgrade actions 6872 + for this HelmRelease. 6873 + properties: 6874 + cleanupOnFail: 6875 + description: |- 6876 + CleanupOnFail allows deletion of new resources created during the Helm 6877 + upgrade action when it fails. 6878 + type: boolean 6879 + crds: 6880 + description: |- 6881 + CRDs upgrade CRDs from the Helm Chart's crds directory according 6882 + to the CRD upgrade policy provided here. Valid values are `Skip`, 6883 + `Create` or `CreateReplace`. Default is `Skip` and if omitted 6884 + CRDs are neither installed nor upgraded. 6885 + 6886 + Skip: do neither install nor replace (update) any CRDs. 6887 + 6888 + Create: new CRDs are created, existing CRDs are neither updated nor deleted. 6889 + 6890 + CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 6891 + but not deleted. 6892 + 6893 + By default, CRDs are not applied during Helm upgrade action. With this 6894 + option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. 6895 + https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 6896 + enum: 6897 + - Skip 6898 + - Create 6899 + - CreateReplace 6900 + type: string 6901 + disableHooks: 6902 + description: DisableHooks prevents hooks from running during the 6903 + Helm upgrade action. 6904 + type: boolean 6905 + disableOpenAPIValidation: 6906 + description: |- 6907 + DisableOpenAPIValidation prevents the Helm upgrade action from validating 6908 + rendered templates against the Kubernetes OpenAPI Schema. 6909 + type: boolean 6910 + disableSchemaValidation: 6911 + description: |- 6912 + DisableSchemaValidation prevents the Helm upgrade action from validating 6913 + the values against the JSON Schema. 6914 + type: boolean 6915 + disableTakeOwnership: 6916 + description: |- 6917 + DisableTakeOwnership disables taking ownership of existing resources 6918 + during the Helm upgrade action. Defaults to false. 6919 + type: boolean 6920 + disableWait: 6921 + description: |- 6922 + DisableWait disables the waiting for resources to be ready after a Helm 6923 + upgrade has been performed. 6924 + type: boolean 6925 + disableWaitForJobs: 6926 + description: |- 6927 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 6928 + upgrade has been performed. 6929 + type: boolean 6930 + force: 6931 + description: Force forces resource updates through a replacement 6932 + strategy. 6933 + type: boolean 6934 + preserveValues: 6935 + description: |- 6936 + PreserveValues will make Helm reuse the last release's values and merge in 6937 + overrides from 'Values'. Setting this flag makes the HelmRelease 6938 + non-declarative. 6939 + type: boolean 6940 + remediation: 6941 + description: |- 6942 + Remediation holds the remediation configuration for when the Helm upgrade 6943 + action for the HelmRelease fails. The default is to not perform any action. 6944 + properties: 6945 + ignoreTestFailures: 6946 + description: |- 6947 + IgnoreTestFailures tells the controller to skip remediation when the Helm 6948 + tests are run after an upgrade action but fail. 6949 + Defaults to 'Test.IgnoreFailures'. 6950 + type: boolean 6951 + remediateLastFailure: 6952 + description: |- 6953 + RemediateLastFailure tells the controller to remediate the last failure, when 6954 + no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. 6955 + type: boolean 6956 + retries: 6957 + description: |- 6958 + Retries is the number of retries that should be attempted on failures before 6959 + bailing. Remediation, using 'Strategy', is performed between each attempt. 6960 + Defaults to '0', a negative integer equals to unlimited retries. 6961 + type: integer 6962 + strategy: 6963 + description: Strategy to use for failure remediation. Defaults 6964 + to 'rollback'. 6965 + enum: 6966 + - rollback 6967 + - uninstall 6968 + type: string 6969 + type: object 6970 + strategy: 6971 + description: |- 6972 + Strategy defines the upgrade strategy to use for this HelmRelease. 6973 + Defaults to 'RemediateOnFailure'. 6974 + properties: 6975 + name: 6976 + description: Name of the upgrade strategy. 6977 + enum: 6978 + - RemediateOnFailure 6979 + - RetryOnFailure 6980 + type: string 6981 + retryInterval: 6982 + description: |- 6983 + RetryInterval is the interval at which to retry a failed upgrade. 6984 + Can be used only when Name is set to RetryOnFailure. 6985 + Defaults to '5m'. 6986 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6987 + type: string 6988 + required: 6989 + - name 6990 + type: object 6991 + x-kubernetes-validations: 6992 + - message: .retryInterval can only be set when .name is 'RetryOnFailure' 6993 + rule: '!has(self.retryInterval) || self.name == ''RetryOnFailure''' 6994 + timeout: 6995 + description: |- 6996 + Timeout is the time to wait for any individual Kubernetes operation (like 6997 + Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 6998 + 'HelmReleaseSpec.Timeout'. 6999 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7000 + type: string 7001 + type: object 7002 + values: 7003 + description: Values holds the values for this Helm release. 7004 + x-kubernetes-preserve-unknown-fields: true 7005 + valuesFrom: 7006 + description: |- 7007 + ValuesFrom holds references to resources containing Helm values for this HelmRelease, 7008 + and information about how they should be merged. 7009 + items: 7010 + description: |- 7011 + ValuesReference contains a reference to a resource containing Helm values, 7012 + and optionally the key they can be found at. 7013 + properties: 7014 + kind: 7015 + description: Kind of the values referent, valid values are ('Secret', 7016 + 'ConfigMap'). 7017 + enum: 7018 + - Secret 7019 + - ConfigMap 7020 + type: string 7021 + name: 7022 + description: |- 7023 + Name of the values referent. Should reside in the same namespace as the 7024 + referring resource. 7025 + maxLength: 253 7026 + minLength: 1 7027 + type: string 7028 + optional: 7029 + description: |- 7030 + Optional marks this ValuesReference as optional. When set, a not found error 7031 + for the values reference is ignored, but any ValuesKey, TargetPath or 7032 + transient error will still result in a reconciliation failure. 7033 + type: boolean 7034 + targetPath: 7035 + description: |- 7036 + TargetPath is the YAML dot notation path the value should be merged at. When 7037 + set, the ValuesKey is expected to be a single flat value. Defaults to 'None', 7038 + which results in the values getting merged at the root. 7039 + maxLength: 250 7040 + pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$ 7041 + type: string 7042 + valuesKey: 7043 + description: |- 7044 + ValuesKey is the data key where the values.yaml or a specific value can be 7045 + found at. Defaults to 'values.yaml'. 7046 + maxLength: 253 7047 + pattern: ^[\-._a-zA-Z0-9]+$ 7048 + type: string 7049 + required: 7050 + - kind 7051 + - name 7052 + type: object 7053 + type: array 7054 + required: 7055 + - interval 7056 + type: object 7057 + x-kubernetes-validations: 7058 + - message: either chart or chartRef must be set 7059 + rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart) 7060 + && has(self.chartRef)) 7061 + status: 7062 + default: 7063 + observedGeneration: -1 7064 + description: HelmReleaseStatus defines the observed state of a HelmRelease. 7065 + properties: 7066 + conditions: 7067 + description: Conditions holds the conditions for the HelmRelease. 7068 + items: 7069 + description: Condition contains details for one aspect of the current 7070 + state of this API Resource. 7071 + properties: 7072 + lastTransitionTime: 7073 + description: |- 7074 + lastTransitionTime is the last time the condition transitioned from one status to another. 7075 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 7076 + format: date-time 7077 + type: string 7078 + message: 7079 + description: |- 7080 + message is a human readable message indicating details about the transition. 7081 + This may be an empty string. 7082 + maxLength: 32768 7083 + type: string 7084 + observedGeneration: 7085 + description: |- 7086 + observedGeneration represents the .metadata.generation that the condition was set based upon. 7087 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 7088 + with respect to the current state of the instance. 7089 + format: int64 7090 + minimum: 0 7091 + type: integer 7092 + reason: 7093 + description: |- 7094 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 7095 + Producers of specific condition types may define expected values and meanings for this field, 7096 + and whether the values are considered a guaranteed API. 7097 + The value should be a CamelCase string. 7098 + This field may not be empty. 7099 + maxLength: 1024 7100 + minLength: 1 7101 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 7102 + type: string 7103 + status: 7104 + description: status of the condition, one of True, False, Unknown. 7105 + enum: 7106 + - "True" 7107 + - "False" 7108 + - Unknown 7109 + type: string 7110 + type: 7111 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 7112 + maxLength: 316 7113 + 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])$ 7114 + type: string 7115 + required: 7116 + - lastTransitionTime 7117 + - message 7118 + - reason 7119 + - status 7120 + - type 7121 + type: object 7122 + type: array 7123 + failures: 7124 + description: |- 7125 + Failures is the reconciliation failure count against the latest desired 7126 + state. It is reset after a successful reconciliation. 7127 + format: int64 7128 + type: integer 7129 + helmChart: 7130 + description: |- 7131 + HelmChart is the namespaced name of the HelmChart resource created by 7132 + the controller for the HelmRelease. 7133 + type: string 7134 + history: 7135 + description: |- 7136 + History holds the history of Helm releases performed for this HelmRelease 7137 + up to the last successfully completed release. 7138 + items: 7139 + description: |- 7140 + Snapshot captures a point-in-time copy of the status information for a Helm release, 7141 + as managed by the controller. 7142 + properties: 7143 + apiVersion: 7144 + description: |- 7145 + APIVersion is the API version of the Snapshot. 7146 + Provisional: when the calculation method of the Digest field is changed, 7147 + this field will be used to distinguish between the old and new methods. 7148 + type: string 7149 + appVersion: 7150 + description: AppVersion is the chart app version of the release 7151 + object in storage. 7152 + type: string 7153 + chartName: 7154 + description: ChartName is the chart name of the release object 7155 + in storage. 7156 + type: string 7157 + chartVersion: 7158 + description: |- 7159 + ChartVersion is the chart version of the release object in 7160 + storage. 7161 + type: string 7162 + configDigest: 7163 + description: |- 7164 + ConfigDigest is the checksum of the config (better known as 7165 + "values") of the release object in storage. 7166 + It has the format of `<algo>:<checksum>`. 7167 + type: string 7168 + deleted: 7169 + description: Deleted is when the release was deleted. 7170 + format: date-time 7171 + type: string 7172 + digest: 7173 + description: |- 7174 + Digest is the checksum of the release object in storage. 7175 + It has the format of `<algo>:<checksum>`. 7176 + type: string 7177 + firstDeployed: 7178 + description: FirstDeployed is when the release was first deployed. 7179 + format: date-time 7180 + type: string 7181 + lastDeployed: 7182 + description: LastDeployed is when the release was last deployed. 7183 + format: date-time 7184 + type: string 7185 + name: 7186 + description: Name is the name of the release. 7187 + type: string 7188 + namespace: 7189 + description: Namespace is the namespace the release is deployed 7190 + to. 7191 + type: string 7192 + ociDigest: 7193 + description: OCIDigest is the digest of the OCI artifact associated 7194 + with the release. 7195 + type: string 7196 + status: 7197 + description: Status is the current state of the release. 7198 + type: string 7199 + testHooks: 7200 + additionalProperties: 7201 + description: |- 7202 + TestHookStatus holds the status information for a test hook as observed 7203 + to be run by the controller. 7204 + properties: 7205 + lastCompleted: 7206 + description: LastCompleted is the time the test hook last 7207 + completed. 7208 + format: date-time 7209 + type: string 7210 + lastStarted: 7211 + description: LastStarted is the time the test hook was 7212 + last started. 7213 + format: date-time 7214 + type: string 7215 + phase: 7216 + description: Phase the test hook was observed to be in. 7217 + type: string 7218 + type: object 7219 + description: |- 7220 + TestHooks is the list of test hooks for the release as observed to be 7221 + run by the controller. 7222 + type: object 7223 + version: 7224 + description: Version is the version of the release object in 7225 + storage. 7226 + type: integer 7227 + required: 7228 + - chartName 7229 + - chartVersion 7230 + - configDigest 7231 + - digest 7232 + - firstDeployed 7233 + - lastDeployed 7234 + - name 7235 + - namespace 7236 + - status 7237 + - version 7238 + type: object 7239 + type: array 7240 + installFailures: 7241 + description: |- 7242 + InstallFailures is the install failure count against the latest desired 7243 + state. It is reset after a successful reconciliation. 7244 + format: int64 7245 + type: integer 7246 + lastAttemptedConfigDigest: 7247 + description: |- 7248 + LastAttemptedConfigDigest is the digest for the config (better known as 7249 + "values") of the last reconciliation attempt. 7250 + type: string 7251 + lastAttemptedGeneration: 7252 + description: |- 7253 + LastAttemptedGeneration is the last generation the controller attempted 7254 + to reconcile. 7255 + format: int64 7256 + type: integer 7257 + lastAttemptedReleaseAction: 7258 + description: |- 7259 + LastAttemptedReleaseAction is the last release action performed for this 7260 + HelmRelease. It is used to determine the active retry or remediation 7261 + strategy. 7262 + enum: 7263 + - install 7264 + - upgrade 7265 + type: string 7266 + lastAttemptedReleaseActionDuration: 7267 + description: |- 7268 + LastAttemptedReleaseActionDuration is the duration of the last 7269 + release action performed for this HelmRelease. 7270 + type: string 7271 + lastAttemptedRevision: 7272 + description: |- 7273 + LastAttemptedRevision is the Source revision of the last reconciliation 7274 + attempt. For OCIRepository sources, the 12 first characters of the digest are 7275 + appended to the chart version e.g. "1.2.3+1234567890ab". 7276 + type: string 7277 + lastAttemptedRevisionDigest: 7278 + description: |- 7279 + LastAttemptedRevisionDigest is the digest of the last reconciliation attempt. 7280 + This is only set for OCIRepository sources. 7281 + type: string 7282 + lastAttemptedValuesChecksum: 7283 + description: |- 7284 + LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last 7285 + reconciliation attempt. 7286 + 7287 + Deprecated: Use LastAttemptedConfigDigest instead. 7288 + type: string 7289 + lastHandledForceAt: 7290 + description: |- 7291 + LastHandledForceAt holds the value of the most recent 7292 + force request value, so a change of the annotation value 7293 + can be detected. 7294 + type: string 7295 + lastHandledReconcileAt: 7296 + description: |- 7297 + LastHandledReconcileAt holds the value of the most recent 7298 + reconcile request value, so a change of the annotation value 7299 + can be detected. 7300 + type: string 7301 + lastHandledResetAt: 7302 + description: |- 7303 + LastHandledResetAt holds the value of the most recent reset request 7304 + value, so a change of the annotation value can be detected. 7305 + type: string 7306 + lastReleaseRevision: 7307 + description: |- 7308 + LastReleaseRevision is the revision of the last successful Helm release. 7309 + 7310 + Deprecated: Use History instead. 7311 + type: integer 7312 + observedCommonMetadataDigest: 7313 + description: |- 7314 + ObservedCommonMetadataDigest is the digest for the common metadata of 7315 + the last successful reconciliation attempt. 7316 + type: string 7317 + observedGeneration: 7318 + description: ObservedGeneration is the last observed generation. 7319 + format: int64 7320 + type: integer 7321 + observedPostRenderersDigest: 7322 + description: |- 7323 + ObservedPostRenderersDigest is the digest for the post-renderers of 7324 + the last successful reconciliation attempt. 7325 + type: string 7326 + storageNamespace: 7327 + description: |- 7328 + StorageNamespace is the namespace of the Helm release storage for the 7329 + current release. 7330 + maxLength: 63 7331 + minLength: 1 7332 + type: string 7333 + upgradeFailures: 7334 + description: |- 7335 + UpgradeFailures is the upgrade failure count against the latest desired 7336 + state. It is reset after a successful reconciliation. 7337 + format: int64 7338 + type: integer 7339 + type: object 7340 + type: object 7341 + served: true 7342 + storage: true 7343 + subresources: 7344 + status: {} 7345 + - additionalPrinterColumns: 7346 + - jsonPath: .metadata.creationTimestamp 7347 + name: Age 7348 + type: date 7349 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 7350 + name: Ready 7351 + type: string 7352 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 7353 + name: Status 7354 + type: string 7355 + deprecated: true 7356 + deprecationWarning: v2beta2 HelmRelease is deprecated, upgrade to v2 7357 + name: v2beta2 7358 + schema: 7359 + openAPIV3Schema: 7360 + description: HelmRelease is the Schema for the helmreleases API 7361 + properties: 7362 + apiVersion: 7363 + description: |- 7364 + APIVersion defines the versioned schema of this representation of an object. 7365 + Servers should convert recognized schemas to the latest internal value, and 7366 + may reject unrecognized values. 7367 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 7368 + type: string 7369 + kind: 7370 + description: |- 7371 + Kind is a string value representing the REST resource this object represents. 7372 + Servers may infer this from the endpoint the client submits requests to. 7373 + Cannot be updated. 7374 + In CamelCase. 7375 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 7376 + type: string 7377 + metadata: 7378 + type: object 7379 + spec: 7380 + description: HelmReleaseSpec defines the desired state of a Helm release. 7381 + properties: 7382 + chart: 7383 + description: |- 7384 + Chart defines the template of the v1beta2.HelmChart that should be created 7385 + for this HelmRelease. 7386 + properties: 7387 + metadata: 7388 + description: ObjectMeta holds the template for metadata like labels 7389 + and annotations. 7390 + properties: 7391 + annotations: 7392 + additionalProperties: 7393 + type: string 7394 + description: |- 7395 + Annotations is an unstructured key value map stored with a resource that may be 7396 + set by external tools to store and retrieve arbitrary metadata. They are not 7397 + queryable and should be preserved when modifying objects. 7398 + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 7399 + type: object 7400 + labels: 7401 + additionalProperties: 7402 + type: string 7403 + description: |- 7404 + Map of string keys and values that can be used to organize and categorize 7405 + (scope and select) objects. 7406 + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 7407 + type: object 7408 + type: object 7409 + spec: 7410 + description: Spec holds the template for the v1beta2.HelmChartSpec 7411 + for this HelmRelease. 7412 + properties: 7413 + chart: 7414 + description: The name or path the Helm chart is available 7415 + at in the SourceRef. 7416 + maxLength: 2048 7417 + minLength: 1 7418 + type: string 7419 + ignoreMissingValuesFiles: 7420 + description: IgnoreMissingValuesFiles controls whether to 7421 + silently ignore missing values files rather than failing. 7422 + type: boolean 7423 + interval: 7424 + description: |- 7425 + Interval at which to check the v1.Source for updates. Defaults to 7426 + 'HelmReleaseSpec.Interval'. 7427 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7428 + type: string 7429 + reconcileStrategy: 7430 + default: ChartVersion 7431 + description: |- 7432 + Determines what enables the creation of a new artifact. Valid values are 7433 + ('ChartVersion', 'Revision'). 7434 + See the documentation of the values for an explanation on their behavior. 7435 + Defaults to ChartVersion when omitted. 7436 + enum: 7437 + - ChartVersion 7438 + - Revision 7439 + type: string 7440 + sourceRef: 7441 + description: The name and namespace of the v1.Source the chart 7442 + is available at. 7443 + properties: 7444 + apiVersion: 7445 + description: APIVersion of the referent. 7446 + type: string 7447 + kind: 7448 + description: Kind of the referent. 7449 + enum: 7450 + - HelmRepository 7451 + - GitRepository 7452 + - Bucket 7453 + type: string 7454 + name: 7455 + description: Name of the referent. 7456 + maxLength: 253 7457 + minLength: 1 7458 + type: string 7459 + namespace: 7460 + description: Namespace of the referent. 7461 + maxLength: 63 7462 + minLength: 1 7463 + type: string 7464 + required: 7465 + - kind 7466 + - name 7467 + type: object 7468 + valuesFile: 7469 + description: |- 7470 + Alternative values file to use as the default chart values, expected to 7471 + be a relative path in the SourceRef. Deprecated in favor of ValuesFiles, 7472 + for backwards compatibility the file defined here is merged before the 7473 + ValuesFiles items. Ignored when omitted. 7474 + type: string 7475 + valuesFiles: 7476 + description: |- 7477 + Alternative list of values files to use as the chart values (values.yaml 7478 + is not included by default), expected to be a relative path in the SourceRef. 7479 + Values files are merged in the order of this list with the last file overriding 7480 + the first. Ignored when omitted. 7481 + items: 7482 + type: string 7483 + type: array 7484 + verify: 7485 + description: |- 7486 + Verify contains the secret name containing the trusted public keys 7487 + used to verify the signature and specifies which provider to use to check 7488 + whether OCI image is authentic. 7489 + This field is only supported for OCI sources. 7490 + Chart dependencies, which are not bundled in the umbrella chart artifact, 7491 + are not verified. 7492 + properties: 7493 + provider: 7494 + default: cosign 7495 + description: Provider specifies the technology used to 7496 + sign the OCI Helm chart. 7497 + enum: 7498 + - cosign 7499 + - notation 7500 + type: string 7501 + secretRef: 7502 + description: |- 7503 + SecretRef specifies the Kubernetes Secret containing the 7504 + trusted public keys. 7505 + properties: 7506 + name: 7507 + description: Name of the referent. 7508 + type: string 7509 + required: 7510 + - name 7511 + type: object 7512 + required: 7513 + - provider 7514 + type: object 7515 + version: 7516 + default: '*' 7517 + description: |- 7518 + Version semver expression, ignored for charts from v1beta2.GitRepository and 7519 + v1beta2.Bucket sources. Defaults to latest when omitted. 7520 + type: string 7521 + required: 7522 + - chart 7523 + - sourceRef 7524 + type: object 7525 + required: 7526 + - spec 7527 + type: object 7528 + chartRef: 7529 + description: |- 7530 + ChartRef holds a reference to a source controller resource containing the 7531 + Helm chart artifact. 7532 + 7533 + Note: this field is provisional to the v2 API, and not actively used 7534 + by v2beta2 HelmReleases. 7535 + properties: 7536 + apiVersion: 7537 + description: APIVersion of the referent. 7538 + type: string 7539 + kind: 7540 + description: Kind of the referent. 7541 + enum: 7542 + - OCIRepository 7543 + - HelmChart 7544 + type: string 7545 + name: 7546 + description: Name of the referent. 7547 + maxLength: 253 7548 + minLength: 1 7549 + type: string 7550 + namespace: 7551 + description: |- 7552 + Namespace of the referent, defaults to the namespace of the Kubernetes 7553 + resource object that contains the reference. 7554 + maxLength: 63 7555 + minLength: 1 7556 + type: string 7557 + required: 7558 + - kind 7559 + - name 7560 + type: object 7561 + dependsOn: 7562 + description: |- 7563 + DependsOn may contain a meta.NamespacedObjectReference slice with 7564 + references to HelmRelease resources that must be ready before this HelmRelease 7565 + can be reconciled. 7566 + items: 7567 + description: |- 7568 + NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any 7569 + namespace. 7570 + properties: 7571 + name: 7572 + description: Name of the referent. 7573 + type: string 7574 + namespace: 7575 + description: Namespace of the referent, when not specified it 7576 + acts as LocalObjectReference. 7577 + type: string 7578 + required: 7579 + - name 7580 + type: object 7581 + type: array 7582 + driftDetection: 7583 + description: |- 7584 + DriftDetection holds the configuration for detecting and handling 7585 + differences between the manifest in the Helm storage and the resources 7586 + currently existing in the cluster. 7587 + properties: 7588 + ignore: 7589 + description: |- 7590 + Ignore contains a list of rules for specifying which changes to ignore 7591 + during diffing. 7592 + items: 7593 + description: |- 7594 + IgnoreRule defines a rule to selectively disregard specific changes during 7595 + the drift detection process. 7596 + properties: 7597 + paths: 7598 + description: |- 7599 + Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from 7600 + consideration in a Kubernetes object. 7601 + items: 7602 + type: string 7603 + type: array 7604 + target: 7605 + description: |- 7606 + Target is a selector for specifying Kubernetes objects to which this 7607 + rule applies. 7608 + If Target is not set, the Paths will be ignored for all Kubernetes 7609 + objects within the manifest of the Helm release. 7610 + properties: 7611 + annotationSelector: 7612 + description: |- 7613 + AnnotationSelector is a string that follows the label selection expression 7614 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7615 + It matches with the resource annotations. 7616 + type: string 7617 + group: 7618 + description: |- 7619 + Group is the API group to select resources from. 7620 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 7621 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7622 + type: string 7623 + kind: 7624 + description: |- 7625 + Kind of the API Group to select resources from. 7626 + Together with Group and Version it is capable of unambiguously 7627 + identifying and/or selecting resources. 7628 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7629 + type: string 7630 + labelSelector: 7631 + description: |- 7632 + LabelSelector is a string that follows the label selection expression 7633 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7634 + It matches with the resource labels. 7635 + type: string 7636 + name: 7637 + description: Name to match resources with. 7638 + type: string 7639 + namespace: 7640 + description: Namespace to select resources from. 7641 + type: string 7642 + version: 7643 + description: |- 7644 + Version of the API Group to select resources from. 7645 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 7646 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7647 + type: string 7648 + type: object 7649 + required: 7650 + - paths 7651 + type: object 7652 + type: array 7653 + mode: 7654 + description: |- 7655 + Mode defines how differences should be handled between the Helm manifest 7656 + and the manifest currently applied to the cluster. 7657 + If not explicitly set, it defaults to DiffModeDisabled. 7658 + enum: 7659 + - enabled 7660 + - warn 7661 + - disabled 7662 + type: string 7663 + type: object 7664 + install: 7665 + description: Install holds the configuration for Helm install actions 7666 + for this HelmRelease. 7667 + properties: 7668 + crds: 7669 + description: |- 7670 + CRDs upgrade CRDs from the Helm Chart's crds directory according 7671 + to the CRD upgrade policy provided here. Valid values are `Skip`, 7672 + `Create` or `CreateReplace`. Default is `Create` and if omitted 7673 + CRDs are installed but not updated. 7674 + 7675 + Skip: do neither install nor replace (update) any CRDs. 7676 + 7677 + Create: new CRDs are created, existing CRDs are neither updated nor deleted. 7678 + 7679 + CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 7680 + but not deleted. 7681 + 7682 + By default, CRDs are applied (installed) during Helm install action. 7683 + With this option users can opt in to CRD replace existing CRDs on Helm 7684 + install actions, which is not (yet) natively supported by Helm. 7685 + https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 7686 + enum: 7687 + - Skip 7688 + - Create 7689 + - CreateReplace 7690 + type: string 7691 + createNamespace: 7692 + description: |- 7693 + CreateNamespace tells the Helm install action to create the 7694 + HelmReleaseSpec.TargetNamespace if it does not exist yet. 7695 + On uninstall, the namespace will not be garbage collected. 7696 + type: boolean 7697 + disableHooks: 7698 + description: DisableHooks prevents hooks from running during the 7699 + Helm install action. 7700 + type: boolean 7701 + disableOpenAPIValidation: 7702 + description: |- 7703 + DisableOpenAPIValidation prevents the Helm install action from validating 7704 + rendered templates against the Kubernetes OpenAPI Schema. 7705 + type: boolean 7706 + disableWait: 7707 + description: |- 7708 + DisableWait disables the waiting for resources to be ready after a Helm 7709 + install has been performed. 7710 + type: boolean 7711 + disableWaitForJobs: 7712 + description: |- 7713 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 7714 + install has been performed. 7715 + type: boolean 7716 + remediation: 7717 + description: |- 7718 + Remediation holds the remediation configuration for when the Helm install 7719 + action for the HelmRelease fails. The default is to not perform any action. 7720 + properties: 7721 + ignoreTestFailures: 7722 + description: |- 7723 + IgnoreTestFailures tells the controller to skip remediation when the Helm 7724 + tests are run after an install action but fail. Defaults to 7725 + 'Test.IgnoreFailures'. 7726 + type: boolean 7727 + remediateLastFailure: 7728 + description: |- 7729 + RemediateLastFailure tells the controller to remediate the last failure, when 7730 + no retries remain. Defaults to 'false'. 7731 + type: boolean 7732 + retries: 7733 + description: |- 7734 + Retries is the number of retries that should be attempted on failures before 7735 + bailing. Remediation, using an uninstall, is performed between each attempt. 7736 + Defaults to '0', a negative integer equals to unlimited retries. 7737 + type: integer 7738 + type: object 7739 + replace: 7740 + description: |- 7741 + Replace tells the Helm install action to re-use the 'ReleaseName', but only 7742 + if that name is a deleted release which remains in the history. 7743 + type: boolean 7744 + skipCRDs: 7745 + description: |- 7746 + SkipCRDs tells the Helm install action to not install any CRDs. By default, 7747 + CRDs are installed if not already present. 7748 + 7749 + Deprecated use CRD policy (`crds`) attribute with value `Skip` instead. 7750 + type: boolean 7751 + timeout: 7752 + description: |- 7753 + Timeout is the time to wait for any individual Kubernetes operation (like 7754 + Jobs for hooks) during the performance of a Helm install action. Defaults to 7755 + 'HelmReleaseSpec.Timeout'. 7756 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7757 + type: string 7758 + type: object 7759 + interval: 7760 + description: Interval at which to reconcile the Helm release. 7761 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7762 + type: string 7763 + kubeConfig: 7764 + description: |- 7765 + KubeConfig for reconciling the HelmRelease on a remote cluster. 7766 + When used in combination with HelmReleaseSpec.ServiceAccountName, 7767 + forces the controller to act on behalf of that Service Account at the 7768 + target cluster. 7769 + If the --default-service-account flag is set, its value will be used as 7770 + a controller level fallback for when HelmReleaseSpec.ServiceAccountName 7771 + is empty. 7772 + properties: 7773 + configMapRef: 7774 + description: |- 7775 + ConfigMapRef holds an optional name of a ConfigMap that contains 7776 + the following keys: 7777 + 7778 + - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 7779 + `generic`. Required. 7780 + - `cluster`: the fully qualified resource name of the Kubernetes 7781 + cluster in the cloud provider API. Not used by the `generic` 7782 + provider. Required when one of `address` or `ca.crt` is not set. 7783 + - `address`: the address of the Kubernetes API server. Required 7784 + for `generic`. For the other providers, if not specified, the 7785 + first address in the cluster resource will be used, and if 7786 + specified, it must match one of the addresses in the cluster 7787 + resource. 7788 + If audiences is not set, will be used as the audience for the 7789 + `generic` provider. 7790 + - `ca.crt`: the optional PEM-encoded CA certificate for the 7791 + Kubernetes API server. If not set, the controller will use the 7792 + CA certificate from the cluster resource. 7793 + - `audiences`: the optional audiences as a list of 7794 + line-break-separated strings for the Kubernetes ServiceAccount 7795 + token. Defaults to the `address` for the `generic` provider, or 7796 + to specific values for the other providers depending on the 7797 + provider. 7798 + - `serviceAccountName`: the optional name of the Kubernetes 7799 + ServiceAccount in the same namespace that should be used 7800 + for authentication. If not specified, the controller 7801 + ServiceAccount will be used. 7802 + 7803 + Mutually exclusive with SecretRef. 7804 + properties: 7805 + name: 7806 + description: Name of the referent. 7807 + type: string 7808 + required: 7809 + - name 7810 + type: object 7811 + secretRef: 7812 + description: |- 7813 + SecretRef holds an optional name of a secret that contains a key with 7814 + the kubeconfig file as the value. If no key is set, the key will default 7815 + to 'value'. Mutually exclusive with ConfigMapRef. 7816 + It is recommended that the kubeconfig is self-contained, and the secret 7817 + is regularly updated if credentials such as a cloud-access-token expire. 7818 + Cloud specific `cmd-path` auth helpers will not function without adding 7819 + binaries and credentials to the Pod that is responsible for reconciling 7820 + Kubernetes resources. Supported only for the generic provider. 7821 + properties: 7822 + key: 7823 + description: Key in the Secret, when not specified an implementation-specific 7824 + default key is used. 7825 + type: string 7826 + name: 7827 + description: Name of the Secret. 7828 + type: string 7829 + required: 7830 + - name 7831 + type: object 7832 + type: object 7833 + x-kubernetes-validations: 7834 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 7835 + must be specified 7836 + rule: has(self.configMapRef) || has(self.secretRef) 7837 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 7838 + must be specified 7839 + rule: '!has(self.configMapRef) || !has(self.secretRef)' 7840 + maxHistory: 7841 + description: |- 7842 + MaxHistory is the number of revisions saved by Helm for this HelmRelease. 7843 + Use '0' for an unlimited number of revisions; defaults to '5'. 7844 + type: integer 7845 + persistentClient: 7846 + description: |- 7847 + PersistentClient tells the controller to use a persistent Kubernetes 7848 + client for this release. When enabled, the client will be reused for the 7849 + duration of the reconciliation, instead of being created and destroyed 7850 + for each (step of a) Helm action. 7851 + 7852 + This can improve performance, but may cause issues with some Helm charts 7853 + that for example do create Custom Resource Definitions during installation 7854 + outside Helm's CRD lifecycle hooks, which are then not observed to be 7855 + available by e.g. post-install hooks. 7856 + 7857 + If not set, it defaults to true. 7858 + type: boolean 7859 + postRenderers: 7860 + description: |- 7861 + PostRenderers holds an array of Helm PostRenderers, which will be applied in order 7862 + of their definition. 7863 + items: 7864 + description: PostRenderer contains a Helm PostRenderer specification. 7865 + properties: 7866 + kustomize: 7867 + description: Kustomization to apply as PostRenderer. 7868 + properties: 7869 + images: 7870 + description: |- 7871 + Images is a list of (image name, new name, new tag or digest) 7872 + for changing image names, tags or digests. This can also be achieved with a 7873 + patch, but this operator is simpler to specify. 7874 + items: 7875 + description: Image contains an image name, a new name, 7876 + a new tag or digest, which will replace the original 7877 + name and tag. 7878 + properties: 7879 + digest: 7880 + description: |- 7881 + Digest is the value used to replace the original image tag. 7882 + If digest is present NewTag value is ignored. 7883 + type: string 7884 + name: 7885 + description: Name is a tag-less image name. 7886 + type: string 7887 + newName: 7888 + description: NewName is the value used to replace 7889 + the original name. 7890 + type: string 7891 + newTag: 7892 + description: NewTag is the value used to replace the 7893 + original tag. 7894 + type: string 7895 + required: 7896 + - name 7897 + type: object 7898 + type: array 7899 + patches: 7900 + description: |- 7901 + Strategic merge and JSON patches, defined as inline YAML objects, 7902 + capable of targeting objects based on kind, label and annotation selectors. 7903 + items: 7904 + description: |- 7905 + Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 7906 + be applied to. 7907 + properties: 7908 + patch: 7909 + description: |- 7910 + Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 7911 + an array of operation objects. 7912 + type: string 7913 + target: 7914 + description: Target points to the resources that the 7915 + patch document should be applied to. 7916 + properties: 7917 + annotationSelector: 7918 + description: |- 7919 + AnnotationSelector is a string that follows the label selection expression 7920 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7921 + It matches with the resource annotations. 7922 + type: string 7923 + group: 7924 + description: |- 7925 + Group is the API group to select resources from. 7926 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 7927 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7928 + type: string 7929 + kind: 7930 + description: |- 7931 + Kind of the API Group to select resources from. 7932 + Together with Group and Version it is capable of unambiguously 7933 + identifying and/or selecting resources. 7934 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7935 + type: string 7936 + labelSelector: 7937 + description: |- 7938 + LabelSelector is a string that follows the label selection expression 7939 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7940 + It matches with the resource labels. 7941 + type: string 7942 + name: 7943 + description: Name to match resources with. 7944 + type: string 7945 + namespace: 7946 + description: Namespace to select resources from. 7947 + type: string 7948 + version: 7949 + description: |- 7950 + Version of the API Group to select resources from. 7951 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 7952 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7953 + type: string 7954 + type: object 7955 + required: 7956 + - patch 7957 + type: object 7958 + type: array 7959 + patchesJson6902: 7960 + description: |- 7961 + JSON 6902 patches, defined as inline YAML objects. 7962 + 7963 + Deprecated: use Patches instead. 7964 + items: 7965 + description: JSON6902Patch contains a JSON6902 patch and 7966 + the target the patch should be applied to. 7967 + properties: 7968 + patch: 7969 + description: Patch contains the JSON6902 patch document 7970 + with an array of operation objects. 7971 + items: 7972 + description: |- 7973 + JSON6902 is a JSON6902 operation object. 7974 + https://datatracker.ietf.org/doc/html/rfc6902#section-4 7975 + properties: 7976 + from: 7977 + description: |- 7978 + From contains a JSON-pointer value that references a location within the target document where the operation is 7979 + performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. 7980 + type: string 7981 + op: 7982 + description: |- 7983 + Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or 7984 + "test". 7985 + https://datatracker.ietf.org/doc/html/rfc6902#section-4 7986 + enum: 7987 + - test 7988 + - remove 7989 + - add 7990 + - replace 7991 + - move 7992 + - copy 7993 + type: string 7994 + path: 7995 + description: |- 7996 + Path contains the JSON-pointer value that references a location within the target document where the operation 7997 + is performed. The meaning of the value depends on the value of Op. 7998 + type: string 7999 + value: 8000 + description: |- 8001 + Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into 8002 + account by all operations. 8003 + x-kubernetes-preserve-unknown-fields: true 8004 + required: 8005 + - op 8006 + - path 8007 + type: object 8008 + type: array 8009 + target: 8010 + description: Target points to the resources that the 8011 + patch document should be applied to. 8012 + properties: 8013 + annotationSelector: 8014 + description: |- 8015 + AnnotationSelector is a string that follows the label selection expression 8016 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 8017 + It matches with the resource annotations. 8018 + type: string 8019 + group: 8020 + description: |- 8021 + Group is the API group to select resources from. 8022 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 8023 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8024 + type: string 8025 + kind: 8026 + description: |- 8027 + Kind of the API Group to select resources from. 8028 + Together with Group and Version it is capable of unambiguously 8029 + identifying and/or selecting resources. 8030 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8031 + type: string 8032 + labelSelector: 8033 + description: |- 8034 + LabelSelector is a string that follows the label selection expression 8035 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 8036 + It matches with the resource labels. 8037 + type: string 8038 + name: 8039 + description: Name to match resources with. 8040 + type: string 8041 + namespace: 8042 + description: Namespace to select resources from. 8043 + type: string 8044 + version: 8045 + description: |- 8046 + Version of the API Group to select resources from. 8047 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 8048 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8049 + type: string 8050 + type: object 8051 + required: 8052 + - patch 8053 + - target 8054 + type: object 8055 + type: array 8056 + patchesStrategicMerge: 8057 + description: |- 8058 + Strategic merge patches, defined as inline YAML objects. 8059 + 8060 + Deprecated: use Patches instead. 8061 + items: 8062 + x-kubernetes-preserve-unknown-fields: true 8063 + type: array 8064 + type: object 8065 + type: object 8066 + type: array 8067 + releaseName: 8068 + description: |- 8069 + ReleaseName used for the Helm release. Defaults to a composition of 8070 + '[TargetNamespace-]Name'. 8071 + maxLength: 53 8072 + minLength: 1 8073 + type: string 8074 + rollback: 8075 + description: Rollback holds the configuration for Helm rollback actions 8076 + for this HelmRelease. 8077 + properties: 8078 + cleanupOnFail: 8079 + description: |- 8080 + CleanupOnFail allows deletion of new resources created during the Helm 8081 + rollback action when it fails. 8082 + type: boolean 8083 + disableHooks: 8084 + description: DisableHooks prevents hooks from running during the 8085 + Helm rollback action. 8086 + type: boolean 8087 + disableWait: 8088 + description: |- 8089 + DisableWait disables the waiting for resources to be ready after a Helm 8090 + rollback has been performed. 8091 + type: boolean 8092 + disableWaitForJobs: 8093 + description: |- 8094 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 8095 + rollback has been performed. 8096 + type: boolean 8097 + force: 8098 + description: Force forces resource updates through a replacement 8099 + strategy. 8100 + type: boolean 8101 + recreate: 8102 + description: Recreate performs pod restarts for the resource if 8103 + applicable. 8104 + type: boolean 8105 + timeout: 8106 + description: |- 8107 + Timeout is the time to wait for any individual Kubernetes operation (like 8108 + Jobs for hooks) during the performance of a Helm rollback action. Defaults to 8109 + 'HelmReleaseSpec.Timeout'. 8110 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8111 + type: string 8112 + type: object 8113 + serviceAccountName: 8114 + description: |- 8115 + The name of the Kubernetes service account to impersonate 8116 + when reconciling this HelmRelease. 8117 + maxLength: 253 8118 + minLength: 1 8119 + type: string 8120 + storageNamespace: 8121 + description: |- 8122 + StorageNamespace used for the Helm storage. 8123 + Defaults to the namespace of the HelmRelease. 8124 + maxLength: 63 8125 + minLength: 1 8126 + type: string 8127 + suspend: 8128 + description: |- 8129 + Suspend tells the controller to suspend reconciliation for this HelmRelease, 8130 + it does not apply to already started reconciliations. Defaults to false. 8131 + type: boolean 8132 + targetNamespace: 8133 + description: |- 8134 + TargetNamespace to target when performing operations for the HelmRelease. 8135 + Defaults to the namespace of the HelmRelease. 8136 + maxLength: 63 8137 + minLength: 1 8138 + type: string 8139 + test: 8140 + description: Test holds the configuration for Helm test actions for 8141 + this HelmRelease. 8142 + properties: 8143 + enable: 8144 + description: |- 8145 + Enable enables Helm test actions for this HelmRelease after an Helm install 8146 + or upgrade action has been performed. 8147 + type: boolean 8148 + filters: 8149 + description: Filters is a list of tests to run or exclude from 8150 + running. 8151 + items: 8152 + description: Filter holds the configuration for individual Helm 8153 + test filters. 8154 + properties: 8155 + exclude: 8156 + description: Exclude specifies whether the named test should 8157 + be excluded. 8158 + type: boolean 8159 + name: 8160 + description: Name is the name of the test. 8161 + maxLength: 253 8162 + minLength: 1 8163 + type: string 8164 + required: 8165 + - name 8166 + type: object 8167 + type: array 8168 + ignoreFailures: 8169 + description: |- 8170 + IgnoreFailures tells the controller to skip remediation when the Helm tests 8171 + are run but fail. Can be overwritten for tests run after install or upgrade 8172 + actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. 8173 + type: boolean 8174 + timeout: 8175 + description: |- 8176 + Timeout is the time to wait for any individual Kubernetes operation during 8177 + the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. 8178 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8179 + type: string 8180 + type: object 8181 + timeout: 8182 + description: |- 8183 + Timeout is the time to wait for any individual Kubernetes operation (like Jobs 8184 + for hooks) during the performance of a Helm action. Defaults to '5m0s'. 8185 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8186 + type: string 8187 + uninstall: 8188 + description: Uninstall holds the configuration for Helm uninstall 8189 + actions for this HelmRelease. 8190 + properties: 8191 + deletionPropagation: 8192 + default: background 8193 + description: |- 8194 + DeletionPropagation specifies the deletion propagation policy when 8195 + a Helm uninstall is performed. 8196 + enum: 8197 + - background 8198 + - foreground 8199 + - orphan 8200 + type: string 8201 + disableHooks: 8202 + description: DisableHooks prevents hooks from running during the 8203 + Helm rollback action. 8204 + type: boolean 8205 + disableWait: 8206 + description: |- 8207 + DisableWait disables waiting for all the resources to be deleted after 8208 + a Helm uninstall is performed. 8209 + type: boolean 8210 + keepHistory: 8211 + description: |- 8212 + KeepHistory tells Helm to remove all associated resources and mark the 8213 + release as deleted, but retain the release history. 8214 + type: boolean 8215 + timeout: 8216 + description: |- 8217 + Timeout is the time to wait for any individual Kubernetes operation (like 8218 + Jobs for hooks) during the performance of a Helm uninstall action. Defaults 8219 + to 'HelmReleaseSpec.Timeout'. 8220 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8221 + type: string 8222 + type: object 8223 + upgrade: 8224 + description: Upgrade holds the configuration for Helm upgrade actions 8225 + for this HelmRelease. 8226 + properties: 8227 + cleanupOnFail: 8228 + description: |- 8229 + CleanupOnFail allows deletion of new resources created during the Helm 8230 + upgrade action when it fails. 8231 + type: boolean 8232 + crds: 8233 + description: |- 8234 + CRDs upgrade CRDs from the Helm Chart's crds directory according 8235 + to the CRD upgrade policy provided here. Valid values are `Skip`, 8236 + `Create` or `CreateReplace`. Default is `Skip` and if omitted 8237 + CRDs are neither installed nor upgraded. 8238 + 8239 + Skip: do neither install nor replace (update) any CRDs. 8240 + 8241 + Create: new CRDs are created, existing CRDs are neither updated nor deleted. 8242 + 8243 + CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 8244 + but not deleted. 8245 + 8246 + By default, CRDs are not applied during Helm upgrade action. With this 8247 + option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. 8248 + https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 8249 + enum: 8250 + - Skip 8251 + - Create 8252 + - CreateReplace 8253 + type: string 8254 + disableHooks: 8255 + description: DisableHooks prevents hooks from running during the 8256 + Helm upgrade action. 8257 + type: boolean 8258 + disableOpenAPIValidation: 8259 + description: |- 8260 + DisableOpenAPIValidation prevents the Helm upgrade action from validating 8261 + rendered templates against the Kubernetes OpenAPI Schema. 8262 + type: boolean 8263 + disableWait: 8264 + description: |- 8265 + DisableWait disables the waiting for resources to be ready after a Helm 8266 + upgrade has been performed. 8267 + type: boolean 8268 + disableWaitForJobs: 8269 + description: |- 8270 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 8271 + upgrade has been performed. 8272 + type: boolean 8273 + force: 8274 + description: Force forces resource updates through a replacement 8275 + strategy. 8276 + type: boolean 8277 + preserveValues: 8278 + description: |- 8279 + PreserveValues will make Helm reuse the last release's values and merge in 8280 + overrides from 'Values'. Setting this flag makes the HelmRelease 8281 + non-declarative. 8282 + type: boolean 8283 + remediation: 8284 + description: |- 8285 + Remediation holds the remediation configuration for when the Helm upgrade 8286 + action for the HelmRelease fails. The default is to not perform any action. 8287 + properties: 8288 + ignoreTestFailures: 8289 + description: |- 8290 + IgnoreTestFailures tells the controller to skip remediation when the Helm 8291 + tests are run after an upgrade action but fail. 8292 + Defaults to 'Test.IgnoreFailures'. 8293 + type: boolean 8294 + remediateLastFailure: 8295 + description: |- 8296 + RemediateLastFailure tells the controller to remediate the last failure, when 8297 + no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. 8298 + type: boolean 8299 + retries: 8300 + description: |- 8301 + Retries is the number of retries that should be attempted on failures before 8302 + bailing. Remediation, using 'Strategy', is performed between each attempt. 8303 + Defaults to '0', a negative integer equals to unlimited retries. 8304 + type: integer 8305 + strategy: 8306 + description: Strategy to use for failure remediation. Defaults 8307 + to 'rollback'. 8308 + enum: 8309 + - rollback 8310 + - uninstall 8311 + type: string 8312 + type: object 8313 + timeout: 8314 + description: |- 8315 + Timeout is the time to wait for any individual Kubernetes operation (like 8316 + Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 8317 + 'HelmReleaseSpec.Timeout'. 8318 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8319 + type: string 8320 + type: object 8321 + values: 8322 + description: Values holds the values for this Helm release. 8323 + x-kubernetes-preserve-unknown-fields: true 8324 + valuesFrom: 8325 + description: |- 8326 + ValuesFrom holds references to resources containing Helm values for this HelmRelease, 8327 + and information about how they should be merged. 8328 + items: 8329 + description: |- 8330 + ValuesReference contains a reference to a resource containing Helm values, 8331 + and optionally the key they can be found at. 8332 + properties: 8333 + kind: 8334 + description: Kind of the values referent, valid values are ('Secret', 8335 + 'ConfigMap'). 8336 + enum: 8337 + - Secret 8338 + - ConfigMap 8339 + type: string 8340 + name: 8341 + description: |- 8342 + Name of the values referent. Should reside in the same namespace as the 8343 + referring resource. 8344 + maxLength: 253 8345 + minLength: 1 8346 + type: string 8347 + optional: 8348 + description: |- 8349 + Optional marks this ValuesReference as optional. When set, a not found error 8350 + for the values reference is ignored, but any ValuesKey, TargetPath or 8351 + transient error will still result in a reconciliation failure. 8352 + type: boolean 8353 + targetPath: 8354 + description: |- 8355 + TargetPath is the YAML dot notation path the value should be merged at. When 8356 + set, the ValuesKey is expected to be a single flat value. Defaults to 'None', 8357 + which results in the values getting merged at the root. 8358 + maxLength: 250 8359 + pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$ 8360 + type: string 8361 + valuesKey: 8362 + description: |- 8363 + ValuesKey is the data key where the values.yaml or a specific value can be 8364 + found at. Defaults to 'values.yaml'. 8365 + maxLength: 253 8366 + pattern: ^[\-._a-zA-Z0-9]+$ 8367 + type: string 8368 + required: 8369 + - kind 8370 + - name 8371 + type: object 8372 + type: array 8373 + required: 8374 + - interval 8375 + type: object 8376 + x-kubernetes-validations: 8377 + - message: either chart or chartRef must be set 8378 + rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart) 8379 + && has(self.chartRef)) 8380 + status: 8381 + default: 8382 + observedGeneration: -1 8383 + description: HelmReleaseStatus defines the observed state of a HelmRelease. 8384 + properties: 8385 + conditions: 8386 + description: Conditions holds the conditions for the HelmRelease. 8387 + items: 8388 + description: Condition contains details for one aspect of the current 8389 + state of this API Resource. 8390 + properties: 8391 + lastTransitionTime: 8392 + description: |- 8393 + lastTransitionTime is the last time the condition transitioned from one status to another. 8394 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 8395 + format: date-time 8396 + type: string 8397 + message: 8398 + description: |- 8399 + message is a human readable message indicating details about the transition. 8400 + This may be an empty string. 8401 + maxLength: 32768 8402 + type: string 8403 + observedGeneration: 8404 + description: |- 8405 + observedGeneration represents the .metadata.generation that the condition was set based upon. 8406 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 8407 + with respect to the current state of the instance. 8408 + format: int64 8409 + minimum: 0 8410 + type: integer 8411 + reason: 8412 + description: |- 8413 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 8414 + Producers of specific condition types may define expected values and meanings for this field, 8415 + and whether the values are considered a guaranteed API. 8416 + The value should be a CamelCase string. 8417 + This field may not be empty. 8418 + maxLength: 1024 8419 + minLength: 1 8420 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 8421 + type: string 8422 + status: 8423 + description: status of the condition, one of True, False, Unknown. 8424 + enum: 8425 + - "True" 8426 + - "False" 8427 + - Unknown 8428 + type: string 8429 + type: 8430 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 8431 + maxLength: 316 8432 + 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])$ 8433 + type: string 8434 + required: 8435 + - lastTransitionTime 8436 + - message 8437 + - reason 8438 + - status 8439 + - type 8440 + type: object 8441 + type: array 8442 + failures: 8443 + description: |- 8444 + Failures is the reconciliation failure count against the latest desired 8445 + state. It is reset after a successful reconciliation. 8446 + format: int64 8447 + type: integer 8448 + helmChart: 8449 + description: |- 8450 + HelmChart is the namespaced name of the HelmChart resource created by 8451 + the controller for the HelmRelease. 8452 + type: string 8453 + history: 8454 + description: |- 8455 + History holds the history of Helm releases performed for this HelmRelease 8456 + up to the last successfully completed release. 8457 + items: 8458 + description: |- 8459 + Snapshot captures a point-in-time copy of the status information for a Helm release, 8460 + as managed by the controller. 8461 + properties: 8462 + apiVersion: 8463 + description: |- 8464 + APIVersion is the API version of the Snapshot. 8465 + Provisional: when the calculation method of the Digest field is changed, 8466 + this field will be used to distinguish between the old and new methods. 8467 + type: string 8468 + appVersion: 8469 + description: AppVersion is the chart app version of the release 8470 + object in storage. 8471 + type: string 8472 + chartName: 8473 + description: ChartName is the chart name of the release object 8474 + in storage. 8475 + type: string 8476 + chartVersion: 8477 + description: |- 8478 + ChartVersion is the chart version of the release object in 8479 + storage. 8480 + type: string 8481 + configDigest: 8482 + description: |- 8483 + ConfigDigest is the checksum of the config (better known as 8484 + "values") of the release object in storage. 8485 + It has the format of `<algo>:<checksum>`. 8486 + type: string 8487 + deleted: 8488 + description: Deleted is when the release was deleted. 8489 + format: date-time 8490 + type: string 8491 + digest: 8492 + description: |- 8493 + Digest is the checksum of the release object in storage. 8494 + It has the format of `<algo>:<checksum>`. 8495 + type: string 8496 + firstDeployed: 8497 + description: FirstDeployed is when the release was first deployed. 8498 + format: date-time 8499 + type: string 8500 + lastDeployed: 8501 + description: LastDeployed is when the release was last deployed. 8502 + format: date-time 8503 + type: string 8504 + name: 8505 + description: Name is the name of the release. 8506 + type: string 8507 + namespace: 8508 + description: Namespace is the namespace the release is deployed 8509 + to. 8510 + type: string 8511 + ociDigest: 8512 + description: OCIDigest is the digest of the OCI artifact associated 8513 + with the release. 8514 + type: string 8515 + status: 8516 + description: Status is the current state of the release. 8517 + type: string 8518 + testHooks: 8519 + additionalProperties: 8520 + description: |- 8521 + TestHookStatus holds the status information for a test hook as observed 8522 + to be run by the controller. 8523 + properties: 8524 + lastCompleted: 8525 + description: LastCompleted is the time the test hook last 8526 + completed. 8527 + format: date-time 8528 + type: string 8529 + lastStarted: 8530 + description: LastStarted is the time the test hook was 8531 + last started. 8532 + format: date-time 8533 + type: string 8534 + phase: 8535 + description: Phase the test hook was observed to be in. 8536 + type: string 8537 + type: object 8538 + description: |- 8539 + TestHooks is the list of test hooks for the release as observed to be 8540 + run by the controller. 8541 + type: object 8542 + version: 8543 + description: Version is the version of the release object in 8544 + storage. 8545 + type: integer 8546 + required: 8547 + - chartName 8548 + - chartVersion 8549 + - configDigest 8550 + - digest 8551 + - firstDeployed 8552 + - lastDeployed 8553 + - name 8554 + - namespace 8555 + - status 8556 + - version 8557 + type: object 8558 + type: array 8559 + installFailures: 8560 + description: |- 8561 + InstallFailures is the install failure count against the latest desired 8562 + state. It is reset after a successful reconciliation. 8563 + format: int64 8564 + type: integer 8565 + lastAppliedRevision: 8566 + description: |- 8567 + LastAppliedRevision is the revision of the last successfully applied 8568 + source. 8569 + 8570 + Deprecated: the revision can now be found in the History. 8571 + type: string 8572 + lastAttemptedConfigDigest: 8573 + description: |- 8574 + LastAttemptedConfigDigest is the digest for the config (better known as 8575 + "values") of the last reconciliation attempt. 8576 + type: string 8577 + lastAttemptedGeneration: 8578 + description: |- 8579 + LastAttemptedGeneration is the last generation the controller attempted 8580 + to reconcile. 8581 + format: int64 8582 + type: integer 8583 + lastAttemptedReleaseAction: 8584 + description: |- 8585 + LastAttemptedReleaseAction is the last release action performed for this 8586 + HelmRelease. It is used to determine the active remediation strategy. 8587 + enum: 8588 + - install 8589 + - upgrade 8590 + type: string 8591 + lastAttemptedRevision: 8592 + description: |- 8593 + LastAttemptedRevision is the Source revision of the last reconciliation 8594 + attempt. For OCIRepository sources, the 12 first characters of the digest are 8595 + appended to the chart version e.g. "1.2.3+1234567890ab". 8596 + type: string 8597 + lastAttemptedRevisionDigest: 8598 + description: |- 8599 + LastAttemptedRevisionDigest is the digest of the last reconciliation attempt. 8600 + This is only set for OCIRepository sources. 8601 + type: string 8602 + lastAttemptedValuesChecksum: 8603 + description: |- 8604 + LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last 8605 + reconciliation attempt. 8606 + 8607 + Deprecated: Use LastAttemptedConfigDigest instead. 8608 + type: string 8609 + lastHandledForceAt: 8610 + description: |- 8611 + LastHandledForceAt holds the value of the most recent force request 8612 + value, so a change of the annotation value can be detected. 8613 + type: string 8614 + lastHandledReconcileAt: 8615 + description: |- 8616 + LastHandledReconcileAt holds the value of the most recent 8617 + reconcile request value, so a change of the annotation value 8618 + can be detected. 8619 + type: string 8620 + lastHandledResetAt: 8621 + description: |- 8622 + LastHandledResetAt holds the value of the most recent reset request 8623 + value, so a change of the annotation value can be detected. 8624 + type: string 8625 + lastReleaseRevision: 8626 + description: |- 8627 + LastReleaseRevision is the revision of the last successful Helm release. 8628 + 8629 + Deprecated: Use History instead. 8630 + type: integer 8631 + observedGeneration: 8632 + description: ObservedGeneration is the last observed generation. 8633 + format: int64 8634 + type: integer 8635 + observedPostRenderersDigest: 8636 + description: |- 8637 + ObservedPostRenderersDigest is the digest for the post-renderers of 8638 + the last successful reconciliation attempt. 8639 + type: string 8640 + storageNamespace: 8641 + description: |- 8642 + StorageNamespace is the namespace of the Helm release storage for the 8643 + current release. 8644 + maxLength: 63 8645 + minLength: 1 8646 + type: string 8647 + upgradeFailures: 8648 + description: |- 8649 + UpgradeFailures is the upgrade failure count against the latest desired 8650 + state. It is reset after a successful reconciliation. 8651 + format: int64 8652 + type: integer 8653 + type: object 8654 + type: object 8655 + served: true 8656 + storage: false 8657 + subresources: 8658 + status: {} 8659 + --- 8660 + apiVersion: v1 8661 + kind: ServiceAccount 8662 + metadata: 8663 + labels: 8664 + app.kubernetes.io/component: helm-controller 8665 + app.kubernetes.io/instance: flux-system 8666 + app.kubernetes.io/part-of: flux 8667 + app.kubernetes.io/version: v2.7.3 8668 + name: helm-controller 8669 + namespace: flux-system 8670 + --- 8671 + apiVersion: apps/v1 8672 + kind: Deployment 8673 + metadata: 8674 + labels: 8675 + app.kubernetes.io/component: helm-controller 8676 + app.kubernetes.io/instance: flux-system 8677 + app.kubernetes.io/part-of: flux 8678 + app.kubernetes.io/version: v2.7.3 8679 + control-plane: controller 8680 + name: helm-controller 8681 + namespace: flux-system 8682 + spec: 8683 + replicas: 1 8684 + selector: 8685 + matchLabels: 8686 + app: helm-controller 8687 + template: 8688 + metadata: 8689 + annotations: 8690 + prometheus.io/port: "8080" 8691 + prometheus.io/scrape: "true" 8692 + labels: 8693 + app: helm-controller 8694 + app.kubernetes.io/component: helm-controller 8695 + app.kubernetes.io/instance: flux-system 8696 + app.kubernetes.io/part-of: flux 8697 + app.kubernetes.io/version: v2.7.3 8698 + spec: 8699 + containers: 8700 + - args: 8701 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 8702 + - --watch-all-namespaces=true 8703 + - --log-level=info 8704 + - --log-encoding=json 8705 + - --enable-leader-election 8706 + env: 8707 + - name: RUNTIME_NAMESPACE 8708 + valueFrom: 8709 + fieldRef: 8710 + fieldPath: metadata.namespace 8711 + - name: GOMEMLIMIT 8712 + valueFrom: 8713 + resourceFieldRef: 8714 + containerName: manager 8715 + resource: limits.memory 8716 + image: ghcr.io/fluxcd/helm-controller:v1.4.3 8717 + imagePullPolicy: IfNotPresent 8718 + livenessProbe: 8719 + httpGet: 8720 + path: /healthz 8721 + port: healthz 8722 + name: manager 8723 + ports: 8724 + - containerPort: 8080 8725 + name: http-prom 8726 + protocol: TCP 8727 + - containerPort: 9440 8728 + name: healthz 8729 + protocol: TCP 8730 + readinessProbe: 8731 + httpGet: 8732 + path: /readyz 8733 + port: healthz 8734 + resources: 8735 + limits: 8736 + cpu: 1000m 8737 + memory: 1Gi 8738 + requests: 8739 + cpu: 100m 8740 + memory: 64Mi 8741 + securityContext: 8742 + allowPrivilegeEscalation: false 8743 + capabilities: 8744 + drop: 8745 + - ALL 8746 + readOnlyRootFilesystem: true 8747 + runAsNonRoot: true 8748 + seccompProfile: 8749 + type: RuntimeDefault 8750 + volumeMounts: 8751 + - mountPath: /tmp 8752 + name: temp 8753 + nodeSelector: 8754 + kubernetes.io/os: linux 8755 + priorityClassName: system-cluster-critical 8756 + securityContext: 8757 + fsGroup: 1337 8758 + serviceAccountName: helm-controller 8759 + terminationGracePeriodSeconds: 600 8760 + volumes: 8761 + - emptyDir: {} 8762 + name: temp 8763 + --- 8764 + apiVersion: apiextensions.k8s.io/v1 8765 + kind: CustomResourceDefinition 8766 + metadata: 8767 + annotations: 8768 + controller-gen.kubebuilder.io/version: v0.19.0 8769 + labels: 8770 + app.kubernetes.io/component: notification-controller 8771 + app.kubernetes.io/instance: flux-system 8772 + app.kubernetes.io/part-of: flux 8773 + app.kubernetes.io/version: v2.7.3 8774 + name: alerts.notification.toolkit.fluxcd.io 8775 + spec: 8776 + group: notification.toolkit.fluxcd.io 8777 + names: 8778 + kind: Alert 8779 + listKind: AlertList 8780 + plural: alerts 8781 + singular: alert 8782 + scope: Namespaced 8783 + versions: 8784 + - additionalPrinterColumns: 8785 + - jsonPath: .metadata.creationTimestamp 8786 + name: Age 8787 + type: date 8788 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 8789 + name: Ready 8790 + type: string 8791 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 8792 + name: Status 8793 + type: string 8794 + deprecated: true 8795 + deprecationWarning: v1beta2 Alert is deprecated, upgrade to v1beta3 8796 + name: v1beta2 8797 + schema: 8798 + openAPIV3Schema: 8799 + description: Alert is the Schema for the alerts API 8800 + properties: 8801 + apiVersion: 8802 + description: |- 8803 + APIVersion defines the versioned schema of this representation of an object. 8804 + Servers should convert recognized schemas to the latest internal value, and 8805 + may reject unrecognized values. 8806 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 8807 + type: string 8808 + kind: 8809 + description: |- 8810 + Kind is a string value representing the REST resource this object represents. 8811 + Servers may infer this from the endpoint the client submits requests to. 8812 + Cannot be updated. 8813 + In CamelCase. 8814 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 8815 + type: string 8816 + metadata: 8817 + type: object 8818 + spec: 8819 + description: AlertSpec defines an alerting rule for events involving a 8820 + list of objects. 8821 + properties: 8822 + eventMetadata: 8823 + additionalProperties: 8824 + type: string 8825 + description: |- 8826 + EventMetadata is an optional field for adding metadata to events dispatched by the 8827 + controller. This can be used for enhancing the context of the event. If a field 8828 + would override one already present on the original event as generated by the emitter, 8829 + then the override doesn't happen, i.e. the original value is preserved, and an info 8830 + log is printed. 8831 + type: object 8832 + eventSeverity: 8833 + default: info 8834 + description: |- 8835 + EventSeverity specifies how to filter events based on severity. 8836 + If set to 'info' no events will be filtered. 8837 + enum: 8838 + - info 8839 + - error 8840 + type: string 8841 + eventSources: 8842 + description: |- 8843 + EventSources specifies how to filter events based 8844 + on the involved object kind, name and namespace. 8845 + items: 8846 + description: |- 8847 + CrossNamespaceObjectReference contains enough information to let you locate the 8848 + typed referenced object at cluster level 8849 + properties: 8850 + apiVersion: 8851 + description: API version of the referent 8852 + type: string 8853 + kind: 8854 + description: Kind of the referent 8855 + enum: 8856 + - Bucket 8857 + - GitRepository 8858 + - Kustomization 8859 + - HelmRelease 8860 + - HelmChart 8861 + - HelmRepository 8862 + - ImageRepository 8863 + - ImagePolicy 8864 + - ImageUpdateAutomation 8865 + - OCIRepository 8866 + type: string 8867 + matchLabels: 8868 + additionalProperties: 8869 + type: string 8870 + description: |- 8871 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 8872 + map is equivalent to an element of matchExpressions, whose key field is "key", the 8873 + operator is "In", and the values array contains only "value". The requirements are ANDed. 8874 + MatchLabels requires the name to be set to `*`. 8875 + type: object 8876 + name: 8877 + description: |- 8878 + Name of the referent 8879 + If multiple resources are targeted `*` may be set. 8880 + maxLength: 253 8881 + minLength: 1 8882 + type: string 8883 + namespace: 8884 + description: Namespace of the referent 8885 + maxLength: 253 8886 + minLength: 1 8887 + type: string 8888 + required: 8889 + - kind 8890 + - name 8891 + type: object 8892 + type: array 8893 + exclusionList: 8894 + description: |- 8895 + ExclusionList specifies a list of Golang regular expressions 8896 + to be used for excluding messages. 8897 + items: 8898 + type: string 8899 + type: array 8900 + inclusionList: 8901 + description: |- 8902 + InclusionList specifies a list of Golang regular expressions 8903 + to be used for including messages. 8904 + items: 8905 + type: string 8906 + type: array 8907 + providerRef: 8908 + description: ProviderRef specifies which Provider this Alert should 8909 + use. 8910 + properties: 8911 + name: 8912 + description: Name of the referent. 8913 + type: string 8914 + required: 8915 + - name 8916 + type: object 8917 + summary: 8918 + description: Summary holds a short description of the impact and affected 8919 + cluster. 8920 + maxLength: 255 8921 + type: string 8922 + suspend: 8923 + description: |- 8924 + Suspend tells the controller to suspend subsequent 8925 + events handling for this Alert. 8926 + type: boolean 8927 + required: 8928 + - eventSources 8929 + - providerRef 8930 + type: object 8931 + status: 8932 + default: 8933 + observedGeneration: -1 8934 + description: AlertStatus defines the observed state of the Alert. 8935 + properties: 8936 + conditions: 8937 + description: Conditions holds the conditions for the Alert. 8938 + items: 8939 + description: Condition contains details for one aspect of the current 8940 + state of this API Resource. 8941 + properties: 8942 + lastTransitionTime: 8943 + description: |- 8944 + lastTransitionTime is the last time the condition transitioned from one status to another. 8945 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 8946 + format: date-time 8947 + type: string 8948 + message: 8949 + description: |- 8950 + message is a human readable message indicating details about the transition. 8951 + This may be an empty string. 8952 + maxLength: 32768 8953 + type: string 8954 + observedGeneration: 8955 + description: |- 8956 + observedGeneration represents the .metadata.generation that the condition was set based upon. 8957 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 8958 + with respect to the current state of the instance. 8959 + format: int64 8960 + minimum: 0 8961 + type: integer 8962 + reason: 8963 + description: |- 8964 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 8965 + Producers of specific condition types may define expected values and meanings for this field, 8966 + and whether the values are considered a guaranteed API. 8967 + The value should be a CamelCase string. 8968 + This field may not be empty. 8969 + maxLength: 1024 8970 + minLength: 1 8971 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 8972 + type: string 8973 + status: 8974 + description: status of the condition, one of True, False, Unknown. 8975 + enum: 8976 + - "True" 8977 + - "False" 8978 + - Unknown 8979 + type: string 8980 + type: 8981 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 8982 + maxLength: 316 8983 + 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])$ 8984 + type: string 8985 + required: 8986 + - lastTransitionTime 8987 + - message 8988 + - reason 8989 + - status 8990 + - type 8991 + type: object 8992 + type: array 8993 + lastHandledReconcileAt: 8994 + description: |- 8995 + LastHandledReconcileAt holds the value of the most recent 8996 + reconcile request value, so a change of the annotation value 8997 + can be detected. 8998 + type: string 8999 + observedGeneration: 9000 + description: ObservedGeneration is the last observed generation. 9001 + format: int64 9002 + type: integer 9003 + type: object 9004 + type: object 9005 + served: true 9006 + storage: false 9007 + subresources: 9008 + status: {} 9009 + - additionalPrinterColumns: 9010 + - jsonPath: .metadata.creationTimestamp 9011 + name: Age 9012 + type: date 9013 + name: v1beta3 9014 + schema: 9015 + openAPIV3Schema: 9016 + description: Alert is the Schema for the alerts API 9017 + properties: 9018 + apiVersion: 9019 + description: |- 9020 + APIVersion defines the versioned schema of this representation of an object. 9021 + Servers should convert recognized schemas to the latest internal value, and 9022 + may reject unrecognized values. 9023 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9024 + type: string 9025 + kind: 9026 + description: |- 9027 + Kind is a string value representing the REST resource this object represents. 9028 + Servers may infer this from the endpoint the client submits requests to. 9029 + Cannot be updated. 9030 + In CamelCase. 9031 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9032 + type: string 9033 + metadata: 9034 + type: object 9035 + spec: 9036 + description: AlertSpec defines an alerting rule for events involving a 9037 + list of objects. 9038 + properties: 9039 + eventMetadata: 9040 + additionalProperties: 9041 + type: string 9042 + description: |- 9043 + EventMetadata is an optional field for adding metadata to events dispatched by the 9044 + controller. This can be used for enhancing the context of the event. If a field 9045 + would override one already present on the original event as generated by the emitter, 9046 + then the override doesn't happen, i.e. the original value is preserved, and an info 9047 + log is printed. 9048 + type: object 9049 + eventSeverity: 9050 + default: info 9051 + description: |- 9052 + EventSeverity specifies how to filter events based on severity. 9053 + If set to 'info' no events will be filtered. 9054 + enum: 9055 + - info 9056 + - error 9057 + type: string 9058 + eventSources: 9059 + description: |- 9060 + EventSources specifies how to filter events based 9061 + on the involved object kind, name and namespace. 9062 + items: 9063 + description: |- 9064 + CrossNamespaceObjectReference contains enough information to let you locate the 9065 + typed referenced object at cluster level 9066 + properties: 9067 + apiVersion: 9068 + description: API version of the referent 9069 + type: string 9070 + kind: 9071 + description: Kind of the referent 9072 + enum: 9073 + - Bucket 9074 + - GitRepository 9075 + - Kustomization 9076 + - HelmRelease 9077 + - HelmChart 9078 + - HelmRepository 9079 + - ImageRepository 9080 + - ImagePolicy 9081 + - ImageUpdateAutomation 9082 + - OCIRepository 9083 + type: string 9084 + matchLabels: 9085 + additionalProperties: 9086 + type: string 9087 + description: |- 9088 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 9089 + map is equivalent to an element of matchExpressions, whose key field is "key", the 9090 + operator is "In", and the values array contains only "value". The requirements are ANDed. 9091 + MatchLabels requires the name to be set to `*`. 9092 + type: object 9093 + name: 9094 + description: |- 9095 + Name of the referent 9096 + If multiple resources are targeted `*` may be set. 9097 + maxLength: 253 9098 + minLength: 1 9099 + type: string 9100 + namespace: 9101 + description: Namespace of the referent 9102 + maxLength: 253 9103 + minLength: 1 9104 + type: string 9105 + required: 9106 + - kind 9107 + - name 9108 + type: object 9109 + type: array 9110 + exclusionList: 9111 + description: |- 9112 + ExclusionList specifies a list of Golang regular expressions 9113 + to be used for excluding messages. 9114 + items: 9115 + type: string 9116 + type: array 9117 + inclusionList: 9118 + description: |- 9119 + InclusionList specifies a list of Golang regular expressions 9120 + to be used for including messages. 9121 + items: 9122 + type: string 9123 + type: array 9124 + providerRef: 9125 + description: ProviderRef specifies which Provider this Alert should 9126 + use. 9127 + properties: 9128 + name: 9129 + description: Name of the referent. 9130 + type: string 9131 + required: 9132 + - name 9133 + type: object 9134 + summary: 9135 + description: |- 9136 + Summary holds a short description of the impact and affected cluster. 9137 + Deprecated: Use EventMetadata instead. 9138 + maxLength: 255 9139 + type: string 9140 + suspend: 9141 + description: |- 9142 + Suspend tells the controller to suspend subsequent 9143 + events handling for this Alert. 9144 + type: boolean 9145 + required: 9146 + - eventSources 9147 + - providerRef 9148 + type: object 9149 + type: object 9150 + served: true 9151 + storage: true 9152 + subresources: {} 9153 + --- 9154 + apiVersion: apiextensions.k8s.io/v1 9155 + kind: CustomResourceDefinition 9156 + metadata: 9157 + annotations: 9158 + controller-gen.kubebuilder.io/version: v0.19.0 9159 + labels: 9160 + app.kubernetes.io/component: notification-controller 9161 + app.kubernetes.io/instance: flux-system 9162 + app.kubernetes.io/part-of: flux 9163 + app.kubernetes.io/version: v2.7.3 9164 + name: providers.notification.toolkit.fluxcd.io 9165 + spec: 9166 + group: notification.toolkit.fluxcd.io 9167 + names: 9168 + kind: Provider 9169 + listKind: ProviderList 9170 + plural: providers 9171 + singular: provider 9172 + scope: Namespaced 9173 + versions: 9174 + - additionalPrinterColumns: 9175 + - jsonPath: .metadata.creationTimestamp 9176 + name: Age 9177 + type: date 9178 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 9179 + name: Ready 9180 + type: string 9181 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 9182 + name: Status 9183 + type: string 9184 + deprecated: true 9185 + deprecationWarning: v1beta2 Provider is deprecated, upgrade to v1beta3 9186 + name: v1beta2 9187 + schema: 9188 + openAPIV3Schema: 9189 + description: Provider is the Schema for the providers API. 9190 + properties: 9191 + apiVersion: 9192 + description: |- 9193 + APIVersion defines the versioned schema of this representation of an object. 9194 + Servers should convert recognized schemas to the latest internal value, and 9195 + may reject unrecognized values. 9196 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9197 + type: string 9198 + kind: 9199 + description: |- 9200 + Kind is a string value representing the REST resource this object represents. 9201 + Servers may infer this from the endpoint the client submits requests to. 9202 + Cannot be updated. 9203 + In CamelCase. 9204 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9205 + type: string 9206 + metadata: 9207 + type: object 9208 + spec: 9209 + description: ProviderSpec defines the desired state of the Provider. 9210 + properties: 9211 + address: 9212 + description: |- 9213 + Address specifies the endpoint, in a generic sense, to where alerts are sent. 9214 + What kind of endpoint depends on the specific Provider type being used. 9215 + For the generic Provider, for example, this is an HTTP/S address. 9216 + For other Provider types this could be a project ID or a namespace. 9217 + maxLength: 2048 9218 + type: string 9219 + certSecretRef: 9220 + description: |- 9221 + CertSecretRef specifies the Secret containing 9222 + a PEM-encoded CA certificate (in the `ca.crt` key). 9223 + 9224 + Note: Support for the `caFile` key has 9225 + been deprecated. 9226 + properties: 9227 + name: 9228 + description: Name of the referent. 9229 + type: string 9230 + required: 9231 + - name 9232 + type: object 9233 + channel: 9234 + description: Channel specifies the destination channel where events 9235 + should be posted. 9236 + maxLength: 2048 9237 + type: string 9238 + interval: 9239 + description: Interval at which to reconcile the Provider with its 9240 + Secret references. 9241 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9242 + type: string 9243 + proxy: 9244 + description: Proxy the HTTP/S address of the proxy server. 9245 + maxLength: 2048 9246 + pattern: ^(http|https)://.*$ 9247 + type: string 9248 + secretRef: 9249 + description: |- 9250 + SecretRef specifies the Secret containing the authentication 9251 + credentials for this Provider. 9252 + properties: 9253 + name: 9254 + description: Name of the referent. 9255 + type: string 9256 + required: 9257 + - name 9258 + type: object 9259 + suspend: 9260 + description: |- 9261 + Suspend tells the controller to suspend subsequent 9262 + events handling for this Provider. 9263 + type: boolean 9264 + timeout: 9265 + description: Timeout for sending alerts to the Provider. 9266 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 9267 + type: string 9268 + type: 9269 + description: Type specifies which Provider implementation to use. 9270 + enum: 9271 + - slack 9272 + - discord 9273 + - msteams 9274 + - rocket 9275 + - generic 9276 + - generic-hmac 9277 + - github 9278 + - gitlab 9279 + - gitea 9280 + - bitbucketserver 9281 + - bitbucket 9282 + - azuredevops 9283 + - googlechat 9284 + - googlepubsub 9285 + - webex 9286 + - sentry 9287 + - azureeventhub 9288 + - telegram 9289 + - lark 9290 + - matrix 9291 + - opsgenie 9292 + - alertmanager 9293 + - grafana 9294 + - githubdispatch 9295 + - pagerduty 9296 + - datadog 9297 + type: string 9298 + username: 9299 + description: Username specifies the name under which events are posted. 9300 + maxLength: 2048 9301 + type: string 9302 + required: 9303 + - type 9304 + type: object 9305 + status: 9306 + default: 9307 + observedGeneration: -1 9308 + description: ProviderStatus defines the observed state of the Provider. 9309 + properties: 9310 + conditions: 9311 + description: Conditions holds the conditions for the Provider. 9312 + items: 9313 + description: Condition contains details for one aspect of the current 9314 + state of this API Resource. 9315 + properties: 9316 + lastTransitionTime: 9317 + description: |- 9318 + lastTransitionTime is the last time the condition transitioned from one status to another. 9319 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 9320 + format: date-time 9321 + type: string 9322 + message: 9323 + description: |- 9324 + message is a human readable message indicating details about the transition. 9325 + This may be an empty string. 9326 + maxLength: 32768 9327 + type: string 9328 + observedGeneration: 9329 + description: |- 9330 + observedGeneration represents the .metadata.generation that the condition was set based upon. 9331 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 9332 + with respect to the current state of the instance. 9333 + format: int64 9334 + minimum: 0 9335 + type: integer 9336 + reason: 9337 + description: |- 9338 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 9339 + Producers of specific condition types may define expected values and meanings for this field, 9340 + and whether the values are considered a guaranteed API. 9341 + The value should be a CamelCase string. 9342 + This field may not be empty. 9343 + maxLength: 1024 9344 + minLength: 1 9345 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 9346 + type: string 9347 + status: 9348 + description: status of the condition, one of True, False, Unknown. 9349 + enum: 9350 + - "True" 9351 + - "False" 9352 + - Unknown 9353 + type: string 9354 + type: 9355 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 9356 + maxLength: 316 9357 + 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])$ 9358 + type: string 9359 + required: 9360 + - lastTransitionTime 9361 + - message 9362 + - reason 9363 + - status 9364 + - type 9365 + type: object 9366 + type: array 9367 + lastHandledReconcileAt: 9368 + description: |- 9369 + LastHandledReconcileAt holds the value of the most recent 9370 + reconcile request value, so a change of the annotation value 9371 + can be detected. 9372 + type: string 9373 + observedGeneration: 9374 + description: ObservedGeneration is the last reconciled generation. 9375 + format: int64 9376 + type: integer 9377 + type: object 9378 + type: object 9379 + served: true 9380 + storage: false 9381 + subresources: 9382 + status: {} 9383 + - additionalPrinterColumns: 9384 + - jsonPath: .metadata.creationTimestamp 9385 + name: Age 9386 + type: date 9387 + name: v1beta3 9388 + schema: 9389 + openAPIV3Schema: 9390 + description: Provider is the Schema for the providers API 9391 + properties: 9392 + apiVersion: 9393 + description: |- 9394 + APIVersion defines the versioned schema of this representation of an object. 9395 + Servers should convert recognized schemas to the latest internal value, and 9396 + may reject unrecognized values. 9397 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9398 + type: string 9399 + kind: 9400 + description: |- 9401 + Kind is a string value representing the REST resource this object represents. 9402 + Servers may infer this from the endpoint the client submits requests to. 9403 + Cannot be updated. 9404 + In CamelCase. 9405 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9406 + type: string 9407 + metadata: 9408 + type: object 9409 + spec: 9410 + description: ProviderSpec defines the desired state of the Provider. 9411 + properties: 9412 + address: 9413 + description: |- 9414 + Address specifies the endpoint, in a generic sense, to where alerts are sent. 9415 + What kind of endpoint depends on the specific Provider type being used. 9416 + For the generic Provider, for example, this is an HTTP/S address. 9417 + For other Provider types this could be a project ID or a namespace. 9418 + maxLength: 2048 9419 + type: string 9420 + certSecretRef: 9421 + description: |- 9422 + CertSecretRef specifies the Secret containing TLS certificates 9423 + for secure communication. 9424 + 9425 + Supported configurations: 9426 + - CA-only: Server authentication (provide ca.crt only) 9427 + - mTLS: Mutual authentication (provide ca.crt + tls.crt + tls.key) 9428 + - Client-only: Client authentication with system CA (provide tls.crt + tls.key only) 9429 + 9430 + Legacy keys "caFile", "certFile", "keyFile" are supported but deprecated. Use "ca.crt", "tls.crt", "tls.key" instead. 9431 + properties: 9432 + name: 9433 + description: Name of the referent. 9434 + type: string 9435 + required: 9436 + - name 9437 + type: object 9438 + channel: 9439 + description: Channel specifies the destination channel where events 9440 + should be posted. 9441 + maxLength: 2048 9442 + type: string 9443 + commitStatusExpr: 9444 + description: |- 9445 + CommitStatusExpr is a CEL expression that evaluates to a string value 9446 + that can be used to generate a custom commit status message for use 9447 + with eligible Provider types (github, gitlab, gitea, bitbucketserver, 9448 + bitbucket, azuredevops). Supported variables are: event, provider, 9449 + and alert. 9450 + type: string 9451 + interval: 9452 + description: |- 9453 + Interval at which to reconcile the Provider with its Secret references. 9454 + Deprecated and not used in v1beta3. 9455 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9456 + type: string 9457 + proxy: 9458 + description: |- 9459 + Proxy the HTTP/S address of the proxy server. 9460 + Deprecated: Use ProxySecretRef instead. Will be removed in v1. 9461 + maxLength: 2048 9462 + pattern: ^(http|https)://.*$ 9463 + type: string 9464 + proxySecretRef: 9465 + description: |- 9466 + ProxySecretRef specifies the Secret containing the proxy configuration 9467 + for this Provider. The Secret should contain an 'address' key with the 9468 + HTTP/S address of the proxy server. Optional 'username' and 'password' 9469 + keys can be provided for proxy authentication. 9470 + properties: 9471 + name: 9472 + description: Name of the referent. 9473 + type: string 9474 + required: 9475 + - name 9476 + type: object 9477 + secretRef: 9478 + description: |- 9479 + SecretRef specifies the Secret containing the authentication 9480 + credentials for this Provider. 9481 + properties: 9482 + name: 9483 + description: Name of the referent. 9484 + type: string 9485 + required: 9486 + - name 9487 + type: object 9488 + serviceAccountName: 9489 + description: |- 9490 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to 9491 + authenticate with cloud provider services through workload identity. 9492 + This enables multi-tenant authentication without storing static credentials. 9493 + 9494 + Supported provider types: azureeventhub, azuredevops, googlepubsub 9495 + 9496 + When specified, the controller will: 9497 + 1. Create an OIDC token for the specified ServiceAccount 9498 + 2. Exchange it for cloud provider credentials via STS 9499 + 3. Use the obtained credentials for API authentication 9500 + 9501 + When unspecified, controller-level authentication is used (single-tenant). 9502 + 9503 + An error is thrown if static credentials are also defined in SecretRef. 9504 + This field requires the ObjectLevelWorkloadIdentity feature gate to be enabled. 9505 + type: string 9506 + suspend: 9507 + description: |- 9508 + Suspend tells the controller to suspend subsequent 9509 + events handling for this Provider. 9510 + type: boolean 9511 + timeout: 9512 + description: Timeout for sending alerts to the Provider. 9513 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 9514 + type: string 9515 + type: 9516 + description: Type specifies which Provider implementation to use. 9517 + enum: 9518 + - slack 9519 + - discord 9520 + - msteams 9521 + - rocket 9522 + - generic 9523 + - generic-hmac 9524 + - github 9525 + - gitlab 9526 + - gitea 9527 + - bitbucketserver 9528 + - bitbucket 9529 + - azuredevops 9530 + - googlechat 9531 + - googlepubsub 9532 + - webex 9533 + - sentry 9534 + - azureeventhub 9535 + - telegram 9536 + - lark 9537 + - matrix 9538 + - opsgenie 9539 + - alertmanager 9540 + - grafana 9541 + - githubdispatch 9542 + - pagerduty 9543 + - datadog 9544 + - nats 9545 + - zulip 9546 + - otel 9547 + type: string 9548 + username: 9549 + description: Username specifies the name under which events are posted. 9550 + maxLength: 2048 9551 + type: string 9552 + required: 9553 + - type 9554 + type: object 9555 + x-kubernetes-validations: 9556 + - message: spec.commitStatusExpr is only supported for the 'github', 'gitlab', 9557 + 'gitea', 'bitbucketserver', 'bitbucket', 'azuredevops' provider types 9558 + rule: self.type == 'github' || self.type == 'gitlab' || self.type == 9559 + 'gitea' || self.type == 'bitbucketserver' || self.type == 'bitbucket' 9560 + || self.type == 'azuredevops' || !has(self.commitStatusExpr) 9561 + type: object 9562 + served: true 9563 + storage: true 9564 + subresources: {} 9565 + --- 9566 + apiVersion: apiextensions.k8s.io/v1 9567 + kind: CustomResourceDefinition 9568 + metadata: 9569 + annotations: 9570 + controller-gen.kubebuilder.io/version: v0.19.0 9571 + labels: 9572 + app.kubernetes.io/component: notification-controller 9573 + app.kubernetes.io/instance: flux-system 9574 + app.kubernetes.io/part-of: flux 9575 + app.kubernetes.io/version: v2.7.3 9576 + name: receivers.notification.toolkit.fluxcd.io 9577 + spec: 9578 + group: notification.toolkit.fluxcd.io 9579 + names: 9580 + kind: Receiver 9581 + listKind: ReceiverList 9582 + plural: receivers 9583 + singular: receiver 9584 + scope: Namespaced 9585 + versions: 9586 + - additionalPrinterColumns: 9587 + - jsonPath: .metadata.creationTimestamp 9588 + name: Age 9589 + type: date 9590 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 9591 + name: Ready 9592 + type: string 9593 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 9594 + name: Status 9595 + type: string 9596 + name: v1 9597 + schema: 9598 + openAPIV3Schema: 9599 + description: Receiver is the Schema for the receivers API. 9600 + properties: 9601 + apiVersion: 9602 + description: |- 9603 + APIVersion defines the versioned schema of this representation of an object. 9604 + Servers should convert recognized schemas to the latest internal value, and 9605 + may reject unrecognized values. 9606 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9607 + type: string 9608 + kind: 9609 + description: |- 9610 + Kind is a string value representing the REST resource this object represents. 9611 + Servers may infer this from the endpoint the client submits requests to. 9612 + Cannot be updated. 9613 + In CamelCase. 9614 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9615 + type: string 9616 + metadata: 9617 + type: object 9618 + spec: 9619 + description: ReceiverSpec defines the desired state of the Receiver. 9620 + properties: 9621 + events: 9622 + description: |- 9623 + Events specifies the list of event types to handle, 9624 + e.g. 'push' for GitHub or 'Push Hook' for GitLab. 9625 + items: 9626 + type: string 9627 + type: array 9628 + interval: 9629 + default: 10m 9630 + description: Interval at which to reconcile the Receiver with its 9631 + Secret references. 9632 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9633 + type: string 9634 + resourceFilter: 9635 + description: |- 9636 + ResourceFilter is a CEL expression expected to return a boolean that is 9637 + evaluated for each resource referenced in the Resources field when a 9638 + webhook is received. If the expression returns false then the controller 9639 + will not request a reconciliation for the resource. 9640 + When the expression is specified the controller will parse it and mark 9641 + the object as terminally failed if the expression is invalid or does not 9642 + return a boolean. 9643 + type: string 9644 + resources: 9645 + description: A list of resources to be notified about changes. 9646 + items: 9647 + description: |- 9648 + CrossNamespaceObjectReference contains enough information to let you locate the 9649 + typed referenced object at cluster level 9650 + properties: 9651 + apiVersion: 9652 + description: API version of the referent 9653 + type: string 9654 + kind: 9655 + description: Kind of the referent 9656 + enum: 9657 + - Bucket 9658 + - GitRepository 9659 + - Kustomization 9660 + - HelmRelease 9661 + - HelmChart 9662 + - HelmRepository 9663 + - ImageRepository 9664 + - ImagePolicy 9665 + - ImageUpdateAutomation 9666 + - OCIRepository 9667 + type: string 9668 + matchLabels: 9669 + additionalProperties: 9670 + type: string 9671 + description: |- 9672 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 9673 + map is equivalent to an element of matchExpressions, whose key field is "key", the 9674 + operator is "In", and the values array contains only "value". The requirements are ANDed. 9675 + MatchLabels requires the name to be set to `*`. 9676 + type: object 9677 + name: 9678 + description: |- 9679 + Name of the referent 9680 + If multiple resources are targeted `*` may be set. 9681 + maxLength: 253 9682 + minLength: 1 9683 + type: string 9684 + namespace: 9685 + description: Namespace of the referent 9686 + maxLength: 253 9687 + minLength: 1 9688 + type: string 9689 + required: 9690 + - kind 9691 + - name 9692 + type: object 9693 + type: array 9694 + secretRef: 9695 + description: |- 9696 + SecretRef specifies the Secret containing the token used 9697 + to validate the payload authenticity. 9698 + properties: 9699 + name: 9700 + description: Name of the referent. 9701 + type: string 9702 + required: 9703 + - name 9704 + type: object 9705 + suspend: 9706 + description: |- 9707 + Suspend tells the controller to suspend subsequent 9708 + events handling for this receiver. 9709 + type: boolean 9710 + type: 9711 + description: |- 9712 + Type of webhook sender, used to determine 9713 + the validation procedure and payload deserialization. 9714 + enum: 9715 + - generic 9716 + - generic-hmac 9717 + - github 9718 + - gitlab 9719 + - bitbucket 9720 + - harbor 9721 + - dockerhub 9722 + - quay 9723 + - gcr 9724 + - nexus 9725 + - acr 9726 + - cdevents 9727 + type: string 9728 + required: 9729 + - resources 9730 + - secretRef 9731 + - type 9732 + type: object 9733 + status: 9734 + default: 9735 + observedGeneration: -1 9736 + description: ReceiverStatus defines the observed state of the Receiver. 9737 + properties: 9738 + conditions: 9739 + description: Conditions holds the conditions for the Receiver. 9740 + items: 9741 + description: Condition contains details for one aspect of the current 9742 + state of this API Resource. 9743 + properties: 9744 + lastTransitionTime: 9745 + description: |- 9746 + lastTransitionTime is the last time the condition transitioned from one status to another. 9747 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 9748 + format: date-time 9749 + type: string 9750 + message: 9751 + description: |- 9752 + message is a human readable message indicating details about the transition. 9753 + This may be an empty string. 9754 + maxLength: 32768 9755 + type: string 9756 + observedGeneration: 9757 + description: |- 9758 + observedGeneration represents the .metadata.generation that the condition was set based upon. 9759 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 9760 + with respect to the current state of the instance. 9761 + format: int64 9762 + minimum: 0 9763 + type: integer 9764 + reason: 9765 + description: |- 9766 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 9767 + Producers of specific condition types may define expected values and meanings for this field, 9768 + and whether the values are considered a guaranteed API. 9769 + The value should be a CamelCase string. 9770 + This field may not be empty. 9771 + maxLength: 1024 9772 + minLength: 1 9773 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 9774 + type: string 9775 + status: 9776 + description: status of the condition, one of True, False, Unknown. 9777 + enum: 9778 + - "True" 9779 + - "False" 9780 + - Unknown 9781 + type: string 9782 + type: 9783 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 9784 + maxLength: 316 9785 + 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])$ 9786 + type: string 9787 + required: 9788 + - lastTransitionTime 9789 + - message 9790 + - reason 9791 + - status 9792 + - type 9793 + type: object 9794 + type: array 9795 + lastHandledReconcileAt: 9796 + description: |- 9797 + LastHandledReconcileAt holds the value of the most recent 9798 + reconcile request value, so a change of the annotation value 9799 + can be detected. 9800 + type: string 9801 + observedGeneration: 9802 + description: ObservedGeneration is the last observed generation of 9803 + the Receiver object. 9804 + format: int64 9805 + type: integer 9806 + webhookPath: 9807 + description: |- 9808 + WebhookPath is the generated incoming webhook address in the format 9809 + of '/hook/sha256sum(token+name+namespace)'. 9810 + type: string 9811 + type: object 9812 + type: object 9813 + served: true 9814 + storage: true 9815 + subresources: 9816 + status: {} 9817 + - additionalPrinterColumns: 9818 + - jsonPath: .metadata.creationTimestamp 9819 + name: Age 9820 + type: date 9821 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 9822 + name: Ready 9823 + type: string 9824 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 9825 + name: Status 9826 + type: string 9827 + deprecated: true 9828 + deprecationWarning: v1beta2 Receiver is deprecated, upgrade to v1 9829 + name: v1beta2 9830 + schema: 9831 + openAPIV3Schema: 9832 + description: Receiver is the Schema for the receivers API. 9833 + properties: 9834 + apiVersion: 9835 + description: |- 9836 + APIVersion defines the versioned schema of this representation of an object. 9837 + Servers should convert recognized schemas to the latest internal value, and 9838 + may reject unrecognized values. 9839 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9840 + type: string 9841 + kind: 9842 + description: |- 9843 + Kind is a string value representing the REST resource this object represents. 9844 + Servers may infer this from the endpoint the client submits requests to. 9845 + Cannot be updated. 9846 + In CamelCase. 9847 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9848 + type: string 9849 + metadata: 9850 + type: object 9851 + spec: 9852 + description: ReceiverSpec defines the desired state of the Receiver. 9853 + properties: 9854 + events: 9855 + description: |- 9856 + Events specifies the list of event types to handle, 9857 + e.g. 'push' for GitHub or 'Push Hook' for GitLab. 9858 + items: 9859 + type: string 9860 + type: array 9861 + interval: 9862 + description: Interval at which to reconcile the Receiver with its 9863 + Secret references. 9864 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9865 + type: string 9866 + resources: 9867 + description: A list of resources to be notified about changes. 9868 + items: 9869 + description: |- 9870 + CrossNamespaceObjectReference contains enough information to let you locate the 9871 + typed referenced object at cluster level 9872 + properties: 9873 + apiVersion: 9874 + description: API version of the referent 9875 + type: string 9876 + kind: 9877 + description: Kind of the referent 9878 + enum: 9879 + - Bucket 9880 + - GitRepository 9881 + - Kustomization 9882 + - HelmRelease 9883 + - HelmChart 9884 + - HelmRepository 9885 + - ImageRepository 9886 + - ImagePolicy 9887 + - ImageUpdateAutomation 9888 + - OCIRepository 9889 + type: string 9890 + matchLabels: 9891 + additionalProperties: 9892 + type: string 9893 + description: |- 9894 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 9895 + map is equivalent to an element of matchExpressions, whose key field is "key", the 9896 + operator is "In", and the values array contains only "value". The requirements are ANDed. 9897 + MatchLabels requires the name to be set to `*`. 9898 + type: object 9899 + name: 9900 + description: |- 9901 + Name of the referent 9902 + If multiple resources are targeted `*` may be set. 9903 + maxLength: 253 9904 + minLength: 1 9905 + type: string 9906 + namespace: 9907 + description: Namespace of the referent 9908 + maxLength: 253 9909 + minLength: 1 9910 + type: string 9911 + required: 9912 + - kind 9913 + - name 9914 + type: object 9915 + type: array 9916 + secretRef: 9917 + description: |- 9918 + SecretRef specifies the Secret containing the token used 9919 + to validate the payload authenticity. 9920 + properties: 9921 + name: 9922 + description: Name of the referent. 9923 + type: string 9924 + required: 9925 + - name 9926 + type: object 9927 + suspend: 9928 + description: |- 9929 + Suspend tells the controller to suspend subsequent 9930 + events handling for this receiver. 9931 + type: boolean 9932 + type: 9933 + description: |- 9934 + Type of webhook sender, used to determine 9935 + the validation procedure and payload deserialization. 9936 + enum: 9937 + - generic 9938 + - generic-hmac 9939 + - github 9940 + - gitlab 9941 + - bitbucket 9942 + - harbor 9943 + - dockerhub 9944 + - quay 9945 + - gcr 9946 + - nexus 9947 + - acr 9948 + type: string 9949 + required: 9950 + - resources 9951 + - secretRef 9952 + - type 9953 + type: object 9954 + status: 9955 + default: 9956 + observedGeneration: -1 9957 + description: ReceiverStatus defines the observed state of the Receiver. 9958 + properties: 9959 + conditions: 9960 + description: Conditions holds the conditions for the Receiver. 9961 + items: 9962 + description: Condition contains details for one aspect of the current 9963 + state of this API Resource. 9964 + properties: 9965 + lastTransitionTime: 9966 + description: |- 9967 + lastTransitionTime is the last time the condition transitioned from one status to another. 9968 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 9969 + format: date-time 9970 + type: string 9971 + message: 9972 + description: |- 9973 + message is a human readable message indicating details about the transition. 9974 + This may be an empty string. 9975 + maxLength: 32768 9976 + type: string 9977 + observedGeneration: 9978 + description: |- 9979 + observedGeneration represents the .metadata.generation that the condition was set based upon. 9980 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 9981 + with respect to the current state of the instance. 9982 + format: int64 9983 + minimum: 0 9984 + type: integer 9985 + reason: 9986 + description: |- 9987 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 9988 + Producers of specific condition types may define expected values and meanings for this field, 9989 + and whether the values are considered a guaranteed API. 9990 + The value should be a CamelCase string. 9991 + This field may not be empty. 9992 + maxLength: 1024 9993 + minLength: 1 9994 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 9995 + type: string 9996 + status: 9997 + description: status of the condition, one of True, False, Unknown. 9998 + enum: 9999 + - "True" 10000 + - "False" 10001 + - Unknown 10002 + type: string 10003 + type: 10004 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 10005 + maxLength: 316 10006 + 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])$ 10007 + type: string 10008 + required: 10009 + - lastTransitionTime 10010 + - message 10011 + - reason 10012 + - status 10013 + - type 10014 + type: object 10015 + type: array 10016 + lastHandledReconcileAt: 10017 + description: |- 10018 + LastHandledReconcileAt holds the value of the most recent 10019 + reconcile request value, so a change of the annotation value 10020 + can be detected. 10021 + type: string 10022 + observedGeneration: 10023 + description: ObservedGeneration is the last observed generation of 10024 + the Receiver object. 10025 + format: int64 10026 + type: integer 10027 + url: 10028 + description: |- 10029 + URL is the generated incoming webhook address in the format 10030 + of '/hook/sha256sum(token+name+namespace)'. 10031 + Deprecated: Replaced by WebhookPath. 10032 + type: string 10033 + webhookPath: 10034 + description: |- 10035 + WebhookPath is the generated incoming webhook address in the format 10036 + of '/hook/sha256sum(token+name+namespace)'. 10037 + type: string 10038 + type: object 10039 + type: object 10040 + served: true 10041 + storage: false 10042 + subresources: 10043 + status: {} 10044 + --- 10045 + apiVersion: v1 10046 + kind: ServiceAccount 10047 + metadata: 10048 + labels: 10049 + app.kubernetes.io/component: notification-controller 10050 + app.kubernetes.io/instance: flux-system 10051 + app.kubernetes.io/part-of: flux 10052 + app.kubernetes.io/version: v2.7.3 10053 + name: notification-controller 10054 + namespace: flux-system 10055 + --- 10056 + apiVersion: v1 10057 + kind: Service 10058 + metadata: 10059 + labels: 10060 + app.kubernetes.io/component: notification-controller 10061 + app.kubernetes.io/instance: flux-system 10062 + app.kubernetes.io/part-of: flux 10063 + app.kubernetes.io/version: v2.7.3 10064 + control-plane: controller 10065 + name: notification-controller 10066 + namespace: flux-system 10067 + spec: 10068 + ports: 10069 + - name: http 10070 + port: 80 10071 + protocol: TCP 10072 + targetPort: http 10073 + selector: 10074 + app: notification-controller 10075 + type: ClusterIP 10076 + --- 10077 + apiVersion: v1 10078 + kind: Service 10079 + metadata: 10080 + labels: 10081 + app.kubernetes.io/component: notification-controller 10082 + app.kubernetes.io/instance: flux-system 10083 + app.kubernetes.io/part-of: flux 10084 + app.kubernetes.io/version: v2.7.3 10085 + control-plane: controller 10086 + name: webhook-receiver 10087 + namespace: flux-system 10088 + spec: 10089 + ports: 10090 + - name: http 10091 + port: 80 10092 + protocol: TCP 10093 + targetPort: http-webhook 10094 + selector: 10095 + app: notification-controller 10096 + type: ClusterIP 10097 + --- 10098 + apiVersion: apps/v1 10099 + kind: Deployment 10100 + metadata: 10101 + labels: 10102 + app.kubernetes.io/component: notification-controller 10103 + app.kubernetes.io/instance: flux-system 10104 + app.kubernetes.io/part-of: flux 10105 + app.kubernetes.io/version: v2.7.3 10106 + control-plane: controller 10107 + name: notification-controller 10108 + namespace: flux-system 10109 + spec: 10110 + replicas: 1 10111 + selector: 10112 + matchLabels: 10113 + app: notification-controller 10114 + template: 10115 + metadata: 10116 + annotations: 10117 + prometheus.io/port: "8080" 10118 + prometheus.io/scrape: "true" 10119 + labels: 10120 + app: notification-controller 10121 + app.kubernetes.io/component: notification-controller 10122 + app.kubernetes.io/instance: flux-system 10123 + app.kubernetes.io/part-of: flux 10124 + app.kubernetes.io/version: v2.7.3 10125 + spec: 10126 + containers: 10127 + - args: 10128 + - --watch-all-namespaces=true 10129 + - --log-level=info 10130 + - --log-encoding=json 10131 + - --enable-leader-election 10132 + env: 10133 + - name: RUNTIME_NAMESPACE 10134 + valueFrom: 10135 + fieldRef: 10136 + fieldPath: metadata.namespace 10137 + - name: GOMEMLIMIT 10138 + valueFrom: 10139 + resourceFieldRef: 10140 + containerName: manager 10141 + resource: limits.memory 10142 + image: ghcr.io/fluxcd/notification-controller:v1.7.4 10143 + imagePullPolicy: IfNotPresent 10144 + livenessProbe: 10145 + httpGet: 10146 + path: /healthz 10147 + port: healthz 10148 + name: manager 10149 + ports: 10150 + - containerPort: 9090 10151 + name: http 10152 + protocol: TCP 10153 + - containerPort: 9292 10154 + name: http-webhook 10155 + protocol: TCP 10156 + - containerPort: 8080 10157 + name: http-prom 10158 + protocol: TCP 10159 + - containerPort: 9440 10160 + name: healthz 10161 + protocol: TCP 10162 + readinessProbe: 10163 + httpGet: 10164 + path: /readyz 10165 + port: healthz 10166 + resources: 10167 + limits: 10168 + cpu: 1000m 10169 + memory: 1Gi 10170 + requests: 10171 + cpu: 100m 10172 + memory: 64Mi 10173 + securityContext: 10174 + allowPrivilegeEscalation: false 10175 + capabilities: 10176 + drop: 10177 + - ALL 10178 + readOnlyRootFilesystem: true 10179 + runAsNonRoot: true 10180 + seccompProfile: 10181 + type: RuntimeDefault 10182 + volumeMounts: 10183 + - mountPath: /tmp 10184 + name: temp 10185 + nodeSelector: 10186 + kubernetes.io/os: linux 10187 + securityContext: 10188 + fsGroup: 1337 10189 + serviceAccountName: notification-controller 10190 + terminationGracePeriodSeconds: 10 10191 + volumes: 10192 + - emptyDir: {} 10193 + name: temp