92.diff (960101B)
1 diff --git a/clusters/talos_cluster/flux-system/gotk-components.yaml b/clusters/talos_cluster/flux-system/gotk-components.yaml 2 index 0fa3034e..0b7ac8e6 100644 3 --- a/clusters/talos_cluster/flux-system/gotk-components.yaml 4 +++ b/clusters/talos_cluster/flux-system/gotk-components.yaml 5 @@ -1,5 +1,6 @@ 6 +--- 7 # This manifest was generated by flux. DO NOT EDIT. 8 -# Flux Version: v2.7.5 9 +# Flux Version: v2.8.0 10 # Components: source-controller,kustomize-controller,helm-controller,notification-controller,image-reflector-controller,image-automation-controller 11 apiVersion: v1 12 kind: Namespace 13 @@ -7,7 +8,7 @@ metadata: 14 labels: 15 app.kubernetes.io/instance: flux-system 16 app.kubernetes.io/part-of: flux 17 - app.kubernetes.io/version: v2.7.5 18 + app.kubernetes.io/version: v2.8.0 19 pod-security.kubernetes.io/warn: restricted 20 pod-security.kubernetes.io/warn-version: latest 21 name: flux-system 22 @@ -18,19 +19,19 @@ metadata: 23 labels: 24 app.kubernetes.io/instance: flux-system 25 app.kubernetes.io/part-of: flux 26 - app.kubernetes.io/version: v2.7.5 27 + app.kubernetes.io/version: v2.8.0 28 name: allow-egress 29 namespace: flux-system 30 spec: 31 egress: 32 - - {} 33 + - {} 34 ingress: 35 - - from: 36 - - podSelector: {} 37 + - from: 38 + - podSelector: {} 39 podSelector: {} 40 policyTypes: 41 - - Ingress 42 - - Egress 43 + - Ingress 44 + - Egress 45 --- 46 apiVersion: networking.k8s.io/v1 47 kind: NetworkPolicy 48 @@ -38,19 +39,19 @@ metadata: 49 labels: 50 app.kubernetes.io/instance: flux-system 51 app.kubernetes.io/part-of: flux 52 - app.kubernetes.io/version: v2.7.5 53 + app.kubernetes.io/version: v2.8.0 54 name: allow-scraping 55 namespace: flux-system 56 spec: 57 ingress: 58 - - from: 59 - - namespaceSelector: {} 60 - ports: 61 - - port: 8080 62 - protocol: TCP 63 + - from: 64 + - namespaceSelector: {} 65 + ports: 66 + - port: 8080 67 + protocol: TCP 68 podSelector: {} 69 policyTypes: 70 - - Ingress 71 + - Ingress 72 --- 73 apiVersion: networking.k8s.io/v1 74 kind: NetworkPolicy 75 @@ -58,18 +59,18 @@ metadata: 76 labels: 77 app.kubernetes.io/instance: flux-system 78 app.kubernetes.io/part-of: flux 79 - app.kubernetes.io/version: v2.7.5 80 + app.kubernetes.io/version: v2.8.0 81 name: allow-webhooks 82 namespace: flux-system 83 spec: 84 ingress: 85 - - from: 86 - - namespaceSelector: {} 87 + - from: 88 + - namespaceSelector: {} 89 podSelector: 90 matchLabels: 91 app: notification-controller 92 policyTypes: 93 - - Ingress 94 + - Ingress 95 --- 96 apiVersion: v1 97 kind: ResourceQuota 98 @@ -77,7 +78,7 @@ metadata: 99 labels: 100 app.kubernetes.io/instance: flux-system 101 app.kubernetes.io/part-of: flux 102 - app.kubernetes.io/version: v2.7.5 103 + app.kubernetes.io/version: v2.8.0 104 name: critical-pods-flux-system 105 namespace: flux-system 106 spec: 107 @@ -85,11 +86,11 @@ spec: 108 pods: "1000" 109 scopeSelector: 110 matchExpressions: 111 - - operator: In 112 - scopeName: PriorityClass 113 - values: 114 - - system-node-critical 115 - - system-cluster-critical 116 + - operator: In 117 + scopeName: PriorityClass 118 + values: 119 + - system-node-critical 120 + - system-cluster-critical 121 --- 122 apiVersion: rbac.authorization.k8s.io/v1 123 kind: ClusterRole 124 @@ -97,105 +98,105 @@ metadata: 125 labels: 126 app.kubernetes.io/instance: flux-system 127 app.kubernetes.io/part-of: flux 128 - app.kubernetes.io/version: v2.7.5 129 + app.kubernetes.io/version: v2.8.0 130 name: crd-controller-flux-system 131 rules: 132 - - apiGroups: 133 - - source.toolkit.fluxcd.io 134 - resources: 135 - - '*' 136 - verbs: 137 - - '*' 138 - - apiGroups: 139 - - kustomize.toolkit.fluxcd.io 140 - resources: 141 - - '*' 142 - verbs: 143 - - '*' 144 - - apiGroups: 145 - - helm.toolkit.fluxcd.io 146 - resources: 147 - - '*' 148 - verbs: 149 - - '*' 150 - - apiGroups: 151 - - notification.toolkit.fluxcd.io 152 - resources: 153 - - '*' 154 - verbs: 155 - - '*' 156 - - apiGroups: 157 - - image.toolkit.fluxcd.io 158 - resources: 159 - - '*' 160 - verbs: 161 - - '*' 162 - - apiGroups: 163 - - source.extensions.fluxcd.io 164 - resources: 165 - - '*' 166 - verbs: 167 - - '*' 168 - - apiGroups: 169 - - "" 170 - resources: 171 - - namespaces 172 - - secrets 173 - - configmaps 174 - - serviceaccounts 175 - verbs: 176 - - get 177 - - list 178 - - watch 179 - - apiGroups: 180 - - "" 181 - resources: 182 - - events 183 - verbs: 184 - - create 185 - - patch 186 - - apiGroups: 187 - - "" 188 - resources: 189 - - configmaps 190 - verbs: 191 - - get 192 - - list 193 - - watch 194 - - create 195 - - update 196 - - patch 197 - - delete 198 - - apiGroups: 199 - - "" 200 - resources: 201 - - configmaps/status 202 - verbs: 203 - - get 204 - - update 205 - - patch 206 - - apiGroups: 207 - - coordination.k8s.io 208 - resources: 209 - - leases 210 - verbs: 211 - - get 212 - - list 213 - - watch 214 - - create 215 - - update 216 - - patch 217 - - delete 218 - - apiGroups: 219 - - "" 220 - resources: 221 - - serviceaccounts/token 222 - verbs: 223 - - create 224 - - nonResourceURLs: 225 - - /livez/ping 226 - verbs: 227 - - head 228 +- apiGroups: 229 + - source.toolkit.fluxcd.io 230 + resources: 231 + - '*' 232 + verbs: 233 + - '*' 234 +- apiGroups: 235 + - kustomize.toolkit.fluxcd.io 236 + resources: 237 + - '*' 238 + verbs: 239 + - '*' 240 +- apiGroups: 241 + - helm.toolkit.fluxcd.io 242 + resources: 243 + - '*' 244 + verbs: 245 + - '*' 246 +- apiGroups: 247 + - notification.toolkit.fluxcd.io 248 + resources: 249 + - '*' 250 + verbs: 251 + - '*' 252 +- apiGroups: 253 + - image.toolkit.fluxcd.io 254 + resources: 255 + - '*' 256 + verbs: 257 + - '*' 258 +- apiGroups: 259 + - source.extensions.fluxcd.io 260 + resources: 261 + - '*' 262 + verbs: 263 + - '*' 264 +- apiGroups: 265 + - "" 266 + resources: 267 + - namespaces 268 + - secrets 269 + - configmaps 270 + - serviceaccounts 271 + verbs: 272 + - get 273 + - list 274 + - watch 275 +- apiGroups: 276 + - "" 277 + resources: 278 + - events 279 + verbs: 280 + - create 281 + - patch 282 +- apiGroups: 283 + - "" 284 + resources: 285 + - configmaps 286 + verbs: 287 + - get 288 + - list 289 + - watch 290 + - create 291 + - update 292 + - patch 293 + - delete 294 +- apiGroups: 295 + - "" 296 + resources: 297 + - configmaps/status 298 + verbs: 299 + - get 300 + - update 301 + - patch 302 +- apiGroups: 303 + - coordination.k8s.io 304 + resources: 305 + - leases 306 + verbs: 307 + - get 308 + - list 309 + - watch 310 + - create 311 + - update 312 + - patch 313 + - delete 314 +- apiGroups: 315 + - "" 316 + resources: 317 + - serviceaccounts/token 318 + verbs: 319 + - create 320 +- nonResourceURLs: 321 + - /livez/ping 322 + verbs: 323 + - head 324 --- 325 apiVersion: rbac.authorization.k8s.io/v1 326 kind: ClusterRole 327 @@ -203,26 +204,26 @@ metadata: 328 labels: 329 app.kubernetes.io/instance: flux-system 330 app.kubernetes.io/part-of: flux 331 - app.kubernetes.io/version: v2.7.5 332 + app.kubernetes.io/version: v2.8.0 333 rbac.authorization.k8s.io/aggregate-to-admin: "true" 334 rbac.authorization.k8s.io/aggregate-to-edit: "true" 335 name: flux-edit-flux-system 336 rules: 337 - - apiGroups: 338 - - notification.toolkit.fluxcd.io 339 - - source.toolkit.fluxcd.io 340 - - source.extensions.fluxcd.io 341 - - helm.toolkit.fluxcd.io 342 - - image.toolkit.fluxcd.io 343 - - kustomize.toolkit.fluxcd.io 344 - resources: 345 - - '*' 346 - verbs: 347 - - create 348 - - delete 349 - - deletecollection 350 - - patch 351 - - update 352 +- apiGroups: 353 + - notification.toolkit.fluxcd.io 354 + - source.toolkit.fluxcd.io 355 + - source.extensions.fluxcd.io 356 + - helm.toolkit.fluxcd.io 357 + - image.toolkit.fluxcd.io 358 + - kustomize.toolkit.fluxcd.io 359 + resources: 360 + - '*' 361 + verbs: 362 + - create 363 + - delete 364 + - deletecollection 365 + - patch 366 + - update 367 --- 368 apiVersion: rbac.authorization.k8s.io/v1 369 kind: ClusterRole 370 @@ -230,25 +231,25 @@ metadata: 371 labels: 372 app.kubernetes.io/instance: flux-system 373 app.kubernetes.io/part-of: flux 374 - app.kubernetes.io/version: v2.7.5 375 + app.kubernetes.io/version: v2.8.0 376 rbac.authorization.k8s.io/aggregate-to-admin: "true" 377 rbac.authorization.k8s.io/aggregate-to-edit: "true" 378 rbac.authorization.k8s.io/aggregate-to-view: "true" 379 name: flux-view-flux-system 380 rules: 381 - - apiGroups: 382 - - notification.toolkit.fluxcd.io 383 - - source.toolkit.fluxcd.io 384 - - source.extensions.fluxcd.io 385 - - helm.toolkit.fluxcd.io 386 - - image.toolkit.fluxcd.io 387 - - kustomize.toolkit.fluxcd.io 388 - resources: 389 - - '*' 390 - verbs: 391 - - get 392 - - list 393 - - watch 394 +- apiGroups: 395 + - notification.toolkit.fluxcd.io 396 + - source.toolkit.fluxcd.io 397 + - source.extensions.fluxcd.io 398 + - helm.toolkit.fluxcd.io 399 + - image.toolkit.fluxcd.io 400 + - kustomize.toolkit.fluxcd.io 401 + resources: 402 + - '*' 403 + verbs: 404 + - get 405 + - list 406 + - watch 407 --- 408 apiVersion: rbac.authorization.k8s.io/v1 409 kind: ClusterRoleBinding 410 @@ -256,19 +257,19 @@ metadata: 411 labels: 412 app.kubernetes.io/instance: flux-system 413 app.kubernetes.io/part-of: flux 414 - app.kubernetes.io/version: v2.7.5 415 + app.kubernetes.io/version: v2.8.0 416 name: cluster-reconciler-flux-system 417 roleRef: 418 apiGroup: rbac.authorization.k8s.io 419 kind: ClusterRole 420 name: cluster-admin 421 subjects: 422 - - kind: ServiceAccount 423 - name: kustomize-controller 424 - namespace: flux-system 425 - - kind: ServiceAccount 426 - name: helm-controller 427 - namespace: flux-system 428 +- kind: ServiceAccount 429 + name: kustomize-controller 430 + namespace: flux-system 431 +- kind: ServiceAccount 432 + name: helm-controller 433 + namespace: flux-system 434 --- 435 apiVersion: rbac.authorization.k8s.io/v1 436 kind: ClusterRoleBinding 437 @@ -276,34 +277,34 @@ metadata: 438 labels: 439 app.kubernetes.io/instance: flux-system 440 app.kubernetes.io/part-of: flux 441 - app.kubernetes.io/version: v2.7.5 442 + app.kubernetes.io/version: v2.8.0 443 name: crd-controller-flux-system 444 roleRef: 445 apiGroup: rbac.authorization.k8s.io 446 kind: ClusterRole 447 name: crd-controller-flux-system 448 subjects: 449 - - kind: ServiceAccount 450 - name: kustomize-controller 451 - namespace: flux-system 452 - - kind: ServiceAccount 453 - name: helm-controller 454 - namespace: flux-system 455 - - kind: ServiceAccount 456 - name: source-controller 457 - namespace: flux-system 458 - - kind: ServiceAccount 459 - name: notification-controller 460 - namespace: flux-system 461 - - kind: ServiceAccount 462 - name: image-reflector-controller 463 - namespace: flux-system 464 - - kind: ServiceAccount 465 - name: image-automation-controller 466 - namespace: flux-system 467 - - kind: ServiceAccount 468 - name: source-watcher 469 - namespace: flux-system 470 +- kind: ServiceAccount 471 + name: kustomize-controller 472 + namespace: flux-system 473 +- kind: ServiceAccount 474 + name: helm-controller 475 + namespace: flux-system 476 +- kind: ServiceAccount 477 + name: source-controller 478 + namespace: flux-system 479 +- kind: ServiceAccount 480 + name: notification-controller 481 + namespace: flux-system 482 +- kind: ServiceAccount 483 + name: image-reflector-controller 484 + namespace: flux-system 485 +- kind: ServiceAccount 486 + name: image-automation-controller 487 + namespace: flux-system 488 +- kind: ServiceAccount 489 + name: source-watcher 490 + namespace: flux-system 491 --- 492 apiVersion: apiextensions.k8s.io/v1 493 kind: CustomResourceDefinition 494 @@ -314,7 +315,7 @@ metadata: 495 app.kubernetes.io/component: source-controller 496 app.kubernetes.io/instance: flux-system 497 app.kubernetes.io/part-of: flux 498 - app.kubernetes.io/version: v2.7.5 499 + app.kubernetes.io/version: v2.8.0 500 name: buckets.source.toolkit.fluxcd.io 501 spec: 502 group: source.toolkit.fluxcd.io 503 @@ -325,237 +326,938 @@ spec: 504 singular: bucket 505 scope: Namespaced 506 versions: 507 - - additionalPrinterColumns: 508 - - jsonPath: .spec.endpoint 509 - name: Endpoint 510 - type: string 511 - - jsonPath: .metadata.creationTimestamp 512 - name: Age 513 - type: date 514 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 515 - name: Ready 516 - type: string 517 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 518 - name: Status 519 - type: string 520 - name: v1 521 - schema: 522 - openAPIV3Schema: 523 - description: Bucket is the Schema for the buckets API. 524 - properties: 525 - apiVersion: 526 - description: |- 527 - APIVersion defines the versioned schema of this representation of an object. 528 - Servers should convert recognized schemas to the latest internal value, and 529 - may reject unrecognized values. 530 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 531 - type: string 532 - kind: 533 - description: |- 534 - Kind is a string value representing the REST resource this object represents. 535 - Servers may infer this from the endpoint the client submits requests to. 536 - Cannot be updated. 537 - In CamelCase. 538 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 539 - type: string 540 - metadata: 541 - type: object 542 - spec: 543 - description: |- 544 - BucketSpec specifies the required configuration to produce an Artifact for 545 - an object storage bucket. 546 - properties: 547 - bucketName: 548 - description: BucketName is the name of the object storage bucket. 549 - type: string 550 - certSecretRef: 551 - description: |- 552 - CertSecretRef can be given the name of a Secret containing 553 - either or both of 554 + - additionalPrinterColumns: 555 + - jsonPath: .spec.endpoint 556 + name: Endpoint 557 + type: string 558 + - jsonPath: .metadata.creationTimestamp 559 + name: Age 560 + type: date 561 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 562 + name: Ready 563 + type: string 564 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 565 + name: Status 566 + type: string 567 + name: v1 568 + schema: 569 + openAPIV3Schema: 570 + description: Bucket is the Schema for the buckets API. 571 + properties: 572 + apiVersion: 573 + description: |- 574 + APIVersion defines the versioned schema of this representation of an object. 575 + Servers should convert recognized schemas to the latest internal value, and 576 + may reject unrecognized values. 577 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 578 + type: string 579 + kind: 580 + description: |- 581 + Kind is a string value representing the REST resource this object represents. 582 + Servers may infer this from the endpoint the client submits requests to. 583 + Cannot be updated. 584 + In CamelCase. 585 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 586 + type: string 587 + metadata: 588 + type: object 589 + spec: 590 + description: |- 591 + BucketSpec specifies the required configuration to produce an Artifact for 592 + an object storage bucket. 593 + properties: 594 + bucketName: 595 + description: BucketName is the name of the object storage bucket. 596 + type: string 597 + certSecretRef: 598 + description: |- 599 + CertSecretRef can be given the name of a Secret containing 600 + either or both of 601 602 - - a PEM-encoded client certificate (`tls.crt`) and private 603 - key (`tls.key`); 604 - - a PEM-encoded CA certificate (`ca.crt`) 605 + - a PEM-encoded client certificate (`tls.crt`) and private 606 + key (`tls.key`); 607 + - a PEM-encoded CA certificate (`ca.crt`) 608 609 - and whichever are supplied, will be used for connecting to the 610 - bucket. The client cert and key are useful if you are 611 - authenticating with a certificate; the CA cert is useful if 612 - you are using a self-signed server certificate. The Secret must 613 - be of type `Opaque` or `kubernetes.io/tls`. 614 + and whichever are supplied, will be used for connecting to the 615 + bucket. The client cert and key are useful if you are 616 + authenticating with a certificate; the CA cert is useful if 617 + you are using a self-signed server certificate. The Secret must 618 + be of type `Opaque` or `kubernetes.io/tls`. 619 620 - This field is only supported for the `generic` provider. 621 - properties: 622 - name: 623 - description: Name of the referent. 624 - type: string 625 - required: 626 + This field is only supported for the `generic` provider. 627 + properties: 628 + name: 629 + description: Name of the referent. 630 + type: string 631 + required: 632 + - name 633 + type: object 634 + endpoint: 635 + description: Endpoint is the object storage address the BucketName 636 + is located at. 637 + type: string 638 + ignore: 639 + description: |- 640 + Ignore overrides the set of excluded patterns in the .sourceignore format 641 + (which is the same as .gitignore). If not provided, a default will be used, 642 + consult the documentation for your version to find out what those are. 643 + type: string 644 + insecure: 645 + description: Insecure allows connecting to a non-TLS HTTP Endpoint. 646 + type: boolean 647 + interval: 648 + description: |- 649 + Interval at which the Bucket Endpoint is checked for updates. 650 + This interval is approximate and may be subject to jitter to ensure 651 + efficient use of resources. 652 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 653 + type: string 654 + prefix: 655 + description: Prefix to use for server-side filtering of files in the 656 + Bucket. 657 + type: string 658 + provider: 659 + default: generic 660 + description: |- 661 + Provider of the object storage bucket. 662 + Defaults to 'generic', which expects an S3 (API) compatible object 663 + storage. 664 + enum: 665 + - generic 666 + - aws 667 + - gcp 668 + - azure 669 + type: string 670 + proxySecretRef: 671 + description: |- 672 + ProxySecretRef specifies the Secret containing the proxy configuration 673 + to use while communicating with the Bucket server. 674 + properties: 675 + name: 676 + description: Name of the referent. 677 + type: string 678 + required: 679 + - name 680 + type: object 681 + region: 682 + description: Region of the Endpoint where the BucketName is located 683 + in. 684 + type: string 685 + secretRef: 686 + description: |- 687 + SecretRef specifies the Secret containing authentication credentials 688 + for the Bucket. 689 + properties: 690 + name: 691 + description: Name of the referent. 692 + type: string 693 + required: 694 + - name 695 + type: object 696 + serviceAccountName: 697 + description: |- 698 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 699 + the bucket. This field is only supported for the 'gcp' and 'aws' providers. 700 + For more information about workload identity: 701 + https://fluxcd.io/flux/components/source/buckets/#workload-identity 702 + type: string 703 + sts: 704 + description: |- 705 + STS specifies the required configuration to use a Security Token 706 + Service for fetching temporary credentials to authenticate in a 707 + Bucket provider. 708 + 709 + This field is only supported for the `aws` and `generic` providers. 710 + properties: 711 + certSecretRef: 712 + description: |- 713 + CertSecretRef can be given the name of a Secret containing 714 + either or both of 715 + 716 + - a PEM-encoded client certificate (`tls.crt`) and private 717 + key (`tls.key`); 718 + - a PEM-encoded CA certificate (`ca.crt`) 719 + 720 + and whichever are supplied, will be used for connecting to the 721 + STS endpoint. The client cert and key are useful if you are 722 + authenticating with a certificate; the CA cert is useful if 723 + you are using a self-signed server certificate. The Secret must 724 + be of type `Opaque` or `kubernetes.io/tls`. 725 + 726 + This field is only supported for the `ldap` provider. 727 + properties: 728 + name: 729 + description: Name of the referent. 730 + type: string 731 + required: 732 - name 733 - type: object 734 - endpoint: 735 - description: Endpoint is the object storage address the BucketName is located at. 736 - type: string 737 - ignore: 738 - description: |- 739 - Ignore overrides the set of excluded patterns in the .sourceignore format 740 - (which is the same as .gitignore). If not provided, a default will be used, 741 - consult the documentation for your version to find out what those are. 742 - type: string 743 - insecure: 744 - description: Insecure allows connecting to a non-TLS HTTP Endpoint. 745 - type: boolean 746 - interval: 747 - description: |- 748 - Interval at which the Bucket Endpoint is checked for updates. 749 - This interval is approximate and may be subject to jitter to ensure 750 - efficient use of resources. 751 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 752 - type: string 753 - prefix: 754 - description: Prefix to use for server-side filtering of files in the Bucket. 755 - type: string 756 - provider: 757 - default: generic 758 - description: |- 759 - Provider of the object storage bucket. 760 - Defaults to 'generic', which expects an S3 (API) compatible object 761 - storage. 762 - enum: 763 - - generic 764 + type: object 765 + endpoint: 766 + description: |- 767 + Endpoint is the HTTP/S endpoint of the Security Token Service from 768 + where temporary credentials will be fetched. 769 + pattern: ^(http|https)://.*$ 770 + type: string 771 + provider: 772 + description: Provider of the Security Token Service. 773 + enum: 774 - aws 775 - - gcp 776 - - azure 777 - type: string 778 - proxySecretRef: 779 - description: |- 780 - ProxySecretRef specifies the Secret containing the proxy configuration 781 - to use while communicating with the Bucket server. 782 + - ldap 783 + type: string 784 + secretRef: 785 + description: |- 786 + SecretRef specifies the Secret containing authentication credentials 787 + for the STS endpoint. This Secret must contain the fields `username` 788 + and `password` and is supported only for the `ldap` provider. 789 + properties: 790 + name: 791 + description: Name of the referent. 792 + type: string 793 + required: 794 + - name 795 + type: object 796 + required: 797 + - endpoint 798 + - provider 799 + type: object 800 + suspend: 801 + description: |- 802 + Suspend tells the controller to suspend the reconciliation of this 803 + Bucket. 804 + type: boolean 805 + timeout: 806 + default: 60s 807 + description: Timeout for fetch operations, defaults to 60s. 808 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 809 + type: string 810 + required: 811 + - bucketName 812 + - endpoint 813 + - interval 814 + type: object 815 + x-kubernetes-validations: 816 + - message: STS configuration is only supported for the 'aws' and 'generic' 817 + Bucket providers 818 + rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts) 819 + - message: '''aws'' is the only supported STS provider for the ''aws'' 820 + Bucket provider' 821 + rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider 822 + == 'aws' 823 + - message: '''ldap'' is the only supported STS provider for the ''generic'' 824 + Bucket provider' 825 + rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider 826 + == 'ldap' 827 + - message: spec.sts.secretRef is not required for the 'aws' STS provider 828 + rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)' 829 + - message: spec.sts.certSecretRef is not required for the 'aws' STS provider 830 + rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)' 831 + - message: ServiceAccountName is not supported for the 'generic' Bucket 832 + provider 833 + rule: self.provider != 'generic' || !has(self.serviceAccountName) 834 + - message: cannot set both .spec.secretRef and .spec.serviceAccountName 835 + rule: '!has(self.secretRef) || !has(self.serviceAccountName)' 836 + status: 837 + default: 838 + observedGeneration: -1 839 + description: BucketStatus records the observed state of a Bucket. 840 + properties: 841 + artifact: 842 + description: Artifact represents the last successful Bucket reconciliation. 843 + properties: 844 + digest: 845 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 846 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 847 + type: string 848 + lastUpdateTime: 849 + description: |- 850 + LastUpdateTime is the timestamp corresponding to the last update of the 851 + Artifact. 852 + format: date-time 853 + type: string 854 + metadata: 855 + additionalProperties: 856 + type: string 857 + description: Metadata holds upstream information such as OCI annotations. 858 + type: object 859 + path: 860 + description: |- 861 + Path is the relative file path of the Artifact. It can be used to locate 862 + the file in the root of the Artifact storage on the local file system of 863 + the controller managing the Source. 864 + type: string 865 + revision: 866 + description: |- 867 + Revision is a human-readable identifier traceable in the origin source 868 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 869 + type: string 870 + size: 871 + description: Size is the number of bytes in the file. 872 + format: int64 873 + type: integer 874 + url: 875 + description: |- 876 + URL is the HTTP address of the Artifact as exposed by the controller 877 + managing the Source. It can be used to retrieve the Artifact for 878 + consumption, e.g. by another controller applying the Artifact contents. 879 + type: string 880 + required: 881 + - digest 882 + - lastUpdateTime 883 + - path 884 + - revision 885 + - url 886 + type: object 887 + conditions: 888 + description: Conditions holds the conditions for the Bucket. 889 + items: 890 + description: Condition contains details for one aspect of the current 891 + state of this API Resource. 892 properties: 893 - name: 894 - description: Name of the referent. 895 + lastTransitionTime: 896 + description: |- 897 + lastTransitionTime is the last time the condition transitioned from one status to another. 898 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 899 + format: date-time 900 + type: string 901 + message: 902 + description: |- 903 + message is a human readable message indicating details about the transition. 904 + This may be an empty string. 905 + maxLength: 32768 906 + type: string 907 + observedGeneration: 908 + description: |- 909 + observedGeneration represents the .metadata.generation that the condition was set based upon. 910 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 911 + with respect to the current state of the instance. 912 + format: int64 913 + minimum: 0 914 + type: integer 915 + reason: 916 + description: |- 917 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 918 + Producers of specific condition types may define expected values and meanings for this field, 919 + and whether the values are considered a guaranteed API. 920 + The value should be a CamelCase string. 921 + This field may not be empty. 922 + maxLength: 1024 923 + minLength: 1 924 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 925 + type: string 926 + status: 927 + description: status of the condition, one of True, False, Unknown. 928 + enum: 929 + - "True" 930 + - "False" 931 + - Unknown 932 + type: string 933 + type: 934 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 935 + maxLength: 316 936 + 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])$ 937 type: string 938 required: 939 - - name 940 + - lastTransitionTime 941 + - message 942 + - reason 943 + - status 944 + - type 945 type: object 946 - region: 947 - description: Region of the Endpoint where the BucketName is located in. 948 - type: string 949 - secretRef: 950 - description: |- 951 - SecretRef specifies the Secret containing authentication credentials 952 - for the Bucket. 953 + type: array 954 + lastHandledReconcileAt: 955 + description: |- 956 + LastHandledReconcileAt holds the value of the most recent 957 + reconcile request value, so a change of the annotation value 958 + can be detected. 959 + type: string 960 + observedGeneration: 961 + description: ObservedGeneration is the last observed generation of 962 + the Bucket object. 963 + format: int64 964 + type: integer 965 + observedIgnore: 966 + description: |- 967 + ObservedIgnore is the observed exclusion patterns used for constructing 968 + the source artifact. 969 + type: string 970 + url: 971 + description: |- 972 + URL is the dynamic fetch link for the latest Artifact. 973 + It is provided on a "best effort" basis, and using the precise 974 + BucketStatus.Artifact data is recommended. 975 + type: string 976 + type: object 977 + type: object 978 + served: true 979 + storage: true 980 + subresources: 981 + status: {} 982 +--- 983 +apiVersion: apiextensions.k8s.io/v1 984 +kind: CustomResourceDefinition 985 +metadata: 986 + annotations: 987 + controller-gen.kubebuilder.io/version: v0.19.0 988 + labels: 989 + app.kubernetes.io/component: source-controller 990 + app.kubernetes.io/instance: flux-system 991 + app.kubernetes.io/part-of: flux 992 + app.kubernetes.io/version: v2.8.0 993 + name: externalartifacts.source.toolkit.fluxcd.io 994 +spec: 995 + group: source.toolkit.fluxcd.io 996 + names: 997 + kind: ExternalArtifact 998 + listKind: ExternalArtifactList 999 + plural: externalartifacts 1000 + singular: externalartifact 1001 + scope: Namespaced 1002 + versions: 1003 + - additionalPrinterColumns: 1004 + - jsonPath: .metadata.creationTimestamp 1005 + name: Age 1006 + type: date 1007 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 1008 + name: Ready 1009 + type: string 1010 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 1011 + name: Status 1012 + type: string 1013 + - jsonPath: .spec.sourceRef.name 1014 + name: Source 1015 + type: string 1016 + name: v1 1017 + schema: 1018 + openAPIV3Schema: 1019 + description: ExternalArtifact is the Schema for the external artifacts API 1020 + properties: 1021 + apiVersion: 1022 + description: |- 1023 + APIVersion defines the versioned schema of this representation of an object. 1024 + Servers should convert recognized schemas to the latest internal value, and 1025 + may reject unrecognized values. 1026 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 1027 + type: string 1028 + kind: 1029 + description: |- 1030 + Kind is a string value representing the REST resource this object represents. 1031 + Servers may infer this from the endpoint the client submits requests to. 1032 + Cannot be updated. 1033 + In CamelCase. 1034 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 1035 + type: string 1036 + metadata: 1037 + type: object 1038 + spec: 1039 + description: ExternalArtifactSpec defines the desired state of ExternalArtifact 1040 + properties: 1041 + sourceRef: 1042 + description: |- 1043 + SourceRef points to the Kubernetes custom resource for 1044 + which the artifact is generated. 1045 + properties: 1046 + apiVersion: 1047 + description: API version of the referent, if not specified the 1048 + Kubernetes preferred version will be used. 1049 + type: string 1050 + kind: 1051 + description: Kind of the referent. 1052 + type: string 1053 + name: 1054 + description: Name of the referent. 1055 + type: string 1056 + namespace: 1057 + description: Namespace of the referent, when not specified it 1058 + acts as LocalObjectReference. 1059 + type: string 1060 + required: 1061 + - kind 1062 + - name 1063 + type: object 1064 + type: object 1065 + status: 1066 + description: ExternalArtifactStatus defines the observed state of ExternalArtifact 1067 + properties: 1068 + artifact: 1069 + description: Artifact represents the output of an ExternalArtifact 1070 + reconciliation. 1071 + properties: 1072 + digest: 1073 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 1074 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1075 + type: string 1076 + lastUpdateTime: 1077 + description: |- 1078 + LastUpdateTime is the timestamp corresponding to the last update of the 1079 + Artifact. 1080 + format: date-time 1081 + type: string 1082 + metadata: 1083 + additionalProperties: 1084 + type: string 1085 + description: Metadata holds upstream information such as OCI annotations. 1086 + type: object 1087 + path: 1088 + description: |- 1089 + Path is the relative file path of the Artifact. It can be used to locate 1090 + the file in the root of the Artifact storage on the local file system of 1091 + the controller managing the Source. 1092 + type: string 1093 + revision: 1094 + description: |- 1095 + Revision is a human-readable identifier traceable in the origin source 1096 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 1097 + type: string 1098 + size: 1099 + description: Size is the number of bytes in the file. 1100 + format: int64 1101 + type: integer 1102 + url: 1103 + description: |- 1104 + URL is the HTTP address of the Artifact as exposed by the controller 1105 + managing the Source. It can be used to retrieve the Artifact for 1106 + consumption, e.g. by another controller applying the Artifact contents. 1107 + type: string 1108 + required: 1109 + - digest 1110 + - lastUpdateTime 1111 + - path 1112 + - revision 1113 + - url 1114 + type: object 1115 + conditions: 1116 + description: Conditions holds the conditions for the ExternalArtifact. 1117 + items: 1118 + description: Condition contains details for one aspect of the current 1119 + state of this API Resource. 1120 properties: 1121 - name: 1122 - description: Name of the referent. 1123 + lastTransitionTime: 1124 + description: |- 1125 + lastTransitionTime is the last time the condition transitioned from one status to another. 1126 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 1127 + format: date-time 1128 + type: string 1129 + message: 1130 + description: |- 1131 + message is a human readable message indicating details about the transition. 1132 + This may be an empty string. 1133 + maxLength: 32768 1134 + type: string 1135 + observedGeneration: 1136 + description: |- 1137 + observedGeneration represents the .metadata.generation that the condition was set based upon. 1138 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 1139 + with respect to the current state of the instance. 1140 + format: int64 1141 + minimum: 0 1142 + type: integer 1143 + reason: 1144 + description: |- 1145 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 1146 + Producers of specific condition types may define expected values and meanings for this field, 1147 + and whether the values are considered a guaranteed API. 1148 + The value should be a CamelCase string. 1149 + This field may not be empty. 1150 + maxLength: 1024 1151 + minLength: 1 1152 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 1153 + type: string 1154 + status: 1155 + description: status of the condition, one of True, False, Unknown. 1156 + enum: 1157 + - "True" 1158 + - "False" 1159 + - Unknown 1160 + type: string 1161 + type: 1162 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 1163 + maxLength: 316 1164 + 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])$ 1165 type: string 1166 required: 1167 - - name 1168 + - lastTransitionTime 1169 + - message 1170 + - reason 1171 + - status 1172 + - type 1173 type: object 1174 - serviceAccountName: 1175 - description: |- 1176 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 1177 - the bucket. This field is only supported for the 'gcp' and 'aws' providers. 1178 - For more information about workload identity: 1179 - https://fluxcd.io/flux/components/source/buckets/#workload-identity 1180 - type: string 1181 - sts: 1182 - description: |- 1183 - STS specifies the required configuration to use a Security Token 1184 - Service for fetching temporary credentials to authenticate in a 1185 - Bucket provider. 1186 - 1187 - This field is only supported for the `aws` and `generic` providers. 1188 + type: array 1189 + type: object 1190 + type: object 1191 + served: true 1192 + storage: true 1193 + subresources: 1194 + status: {} 1195 +--- 1196 +apiVersion: apiextensions.k8s.io/v1 1197 +kind: CustomResourceDefinition 1198 +metadata: 1199 + annotations: 1200 + controller-gen.kubebuilder.io/version: v0.19.0 1201 + labels: 1202 + app.kubernetes.io/component: source-controller 1203 + app.kubernetes.io/instance: flux-system 1204 + app.kubernetes.io/part-of: flux 1205 + app.kubernetes.io/version: v2.8.0 1206 + name: gitrepositories.source.toolkit.fluxcd.io 1207 +spec: 1208 + group: source.toolkit.fluxcd.io 1209 + names: 1210 + kind: GitRepository 1211 + listKind: GitRepositoryList 1212 + plural: gitrepositories 1213 + shortNames: 1214 + - gitrepo 1215 + singular: gitrepository 1216 + scope: Namespaced 1217 + versions: 1218 + - additionalPrinterColumns: 1219 + - jsonPath: .spec.url 1220 + name: URL 1221 + type: string 1222 + - jsonPath: .metadata.creationTimestamp 1223 + name: Age 1224 + type: date 1225 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 1226 + name: Ready 1227 + type: string 1228 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 1229 + name: Status 1230 + type: string 1231 + name: v1 1232 + schema: 1233 + openAPIV3Schema: 1234 + description: GitRepository is the Schema for the gitrepositories API. 1235 + properties: 1236 + apiVersion: 1237 + description: |- 1238 + APIVersion defines the versioned schema of this representation of an object. 1239 + Servers should convert recognized schemas to the latest internal value, and 1240 + may reject unrecognized values. 1241 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 1242 + type: string 1243 + kind: 1244 + description: |- 1245 + Kind is a string value representing the REST resource this object represents. 1246 + Servers may infer this from the endpoint the client submits requests to. 1247 + Cannot be updated. 1248 + In CamelCase. 1249 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 1250 + type: string 1251 + metadata: 1252 + type: object 1253 + spec: 1254 + description: |- 1255 + GitRepositorySpec specifies the required configuration to produce an 1256 + Artifact for a Git repository. 1257 + properties: 1258 + ignore: 1259 + description: |- 1260 + Ignore overrides the set of excluded patterns in the .sourceignore format 1261 + (which is the same as .gitignore). If not provided, a default will be used, 1262 + consult the documentation for your version to find out what those are. 1263 + type: string 1264 + include: 1265 + description: |- 1266 + Include specifies a list of GitRepository resources which Artifacts 1267 + should be included in the Artifact produced for this GitRepository. 1268 + items: 1269 + description: |- 1270 + GitRepositoryInclude specifies a local reference to a GitRepository which 1271 + Artifact (sub-)contents must be included, and where they should be placed. 1272 properties: 1273 - certSecretRef: 1274 + fromPath: 1275 description: |- 1276 - CertSecretRef can be given the name of a Secret containing 1277 - either or both of 1278 - 1279 - - a PEM-encoded client certificate (`tls.crt`) and private 1280 - key (`tls.key`); 1281 - - a PEM-encoded CA certificate (`ca.crt`) 1282 - 1283 - and whichever are supplied, will be used for connecting to the 1284 - STS endpoint. The client cert and key are useful if you are 1285 - authenticating with a certificate; the CA cert is useful if 1286 - you are using a self-signed server certificate. The Secret must 1287 - be of type `Opaque` or `kubernetes.io/tls`. 1288 - 1289 - This field is only supported for the `ldap` provider. 1290 + FromPath specifies the path to copy contents from, defaults to the root 1291 + of the Artifact. 1292 + type: string 1293 + repository: 1294 + description: |- 1295 + GitRepositoryRef specifies the GitRepository which Artifact contents 1296 + must be included. 1297 properties: 1298 name: 1299 description: Name of the referent. 1300 type: string 1301 required: 1302 - - name 1303 + - name 1304 type: object 1305 - endpoint: 1306 + toPath: 1307 description: |- 1308 - Endpoint is the HTTP/S endpoint of the Security Token Service from 1309 - where temporary credentials will be fetched. 1310 - pattern: ^(http|https)://.*$ 1311 + ToPath specifies the path to copy contents to, defaults to the name of 1312 + the GitRepositoryRef. 1313 type: string 1314 - provider: 1315 - description: Provider of the Security Token Service. 1316 - enum: 1317 - - aws 1318 - - ldap 1319 + required: 1320 + - repository 1321 + type: object 1322 + type: array 1323 + interval: 1324 + description: |- 1325 + Interval at which the GitRepository URL is checked for updates. 1326 + This interval is approximate and may be subject to jitter to ensure 1327 + efficient use of resources. 1328 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 1329 + type: string 1330 + provider: 1331 + description: |- 1332 + Provider used for authentication, can be 'azure', 'github', 'generic'. 1333 + When not specified, defaults to 'generic'. 1334 + enum: 1335 + - generic 1336 + - azure 1337 + - github 1338 + type: string 1339 + proxySecretRef: 1340 + description: |- 1341 + ProxySecretRef specifies the Secret containing the proxy configuration 1342 + to use while communicating with the Git server. 1343 + properties: 1344 + name: 1345 + description: Name of the referent. 1346 + type: string 1347 + required: 1348 + - name 1349 + type: object 1350 + recurseSubmodules: 1351 + description: |- 1352 + RecurseSubmodules enables the initialization of all submodules within 1353 + the GitRepository as cloned from the URL, using their default settings. 1354 + type: boolean 1355 + ref: 1356 + description: |- 1357 + Reference specifies the Git reference to resolve and monitor for 1358 + changes, defaults to the 'master' branch. 1359 + properties: 1360 + branch: 1361 + description: Branch to check out, defaults to 'master' if no other 1362 + field is defined. 1363 + type: string 1364 + commit: 1365 + description: |- 1366 + Commit SHA to check out, takes precedence over all reference fields. 1367 + 1368 + This can be combined with Branch to shallow clone the branch, in which 1369 + the commit is expected to exist. 1370 + type: string 1371 + name: 1372 + description: |- 1373 + Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 1374 + 1375 + It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 1376 + Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 1377 + type: string 1378 + semver: 1379 + description: SemVer tag expression to check out, takes precedence 1380 + over Tag. 1381 + type: string 1382 + tag: 1383 + description: Tag to check out, takes precedence over Branch. 1384 + type: string 1385 + type: object 1386 + secretRef: 1387 + description: |- 1388 + SecretRef specifies the Secret containing authentication credentials for 1389 + the GitRepository. 1390 + For HTTPS repositories the Secret must contain 'username' and 'password' 1391 + fields for basic auth or 'bearerToken' field for token auth. 1392 + For SSH repositories the Secret must contain 'identity' 1393 + and 'known_hosts' fields. 1394 + properties: 1395 + name: 1396 + description: Name of the referent. 1397 + type: string 1398 + required: 1399 + - name 1400 + type: object 1401 + serviceAccountName: 1402 + description: |- 1403 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to 1404 + authenticate to the GitRepository. This field is only supported for 'azure' provider. 1405 + type: string 1406 + sparseCheckout: 1407 + description: |- 1408 + SparseCheckout specifies a list of directories to checkout when cloning 1409 + the repository. If specified, only these directories are included in the 1410 + Artifact produced for this GitRepository. 1411 + items: 1412 + type: string 1413 + type: array 1414 + suspend: 1415 + description: |- 1416 + Suspend tells the controller to suspend the reconciliation of this 1417 + GitRepository. 1418 + type: boolean 1419 + timeout: 1420 + default: 60s 1421 + description: Timeout for Git operations like cloning, defaults to 1422 + 60s. 1423 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 1424 + type: string 1425 + url: 1426 + description: URL specifies the Git repository URL, it can be an HTTP/S 1427 + or SSH address. 1428 + pattern: ^(http|https|ssh)://.*$ 1429 + type: string 1430 + verify: 1431 + description: |- 1432 + Verification specifies the configuration to verify the Git commit 1433 + signature(s). 1434 + properties: 1435 + mode: 1436 + default: HEAD 1437 + description: |- 1438 + Mode specifies which Git object(s) should be verified. 1439 + 1440 + The variants "head" and "HEAD" both imply the same thing, i.e. verify 1441 + the commit that the HEAD of the Git repository points to. The variant 1442 + "head" solely exists to ensure backwards compatibility. 1443 + enum: 1444 + - head 1445 + - HEAD 1446 + - Tag 1447 + - TagAndHEAD 1448 + type: string 1449 + secretRef: 1450 + description: |- 1451 + SecretRef specifies the Secret containing the public keys of trusted Git 1452 + authors. 1453 + properties: 1454 + name: 1455 + description: Name of the referent. 1456 + type: string 1457 + required: 1458 + - name 1459 + type: object 1460 + required: 1461 + - secretRef 1462 + type: object 1463 + required: 1464 + - interval 1465 + - url 1466 + type: object 1467 + x-kubernetes-validations: 1468 + - message: serviceAccountName can only be set when provider is 'azure' 1469 + rule: '!has(self.serviceAccountName) || (has(self.provider) && self.provider 1470 + == ''azure'')' 1471 + status: 1472 + default: 1473 + observedGeneration: -1 1474 + description: GitRepositoryStatus records the observed state of a Git repository. 1475 + properties: 1476 + artifact: 1477 + description: Artifact represents the last successful GitRepository 1478 + reconciliation. 1479 + properties: 1480 + digest: 1481 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 1482 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1483 + type: string 1484 + lastUpdateTime: 1485 + description: |- 1486 + LastUpdateTime is the timestamp corresponding to the last update of the 1487 + Artifact. 1488 + format: date-time 1489 + type: string 1490 + metadata: 1491 + additionalProperties: 1492 + type: string 1493 + description: Metadata holds upstream information such as OCI annotations. 1494 + type: object 1495 + path: 1496 + description: |- 1497 + Path is the relative file path of the Artifact. It can be used to locate 1498 + the file in the root of the Artifact storage on the local file system of 1499 + the controller managing the Source. 1500 + type: string 1501 + revision: 1502 + description: |- 1503 + Revision is a human-readable identifier traceable in the origin source 1504 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 1505 + type: string 1506 + size: 1507 + description: Size is the number of bytes in the file. 1508 + format: int64 1509 + type: integer 1510 + url: 1511 + description: |- 1512 + URL is the HTTP address of the Artifact as exposed by the controller 1513 + managing the Source. It can be used to retrieve the Artifact for 1514 + consumption, e.g. by another controller applying the Artifact contents. 1515 + type: string 1516 + required: 1517 + - digest 1518 + - lastUpdateTime 1519 + - path 1520 + - revision 1521 + - url 1522 + type: object 1523 + conditions: 1524 + description: Conditions holds the conditions for the GitRepository. 1525 + items: 1526 + description: Condition contains details for one aspect of the current 1527 + state of this API Resource. 1528 + properties: 1529 + lastTransitionTime: 1530 + description: |- 1531 + lastTransitionTime is the last time the condition transitioned from one status to another. 1532 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 1533 + format: date-time 1534 type: string 1535 - secretRef: 1536 + message: 1537 description: |- 1538 - SecretRef specifies the Secret containing authentication credentials 1539 - for the STS endpoint. This Secret must contain the fields `username` 1540 - and `password` and is supported only for the `ldap` provider. 1541 - properties: 1542 - name: 1543 - description: Name of the referent. 1544 - type: string 1545 - required: 1546 - - name 1547 - type: object 1548 + message is a human readable message indicating details about the transition. 1549 + This may be an empty string. 1550 + maxLength: 32768 1551 + type: string 1552 + observedGeneration: 1553 + description: |- 1554 + observedGeneration represents the .metadata.generation that the condition was set based upon. 1555 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 1556 + with respect to the current state of the instance. 1557 + format: int64 1558 + minimum: 0 1559 + type: integer 1560 + reason: 1561 + description: |- 1562 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 1563 + Producers of specific condition types may define expected values and meanings for this field, 1564 + and whether the values are considered a guaranteed API. 1565 + The value should be a CamelCase string. 1566 + This field may not be empty. 1567 + maxLength: 1024 1568 + minLength: 1 1569 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 1570 + type: string 1571 + status: 1572 + description: status of the condition, one of True, False, Unknown. 1573 + enum: 1574 + - "True" 1575 + - "False" 1576 + - Unknown 1577 + type: string 1578 + type: 1579 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 1580 + maxLength: 316 1581 + 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])$ 1582 + type: string 1583 required: 1584 - - endpoint 1585 - - provider 1586 + - lastTransitionTime 1587 + - message 1588 + - reason 1589 + - status 1590 + - type 1591 type: object 1592 - suspend: 1593 - description: |- 1594 - Suspend tells the controller to suspend the reconciliation of this 1595 - Bucket. 1596 - type: boolean 1597 - timeout: 1598 - default: 60s 1599 - description: Timeout for fetch operations, defaults to 60s. 1600 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 1601 - type: string 1602 - required: 1603 - - bucketName 1604 - - endpoint 1605 - - interval 1606 - type: object 1607 - x-kubernetes-validations: 1608 - - message: STS configuration is only supported for the 'aws' and 'generic' Bucket providers 1609 - rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts) 1610 - - message: '''aws'' is the only supported STS provider for the ''aws'' Bucket provider' 1611 - rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider == 'aws' 1612 - - message: '''ldap'' is the only supported STS provider for the ''generic'' Bucket provider' 1613 - rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider == 'ldap' 1614 - - message: spec.sts.secretRef is not required for the 'aws' STS provider 1615 - rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)' 1616 - - message: spec.sts.certSecretRef is not required for the 'aws' STS provider 1617 - rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)' 1618 - - message: ServiceAccountName is not supported for the 'generic' Bucket provider 1619 - rule: self.provider != 'generic' || !has(self.serviceAccountName) 1620 - - message: cannot set both .spec.secretRef and .spec.serviceAccountName 1621 - rule: '!has(self.secretRef) || !has(self.serviceAccountName)' 1622 - status: 1623 - default: 1624 - observedGeneration: -1 1625 - description: BucketStatus records the observed state of a Bucket. 1626 - properties: 1627 - artifact: 1628 - description: Artifact represents the last successful Bucket reconciliation. 1629 + type: array 1630 + includedArtifacts: 1631 + description: |- 1632 + IncludedArtifacts contains a list of the last successfully included 1633 + Artifacts as instructed by GitRepositorySpec.Include. 1634 + items: 1635 + description: Artifact represents the output of a Source reconciliation. 1636 properties: 1637 digest: 1638 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 1639 + description: Digest is the digest of the file in the form of 1640 + '<algorithm>:<checksum>'. 1641 pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 1642 type: string 1643 lastUpdateTime: 1644 @@ -567,7 +1269,8 @@ spec: 1645 metadata: 1646 additionalProperties: 1647 type: string 1648 - description: Metadata holds upstream information such as OCI annotations. 1649 + description: Metadata holds upstream information such as OCI 1650 + annotations. 1651 type: object 1652 path: 1653 description: |- 1654 @@ -591,469 +1294,87 @@ spec: 1655 consumption, e.g. by another controller applying the Artifact contents. 1656 type: string 1657 required: 1658 - - digest 1659 - - lastUpdateTime 1660 - - path 1661 - - revision 1662 - - url 1663 + - digest 1664 + - lastUpdateTime 1665 + - path 1666 + - revision 1667 + - url 1668 type: object 1669 - conditions: 1670 - description: Conditions holds the conditions for the Bucket. 1671 - items: 1672 - description: Condition contains details for one aspect of the current state of this API Resource. 1673 - properties: 1674 - lastTransitionTime: 1675 - description: |- 1676 - lastTransitionTime is the last time the condition transitioned from one status to another. 1677 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 1678 - format: date-time 1679 - type: string 1680 - message: 1681 - description: |- 1682 - message is a human readable message indicating details about the transition. 1683 - This may be an empty string. 1684 - maxLength: 32768 1685 - type: string 1686 - observedGeneration: 1687 - description: |- 1688 - observedGeneration represents the .metadata.generation that the condition was set based upon. 1689 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 1690 - with respect to the current state of the instance. 1691 - format: int64 1692 - minimum: 0 1693 - type: integer 1694 - reason: 1695 - description: |- 1696 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 1697 - Producers of specific condition types may define expected values and meanings for this field, 1698 - and whether the values are considered a guaranteed API. 1699 - The value should be a CamelCase string. 1700 - This field may not be empty. 1701 - maxLength: 1024 1702 - minLength: 1 1703 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 1704 - type: string 1705 - status: 1706 - description: status of the condition, one of True, False, Unknown. 1707 - enum: 1708 - - "True" 1709 - - "False" 1710 - - Unknown 1711 - type: string 1712 - type: 1713 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 1714 - maxLength: 316 1715 - 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])$ 1716 - type: string 1717 - required: 1718 - - lastTransitionTime 1719 - - message 1720 - - reason 1721 - - status 1722 - - type 1723 - type: object 1724 - type: array 1725 - lastHandledReconcileAt: 1726 - description: |- 1727 - LastHandledReconcileAt holds the value of the most recent 1728 - reconcile request value, so a change of the annotation value 1729 - can be detected. 1730 - type: string 1731 - observedGeneration: 1732 - description: ObservedGeneration is the last observed generation of the Bucket object. 1733 - format: int64 1734 - type: integer 1735 - observedIgnore: 1736 - description: |- 1737 - ObservedIgnore is the observed exclusion patterns used for constructing 1738 - the source artifact. 1739 - type: string 1740 - url: 1741 - description: |- 1742 - URL is the dynamic fetch link for the latest Artifact. 1743 - It is provided on a "best effort" basis, and using the precise 1744 - BucketStatus.Artifact data is recommended. 1745 - type: string 1746 - type: object 1747 - type: object 1748 - served: true 1749 - storage: true 1750 - subresources: 1751 - status: {} 1752 - - additionalPrinterColumns: 1753 - - jsonPath: .spec.endpoint 1754 - name: Endpoint 1755 - type: string 1756 - - jsonPath: .metadata.creationTimestamp 1757 - name: Age 1758 - type: date 1759 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 1760 - name: Ready 1761 - type: string 1762 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 1763 - name: Status 1764 - type: string 1765 - deprecated: true 1766 - deprecationWarning: v1beta2 Bucket is deprecated, upgrade to v1 1767 - name: v1beta2 1768 - schema: 1769 - openAPIV3Schema: 1770 - description: Bucket is the Schema for the buckets API. 1771 - properties: 1772 - apiVersion: 1773 - description: |- 1774 - APIVersion defines the versioned schema of this representation of an object. 1775 - Servers should convert recognized schemas to the latest internal value, and 1776 - may reject unrecognized values. 1777 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 1778 - type: string 1779 - kind: 1780 - description: |- 1781 - Kind is a string value representing the REST resource this object represents. 1782 - Servers may infer this from the endpoint the client submits requests to. 1783 - Cannot be updated. 1784 - In CamelCase. 1785 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 1786 - type: string 1787 - metadata: 1788 - type: object 1789 - spec: 1790 - description: |- 1791 - BucketSpec specifies the required configuration to produce an Artifact for 1792 - an object storage bucket. 1793 - properties: 1794 - accessFrom: 1795 - description: |- 1796 - AccessFrom specifies an Access Control List for allowing cross-namespace 1797 - references to this object. 1798 - NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 1799 - properties: 1800 - namespaceSelectors: 1801 - description: |- 1802 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 1803 - Items in this list are evaluated using a logical OR operation. 1804 - items: 1805 - description: |- 1806 - NamespaceSelector selects the namespaces to which this ACL applies. 1807 - An empty map of MatchLabels matches all namespaces in a cluster. 1808 - properties: 1809 - matchLabels: 1810 - additionalProperties: 1811 - type: string 1812 - description: |- 1813 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 1814 - map is equivalent to an element of matchExpressions, whose key field is "key", the 1815 - operator is "In", and the values array contains only "value". The requirements are ANDed. 1816 - type: object 1817 - type: object 1818 - type: array 1819 - required: 1820 - - namespaceSelectors 1821 - type: object 1822 - bucketName: 1823 - description: BucketName is the name of the object storage bucket. 1824 - type: string 1825 - certSecretRef: 1826 - description: |- 1827 - CertSecretRef can be given the name of a Secret containing 1828 - either or both of 1829 - 1830 - - a PEM-encoded client certificate (`tls.crt`) and private 1831 - key (`tls.key`); 1832 - - a PEM-encoded CA certificate (`ca.crt`) 1833 - 1834 - and whichever are supplied, will be used for connecting to the 1835 - bucket. The client cert and key are useful if you are 1836 - authenticating with a certificate; the CA cert is useful if 1837 - you are using a self-signed server certificate. The Secret must 1838 - be of type `Opaque` or `kubernetes.io/tls`. 1839 - 1840 - This field is only supported for the `generic` provider. 1841 - properties: 1842 - name: 1843 - description: Name of the referent. 1844 - type: string 1845 - required: 1846 - - name 1847 - type: object 1848 - endpoint: 1849 - description: Endpoint is the object storage address the BucketName is located at. 1850 - type: string 1851 - ignore: 1852 - description: |- 1853 - Ignore overrides the set of excluded patterns in the .sourceignore format 1854 - (which is the same as .gitignore). If not provided, a default will be used, 1855 - consult the documentation for your version to find out what those are. 1856 - type: string 1857 - insecure: 1858 - description: Insecure allows connecting to a non-TLS HTTP Endpoint. 1859 - type: boolean 1860 - interval: 1861 - description: |- 1862 - Interval at which the Bucket Endpoint is checked for updates. 1863 - This interval is approximate and may be subject to jitter to ensure 1864 - efficient use of resources. 1865 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 1866 - type: string 1867 - prefix: 1868 - description: Prefix to use for server-side filtering of files in the Bucket. 1869 - type: string 1870 - provider: 1871 - default: generic 1872 - description: |- 1873 - Provider of the object storage bucket. 1874 - Defaults to 'generic', which expects an S3 (API) compatible object 1875 - storage. 1876 - enum: 1877 - - generic 1878 - - aws 1879 - - gcp 1880 - - azure 1881 - type: string 1882 - proxySecretRef: 1883 - description: |- 1884 - ProxySecretRef specifies the Secret containing the proxy configuration 1885 - to use while communicating with the Bucket server. 1886 - properties: 1887 - name: 1888 - description: Name of the referent. 1889 - type: string 1890 - required: 1891 - - name 1892 - type: object 1893 - region: 1894 - description: Region of the Endpoint where the BucketName is located in. 1895 - type: string 1896 - secretRef: 1897 - description: |- 1898 - SecretRef specifies the Secret containing authentication credentials 1899 - for the Bucket. 1900 - properties: 1901 - name: 1902 - description: Name of the referent. 1903 - type: string 1904 - required: 1905 - - name 1906 - type: object 1907 - sts: 1908 - description: |- 1909 - STS specifies the required configuration to use a Security Token 1910 - Service for fetching temporary credentials to authenticate in a 1911 - Bucket provider. 1912 - 1913 - This field is only supported for the `aws` and `generic` providers. 1914 + type: array 1915 + lastHandledReconcileAt: 1916 + description: |- 1917 + LastHandledReconcileAt holds the value of the most recent 1918 + reconcile request value, so a change of the annotation value 1919 + can be detected. 1920 + type: string 1921 + observedGeneration: 1922 + description: |- 1923 + ObservedGeneration is the last observed generation of the GitRepository 1924 + object. 1925 + format: int64 1926 + type: integer 1927 + observedIgnore: 1928 + description: |- 1929 + ObservedIgnore is the observed exclusion patterns used for constructing 1930 + the source artifact. 1931 + type: string 1932 + observedInclude: 1933 + description: |- 1934 + ObservedInclude is the observed list of GitRepository resources used to 1935 + produce the current Artifact. 1936 + items: 1937 + description: |- 1938 + GitRepositoryInclude specifies a local reference to a GitRepository which 1939 + Artifact (sub-)contents must be included, and where they should be placed. 1940 properties: 1941 - certSecretRef: 1942 - description: |- 1943 - CertSecretRef can be given the name of a Secret containing 1944 - either or both of 1945 - 1946 - - a PEM-encoded client certificate (`tls.crt`) and private 1947 - key (`tls.key`); 1948 - - a PEM-encoded CA certificate (`ca.crt`) 1949 - 1950 - and whichever are supplied, will be used for connecting to the 1951 - STS endpoint. The client cert and key are useful if you are 1952 - authenticating with a certificate; the CA cert is useful if 1953 - you are using a self-signed server certificate. The Secret must 1954 - be of type `Opaque` or `kubernetes.io/tls`. 1955 - 1956 - This field is only supported for the `ldap` provider. 1957 - properties: 1958 - name: 1959 - description: Name of the referent. 1960 - type: string 1961 - required: 1962 - - name 1963 - type: object 1964 - endpoint: 1965 + fromPath: 1966 description: |- 1967 - Endpoint is the HTTP/S endpoint of the Security Token Service from 1968 - where temporary credentials will be fetched. 1969 - pattern: ^(http|https)://.*$ 1970 - type: string 1971 - provider: 1972 - description: Provider of the Security Token Service. 1973 - enum: 1974 - - aws 1975 - - ldap 1976 + FromPath specifies the path to copy contents from, defaults to the root 1977 + of the Artifact. 1978 type: string 1979 - secretRef: 1980 + repository: 1981 description: |- 1982 - SecretRef specifies the Secret containing authentication credentials 1983 - for the STS endpoint. This Secret must contain the fields `username` 1984 - and `password` and is supported only for the `ldap` provider. 1985 + GitRepositoryRef specifies the GitRepository which Artifact contents 1986 + must be included. 1987 properties: 1988 name: 1989 description: Name of the referent. 1990 type: string 1991 required: 1992 - - name 1993 - type: object 1994 - required: 1995 - - endpoint 1996 - - provider 1997 - type: object 1998 - suspend: 1999 - description: |- 2000 - Suspend tells the controller to suspend the reconciliation of this 2001 - Bucket. 2002 - type: boolean 2003 - timeout: 2004 - default: 60s 2005 - description: Timeout for fetch operations, defaults to 60s. 2006 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 2007 - type: string 2008 - required: 2009 - - bucketName 2010 - - endpoint 2011 - - interval 2012 - type: object 2013 - x-kubernetes-validations: 2014 - - message: STS configuration is only supported for the 'aws' and 'generic' Bucket providers 2015 - rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts) 2016 - - message: '''aws'' is the only supported STS provider for the ''aws'' Bucket provider' 2017 - rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider == 'aws' 2018 - - message: '''ldap'' is the only supported STS provider for the ''generic'' Bucket provider' 2019 - rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider == 'ldap' 2020 - - message: spec.sts.secretRef is not required for the 'aws' STS provider 2021 - rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)' 2022 - - message: spec.sts.certSecretRef is not required for the 'aws' STS provider 2023 - rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)' 2024 - status: 2025 - default: 2026 - observedGeneration: -1 2027 - description: BucketStatus records the observed state of a Bucket. 2028 - properties: 2029 - artifact: 2030 - description: Artifact represents the last successful Bucket reconciliation. 2031 - properties: 2032 - digest: 2033 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 2034 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 2035 - type: string 2036 - lastUpdateTime: 2037 - description: |- 2038 - LastUpdateTime is the timestamp corresponding to the last update of the 2039 - Artifact. 2040 - format: date-time 2041 - type: string 2042 - metadata: 2043 - additionalProperties: 2044 - type: string 2045 - description: Metadata holds upstream information such as OCI annotations. 2046 + - name 2047 type: object 2048 - path: 2049 - description: |- 2050 - Path is the relative file path of the Artifact. It can be used to locate 2051 - the file in the root of the Artifact storage on the local file system of 2052 - the controller managing the Source. 2053 - type: string 2054 - revision: 2055 - description: |- 2056 - Revision is a human-readable identifier traceable in the origin source 2057 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2058 - type: string 2059 - size: 2060 - description: Size is the number of bytes in the file. 2061 - format: int64 2062 - type: integer 2063 - url: 2064 + toPath: 2065 description: |- 2066 - URL is the HTTP address of the Artifact as exposed by the controller 2067 - managing the Source. It can be used to retrieve the Artifact for 2068 - consumption, e.g. by another controller applying the Artifact contents. 2069 + ToPath specifies the path to copy contents to, defaults to the name of 2070 + the GitRepositoryRef. 2071 type: string 2072 required: 2073 - - digest 2074 - - lastUpdateTime 2075 - - path 2076 - - revision 2077 - - url 2078 + - repository 2079 type: object 2080 - conditions: 2081 - description: Conditions holds the conditions for the Bucket. 2082 - items: 2083 - description: Condition contains details for one aspect of the current state of this API Resource. 2084 - properties: 2085 - lastTransitionTime: 2086 - description: |- 2087 - lastTransitionTime is the last time the condition transitioned from one status to another. 2088 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 2089 - format: date-time 2090 - type: string 2091 - message: 2092 - description: |- 2093 - message is a human readable message indicating details about the transition. 2094 - This may be an empty string. 2095 - maxLength: 32768 2096 - type: string 2097 - observedGeneration: 2098 - description: |- 2099 - observedGeneration represents the .metadata.generation that the condition was set based upon. 2100 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 2101 - with respect to the current state of the instance. 2102 - format: int64 2103 - minimum: 0 2104 - type: integer 2105 - reason: 2106 - description: |- 2107 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 2108 - Producers of specific condition types may define expected values and meanings for this field, 2109 - and whether the values are considered a guaranteed API. 2110 - The value should be a CamelCase string. 2111 - This field may not be empty. 2112 - maxLength: 1024 2113 - minLength: 1 2114 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 2115 - type: string 2116 - status: 2117 - description: status of the condition, one of True, False, Unknown. 2118 - enum: 2119 - - "True" 2120 - - "False" 2121 - - Unknown 2122 - type: string 2123 - type: 2124 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 2125 - maxLength: 316 2126 - 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])$ 2127 - type: string 2128 - required: 2129 - - lastTransitionTime 2130 - - message 2131 - - reason 2132 - - status 2133 - - type 2134 - type: object 2135 - type: array 2136 - lastHandledReconcileAt: 2137 - description: |- 2138 - LastHandledReconcileAt holds the value of the most recent 2139 - reconcile request value, so a change of the annotation value 2140 - can be detected. 2141 - type: string 2142 - observedGeneration: 2143 - description: ObservedGeneration is the last observed generation of the Bucket object. 2144 - format: int64 2145 - type: integer 2146 - observedIgnore: 2147 - description: |- 2148 - ObservedIgnore is the observed exclusion patterns used for constructing 2149 - the source artifact. 2150 - type: string 2151 - url: 2152 - description: |- 2153 - URL is the dynamic fetch link for the latest Artifact. 2154 - It is provided on a "best effort" basis, and using the precise 2155 - BucketStatus.Artifact data is recommended. 2156 - type: string 2157 - type: object 2158 - type: object 2159 - served: true 2160 - storage: false 2161 - subresources: 2162 - status: {} 2163 + type: array 2164 + observedRecurseSubmodules: 2165 + description: |- 2166 + ObservedRecurseSubmodules is the observed resource submodules 2167 + configuration used to produce the current Artifact. 2168 + type: boolean 2169 + observedSparseCheckout: 2170 + description: |- 2171 + ObservedSparseCheckout is the observed list of directories used to 2172 + produce the current Artifact. 2173 + items: 2174 + type: string 2175 + type: array 2176 + sourceVerificationMode: 2177 + description: |- 2178 + SourceVerificationMode is the last used verification mode indicating 2179 + which Git object(s) have been verified. 2180 + type: string 2181 + type: object 2182 + type: object 2183 + served: true 2184 + storage: true 2185 + subresources: 2186 + status: {} 2187 --- 2188 apiVersion: apiextensions.k8s.io/v1 2189 kind: CustomResourceDefinition 2190 @@ -1064,188 +1385,355 @@ metadata: 2191 app.kubernetes.io/component: source-controller 2192 app.kubernetes.io/instance: flux-system 2193 app.kubernetes.io/part-of: flux 2194 - app.kubernetes.io/version: v2.7.5 2195 - name: externalartifacts.source.toolkit.fluxcd.io 2196 + app.kubernetes.io/version: v2.8.0 2197 + name: helmcharts.source.toolkit.fluxcd.io 2198 spec: 2199 group: source.toolkit.fluxcd.io 2200 names: 2201 - kind: ExternalArtifact 2202 - listKind: ExternalArtifactList 2203 - plural: externalartifacts 2204 - singular: externalartifact 2205 + kind: HelmChart 2206 + listKind: HelmChartList 2207 + plural: helmcharts 2208 + shortNames: 2209 + - hc 2210 + singular: helmchart 2211 scope: Namespaced 2212 versions: 2213 - - additionalPrinterColumns: 2214 - - jsonPath: .metadata.creationTimestamp 2215 - name: Age 2216 - type: date 2217 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 2218 - name: Ready 2219 - type: string 2220 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 2221 - name: Status 2222 - type: string 2223 - - jsonPath: .spec.sourceRef.name 2224 - name: Source 2225 - type: string 2226 - name: v1 2227 - schema: 2228 - openAPIV3Schema: 2229 - description: ExternalArtifact is the Schema for the external artifacts API 2230 - properties: 2231 - apiVersion: 2232 - description: |- 2233 - APIVersion defines the versioned schema of this representation of an object. 2234 - Servers should convert recognized schemas to the latest internal value, and 2235 - may reject unrecognized values. 2236 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 2237 - type: string 2238 - kind: 2239 - description: |- 2240 - Kind is a string value representing the REST resource this object represents. 2241 - Servers may infer this from the endpoint the client submits requests to. 2242 - Cannot be updated. 2243 - In CamelCase. 2244 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 2245 - type: string 2246 - metadata: 2247 - type: object 2248 - spec: 2249 - description: ExternalArtifactSpec defines the desired state of ExternalArtifact 2250 - properties: 2251 - sourceRef: 2252 - description: |- 2253 - SourceRef points to the Kubernetes custom resource for 2254 - which the artifact is generated. 2255 - properties: 2256 - apiVersion: 2257 - description: API version of the referent, if not specified the Kubernetes preferred version will be used. 2258 - type: string 2259 - kind: 2260 - description: Kind of the referent. 2261 - type: string 2262 - name: 2263 - description: Name of the referent. 2264 - type: string 2265 - namespace: 2266 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 2267 - type: string 2268 - required: 2269 - - kind 2270 + - additionalPrinterColumns: 2271 + - jsonPath: .spec.chart 2272 + name: Chart 2273 + type: string 2274 + - jsonPath: .spec.version 2275 + name: Version 2276 + type: string 2277 + - jsonPath: .spec.sourceRef.kind 2278 + name: Source Kind 2279 + type: string 2280 + - jsonPath: .spec.sourceRef.name 2281 + name: Source Name 2282 + type: string 2283 + - jsonPath: .metadata.creationTimestamp 2284 + name: Age 2285 + type: date 2286 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 2287 + name: Ready 2288 + type: string 2289 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 2290 + name: Status 2291 + type: string 2292 + name: v1 2293 + schema: 2294 + openAPIV3Schema: 2295 + description: HelmChart is the Schema for the helmcharts API. 2296 + properties: 2297 + apiVersion: 2298 + description: |- 2299 + APIVersion defines the versioned schema of this representation of an object. 2300 + Servers should convert recognized schemas to the latest internal value, and 2301 + may reject unrecognized values. 2302 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 2303 + type: string 2304 + kind: 2305 + description: |- 2306 + Kind is a string value representing the REST resource this object represents. 2307 + Servers may infer this from the endpoint the client submits requests to. 2308 + Cannot be updated. 2309 + In CamelCase. 2310 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 2311 + type: string 2312 + metadata: 2313 + type: object 2314 + spec: 2315 + description: HelmChartSpec specifies the desired state of a Helm chart. 2316 + properties: 2317 + chart: 2318 + description: |- 2319 + Chart is the name or path the Helm chart is available at in the 2320 + SourceRef. 2321 + type: string 2322 + ignoreMissingValuesFiles: 2323 + description: |- 2324 + IgnoreMissingValuesFiles controls whether to silently ignore missing values 2325 + files rather than failing. 2326 + type: boolean 2327 + interval: 2328 + description: |- 2329 + Interval at which the HelmChart SourceRef is checked for updates. 2330 + This interval is approximate and may be subject to jitter to ensure 2331 + efficient use of resources. 2332 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 2333 + type: string 2334 + reconcileStrategy: 2335 + default: ChartVersion 2336 + description: |- 2337 + ReconcileStrategy determines what enables the creation of a new artifact. 2338 + Valid values are ('ChartVersion', 'Revision'). 2339 + See the documentation of the values for an explanation on their behavior. 2340 + Defaults to ChartVersion when omitted. 2341 + enum: 2342 + - ChartVersion 2343 + - Revision 2344 + type: string 2345 + sourceRef: 2346 + description: SourceRef is the reference to the Source the chart is 2347 + available at. 2348 + properties: 2349 + apiVersion: 2350 + description: APIVersion of the referent. 2351 + type: string 2352 + kind: 2353 + description: |- 2354 + Kind of the referent, valid values are ('HelmRepository', 'GitRepository', 2355 + 'Bucket'). 2356 + enum: 2357 + - HelmRepository 2358 + - GitRepository 2359 + - Bucket 2360 + type: string 2361 + name: 2362 + description: Name of the referent. 2363 + type: string 2364 + required: 2365 + - kind 2366 + - name 2367 + type: object 2368 + suspend: 2369 + description: |- 2370 + Suspend tells the controller to suspend the reconciliation of this 2371 + source. 2372 + type: boolean 2373 + valuesFiles: 2374 + description: |- 2375 + ValuesFiles is an alternative list of values files to use as the chart 2376 + values (values.yaml is not included by default), expected to be a 2377 + relative path in the SourceRef. 2378 + Values files are merged in the order of this list with the last file 2379 + overriding the first. Ignored when omitted. 2380 + items: 2381 + type: string 2382 + type: array 2383 + verify: 2384 + description: |- 2385 + Verify contains the secret name containing the trusted public keys 2386 + used to verify the signature and specifies which provider to use to check 2387 + whether OCI image is authentic. 2388 + This field is only supported when using HelmRepository source with spec.type 'oci'. 2389 + Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. 2390 + properties: 2391 + matchOIDCIdentity: 2392 + description: |- 2393 + MatchOIDCIdentity specifies the identity matching criteria to use 2394 + while verifying an OCI artifact which was signed using Cosign keyless 2395 + signing. The artifact's identity is deemed to be verified if any of the 2396 + specified matchers match against the identity. 2397 + items: 2398 + description: |- 2399 + OIDCIdentityMatch specifies options for verifying the certificate identity, 2400 + i.e. the issuer and the subject of the certificate. 2401 + properties: 2402 + issuer: 2403 + description: |- 2404 + Issuer specifies the regex pattern to match against to verify 2405 + the OIDC issuer in the Fulcio certificate. The pattern must be a 2406 + valid Go regular expression. 2407 + type: string 2408 + subject: 2409 + description: |- 2410 + Subject specifies the regex pattern to match against to verify 2411 + the identity subject in the Fulcio certificate. The pattern must 2412 + be a valid Go regular expression. 2413 + type: string 2414 + required: 2415 + - issuer 2416 + - subject 2417 + type: object 2418 + type: array 2419 + provider: 2420 + default: cosign 2421 + description: Provider specifies the technology used to sign the 2422 + OCI Artifact. 2423 + enum: 2424 + - cosign 2425 + - notation 2426 + type: string 2427 + secretRef: 2428 + description: |- 2429 + SecretRef specifies the Kubernetes Secret containing the 2430 + trusted public keys. 2431 + properties: 2432 + name: 2433 + description: Name of the referent. 2434 + type: string 2435 + required: 2436 - name 2437 - type: object 2438 - type: object 2439 - status: 2440 - description: ExternalArtifactStatus defines the observed state of ExternalArtifact 2441 - properties: 2442 - artifact: 2443 - description: Artifact represents the output of an ExternalArtifact reconciliation. 2444 - properties: 2445 - digest: 2446 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 2447 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 2448 + type: object 2449 + required: 2450 + - provider 2451 + type: object 2452 + version: 2453 + default: '*' 2454 + description: |- 2455 + Version is the chart version semver expression, ignored for charts from 2456 + GitRepository and Bucket sources. Defaults to latest when omitted. 2457 + type: string 2458 + required: 2459 + - chart 2460 + - interval 2461 + - sourceRef 2462 + type: object 2463 + x-kubernetes-validations: 2464 + - message: spec.verify is only supported when spec.sourceRef.kind is 'HelmRepository' 2465 + rule: '!has(self.verify) || self.sourceRef.kind == ''HelmRepository''' 2466 + status: 2467 + default: 2468 + observedGeneration: -1 2469 + description: HelmChartStatus records the observed state of the HelmChart. 2470 + properties: 2471 + artifact: 2472 + description: Artifact represents the output of the last successful 2473 + reconciliation. 2474 + properties: 2475 + digest: 2476 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 2477 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 2478 + type: string 2479 + lastUpdateTime: 2480 + description: |- 2481 + LastUpdateTime is the timestamp corresponding to the last update of the 2482 + Artifact. 2483 + format: date-time 2484 + type: string 2485 + metadata: 2486 + additionalProperties: 2487 type: string 2488 - lastUpdateTime: 2489 + description: Metadata holds upstream information such as OCI annotations. 2490 + type: object 2491 + path: 2492 + description: |- 2493 + Path is the relative file path of the Artifact. It can be used to locate 2494 + the file in the root of the Artifact storage on the local file system of 2495 + the controller managing the Source. 2496 + type: string 2497 + revision: 2498 + description: |- 2499 + Revision is a human-readable identifier traceable in the origin source 2500 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2501 + type: string 2502 + size: 2503 + description: Size is the number of bytes in the file. 2504 + format: int64 2505 + type: integer 2506 + url: 2507 + description: |- 2508 + URL is the HTTP address of the Artifact as exposed by the controller 2509 + managing the Source. It can be used to retrieve the Artifact for 2510 + consumption, e.g. by another controller applying the Artifact contents. 2511 + type: string 2512 + required: 2513 + - digest 2514 + - lastUpdateTime 2515 + - path 2516 + - revision 2517 + - url 2518 + type: object 2519 + conditions: 2520 + description: Conditions holds the conditions for the HelmChart. 2521 + items: 2522 + description: Condition contains details for one aspect of the current 2523 + state of this API Resource. 2524 + properties: 2525 + lastTransitionTime: 2526 description: |- 2527 - LastUpdateTime is the timestamp corresponding to the last update of the 2528 - Artifact. 2529 + lastTransitionTime is the last time the condition transitioned from one status to another. 2530 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 2531 format: date-time 2532 type: string 2533 - metadata: 2534 - additionalProperties: 2535 - type: string 2536 - description: Metadata holds upstream information such as OCI annotations. 2537 - type: object 2538 - path: 2539 + message: 2540 description: |- 2541 - Path is the relative file path of the Artifact. It can be used to locate 2542 - the file in the root of the Artifact storage on the local file system of 2543 - the controller managing the Source. 2544 + message is a human readable message indicating details about the transition. 2545 + This may be an empty string. 2546 + maxLength: 32768 2547 type: string 2548 - revision: 2549 + observedGeneration: 2550 description: |- 2551 - Revision is a human-readable identifier traceable in the origin source 2552 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 2553 - type: string 2554 - size: 2555 - description: Size is the number of bytes in the file. 2556 + observedGeneration represents the .metadata.generation that the condition was set based upon. 2557 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 2558 + with respect to the current state of the instance. 2559 format: int64 2560 + minimum: 0 2561 type: integer 2562 - url: 2563 - description: |- 2564 - URL is the HTTP address of the Artifact as exposed by the controller 2565 - managing the Source. It can be used to retrieve the Artifact for 2566 - consumption, e.g. by another controller applying the Artifact contents. 2567 + reason: 2568 + description: |- 2569 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 2570 + Producers of specific condition types may define expected values and meanings for this field, 2571 + and whether the values are considered a guaranteed API. 2572 + The value should be a CamelCase string. 2573 + This field may not be empty. 2574 + maxLength: 1024 2575 + minLength: 1 2576 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 2577 + type: string 2578 + status: 2579 + description: status of the condition, one of True, False, Unknown. 2580 + enum: 2581 + - "True" 2582 + - "False" 2583 + - Unknown 2584 + type: string 2585 + type: 2586 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 2587 + maxLength: 316 2588 + 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])$ 2589 type: string 2590 required: 2591 - - digest 2592 - - lastUpdateTime 2593 - - path 2594 - - revision 2595 - - url 2596 + - lastTransitionTime 2597 + - message 2598 + - reason 2599 + - status 2600 + - type 2601 type: object 2602 - conditions: 2603 - description: Conditions holds the conditions for the ExternalArtifact. 2604 - items: 2605 - description: Condition contains details for one aspect of the current state of this API Resource. 2606 - properties: 2607 - lastTransitionTime: 2608 - description: |- 2609 - lastTransitionTime is the last time the condition transitioned from one status to another. 2610 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 2611 - format: date-time 2612 - type: string 2613 - message: 2614 - description: |- 2615 - message is a human readable message indicating details about the transition. 2616 - This may be an empty string. 2617 - maxLength: 32768 2618 - type: string 2619 - observedGeneration: 2620 - description: |- 2621 - observedGeneration represents the .metadata.generation that the condition was set based upon. 2622 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 2623 - with respect to the current state of the instance. 2624 - format: int64 2625 - minimum: 0 2626 - type: integer 2627 - reason: 2628 - description: |- 2629 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 2630 - Producers of specific condition types may define expected values and meanings for this field, 2631 - and whether the values are considered a guaranteed API. 2632 - The value should be a CamelCase string. 2633 - This field may not be empty. 2634 - maxLength: 1024 2635 - minLength: 1 2636 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 2637 - type: string 2638 - status: 2639 - description: status of the condition, one of True, False, Unknown. 2640 - enum: 2641 - - "True" 2642 - - "False" 2643 - - Unknown 2644 - type: string 2645 - type: 2646 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 2647 - maxLength: 316 2648 - 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])$ 2649 - type: string 2650 - required: 2651 - - lastTransitionTime 2652 - - message 2653 - - reason 2654 - - status 2655 - - type 2656 - type: object 2657 - type: array 2658 - type: object 2659 - type: object 2660 - served: true 2661 - storage: true 2662 - subresources: 2663 - status: {} 2664 + type: array 2665 + lastHandledReconcileAt: 2666 + description: |- 2667 + LastHandledReconcileAt holds the value of the most recent 2668 + reconcile request value, so a change of the annotation value 2669 + can be detected. 2670 + type: string 2671 + observedChartName: 2672 + description: |- 2673 + ObservedChartName is the last observed chart name as specified by the 2674 + resolved chart reference. 2675 + type: string 2676 + observedGeneration: 2677 + description: |- 2678 + ObservedGeneration is the last observed generation of the HelmChart 2679 + object. 2680 + format: int64 2681 + type: integer 2682 + observedSourceArtifactRevision: 2683 + description: |- 2684 + ObservedSourceArtifactRevision is the last observed Artifact.Revision 2685 + of the HelmChartSpec.SourceRef. 2686 + type: string 2687 + observedValuesFiles: 2688 + description: |- 2689 + ObservedValuesFiles are the observed value files of the last successful 2690 + reconciliation. 2691 + It matches the chart in the last successfully reconciled artifact. 2692 + items: 2693 + type: string 2694 + type: array 2695 + url: 2696 + description: |- 2697 + URL is the dynamic fetch link for the latest Artifact. 2698 + It is provided on a "best effort" basis, and using the precise 2699 + BucketStatus.Artifact data is recommended. 2700 + type: string 2701 + type: object 2702 + type: object 2703 + served: true 2704 + storage: true 2705 + subresources: 2706 + status: {} 2707 --- 2708 apiVersion: apiextensions.k8s.io/v1 2709 kind: CustomResourceDefinition 2710 @@ -1256,932 +1744,876 @@ metadata: 2711 app.kubernetes.io/component: source-controller 2712 app.kubernetes.io/instance: flux-system 2713 app.kubernetes.io/part-of: flux 2714 - app.kubernetes.io/version: v2.7.5 2715 - name: gitrepositories.source.toolkit.fluxcd.io 2716 + app.kubernetes.io/version: v2.8.0 2717 + name: helmrepositories.source.toolkit.fluxcd.io 2718 spec: 2719 group: source.toolkit.fluxcd.io 2720 names: 2721 - kind: GitRepository 2722 - listKind: GitRepositoryList 2723 - plural: gitrepositories 2724 + kind: HelmRepository 2725 + listKind: HelmRepositoryList 2726 + plural: helmrepositories 2727 shortNames: 2728 - - gitrepo 2729 - singular: gitrepository 2730 + - helmrepo 2731 + singular: helmrepository 2732 scope: Namespaced 2733 versions: 2734 - - additionalPrinterColumns: 2735 - - jsonPath: .spec.url 2736 - name: URL 2737 - type: string 2738 - - jsonPath: .metadata.creationTimestamp 2739 - name: Age 2740 - type: date 2741 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 2742 - name: Ready 2743 - type: string 2744 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 2745 - name: Status 2746 - type: string 2747 - name: v1 2748 - schema: 2749 - openAPIV3Schema: 2750 - description: GitRepository is the Schema for the gitrepositories API. 2751 - properties: 2752 - apiVersion: 2753 - description: |- 2754 - APIVersion defines the versioned schema of this representation of an object. 2755 - Servers should convert recognized schemas to the latest internal value, and 2756 - may reject unrecognized values. 2757 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 2758 - type: string 2759 - kind: 2760 - description: |- 2761 - Kind is a string value representing the REST resource this object represents. 2762 - Servers may infer this from the endpoint the client submits requests to. 2763 - Cannot be updated. 2764 - In CamelCase. 2765 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 2766 - type: string 2767 - metadata: 2768 - type: object 2769 - spec: 2770 - description: |- 2771 - GitRepositorySpec specifies the required configuration to produce an 2772 - Artifact for a Git repository. 2773 - properties: 2774 - ignore: 2775 - description: |- 2776 - Ignore overrides the set of excluded patterns in the .sourceignore format 2777 - (which is the same as .gitignore). If not provided, a default will be used, 2778 - consult the documentation for your version to find out what those are. 2779 - type: string 2780 - include: 2781 - description: |- 2782 - Include specifies a list of GitRepository resources which Artifacts 2783 - should be included in the Artifact produced for this GitRepository. 2784 - items: 2785 + - additionalPrinterColumns: 2786 + - jsonPath: .spec.url 2787 + name: URL 2788 + type: string 2789 + - jsonPath: .metadata.creationTimestamp 2790 + name: Age 2791 + type: date 2792 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 2793 + name: Ready 2794 + type: string 2795 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 2796 + name: Status 2797 + type: string 2798 + name: v1 2799 + schema: 2800 + openAPIV3Schema: 2801 + description: HelmRepository is the Schema for the helmrepositories API. 2802 + properties: 2803 + apiVersion: 2804 + description: |- 2805 + APIVersion defines the versioned schema of this representation of an object. 2806 + Servers should convert recognized schemas to the latest internal value, and 2807 + may reject unrecognized values. 2808 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 2809 + type: string 2810 + kind: 2811 + description: |- 2812 + Kind is a string value representing the REST resource this object represents. 2813 + Servers may infer this from the endpoint the client submits requests to. 2814 + Cannot be updated. 2815 + In CamelCase. 2816 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 2817 + type: string 2818 + metadata: 2819 + type: object 2820 + spec: 2821 + description: |- 2822 + HelmRepositorySpec specifies the required configuration to produce an 2823 + Artifact for a Helm repository index YAML. 2824 + properties: 2825 + accessFrom: 2826 + description: |- 2827 + AccessFrom specifies an Access Control List for allowing cross-namespace 2828 + references to this object. 2829 + NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 2830 + properties: 2831 + namespaceSelectors: 2832 description: |- 2833 - GitRepositoryInclude specifies a local reference to a GitRepository which 2834 - Artifact (sub-)contents must be included, and where they should be placed. 2835 - properties: 2836 - fromPath: 2837 - description: |- 2838 - FromPath specifies the path to copy contents from, defaults to the root 2839 - of the Artifact. 2840 - type: string 2841 - repository: 2842 - description: |- 2843 - GitRepositoryRef specifies the GitRepository which Artifact contents 2844 - must be included. 2845 - properties: 2846 - name: 2847 - description: Name of the referent. 2848 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 2849 + Items in this list are evaluated using a logical OR operation. 2850 + items: 2851 + description: |- 2852 + NamespaceSelector selects the namespaces to which this ACL applies. 2853 + An empty map of MatchLabels matches all namespaces in a cluster. 2854 + properties: 2855 + matchLabels: 2856 + additionalProperties: 2857 type: string 2858 - required: 2859 - - name 2860 - type: object 2861 - toPath: 2862 - description: |- 2863 - ToPath specifies the path to copy contents to, defaults to the name of 2864 - the GitRepositoryRef. 2865 - type: string 2866 - required: 2867 - - repository 2868 - type: object 2869 - type: array 2870 - interval: 2871 - description: |- 2872 - Interval at which the GitRepository URL is checked for updates. 2873 - This interval is approximate and may be subject to jitter to ensure 2874 - efficient use of resources. 2875 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 2876 - type: string 2877 - provider: 2878 - description: |- 2879 - Provider used for authentication, can be 'azure', 'github', 'generic'. 2880 - When not specified, defaults to 'generic'. 2881 - enum: 2882 - - generic 2883 - - azure 2884 - - github 2885 - type: string 2886 - proxySecretRef: 2887 - description: |- 2888 - ProxySecretRef specifies the Secret containing the proxy configuration 2889 - to use while communicating with the Git server. 2890 - properties: 2891 - name: 2892 - description: Name of the referent. 2893 - type: string 2894 - required: 2895 - - name 2896 - type: object 2897 - recurseSubmodules: 2898 - description: |- 2899 - RecurseSubmodules enables the initialization of all submodules within 2900 - the GitRepository as cloned from the URL, using their default settings. 2901 - type: boolean 2902 - ref: 2903 - description: |- 2904 - Reference specifies the Git reference to resolve and monitor for 2905 - changes, defaults to the 'master' branch. 2906 - properties: 2907 - branch: 2908 - description: Branch to check out, defaults to 'master' if no other field is defined. 2909 - type: string 2910 - commit: 2911 - description: |- 2912 - Commit SHA to check out, takes precedence over all reference fields. 2913 + description: |- 2914 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 2915 + map is equivalent to an element of matchExpressions, whose key field is "key", the 2916 + operator is "In", and the values array contains only "value". The requirements are ANDed. 2917 + type: object 2918 + type: object 2919 + type: array 2920 + required: 2921 + - namespaceSelectors 2922 + type: object 2923 + certSecretRef: 2924 + description: |- 2925 + CertSecretRef can be given the name of a Secret containing 2926 + either or both of 2927 2928 - This can be combined with Branch to shallow clone the branch, in which 2929 - the commit is expected to exist. 2930 - type: string 2931 - name: 2932 - description: |- 2933 - Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 2934 + - a PEM-encoded client certificate (`tls.crt`) and private 2935 + key (`tls.key`); 2936 + - a PEM-encoded CA certificate (`ca.crt`) 2937 2938 - It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 2939 - Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 2940 - type: string 2941 - semver: 2942 - description: SemVer tag expression to check out, takes precedence over Tag. 2943 - type: string 2944 - tag: 2945 - description: Tag to check out, takes precedence over Branch. 2946 - type: string 2947 - type: object 2948 - secretRef: 2949 - description: |- 2950 - SecretRef specifies the Secret containing authentication credentials for 2951 - the GitRepository. 2952 - For HTTPS repositories the Secret must contain 'username' and 'password' 2953 - fields for basic auth or 'bearerToken' field for token auth. 2954 - For SSH repositories the Secret must contain 'identity' 2955 - and 'known_hosts' fields. 2956 - properties: 2957 - name: 2958 - description: Name of the referent. 2959 - type: string 2960 - required: 2961 - - name 2962 - type: object 2963 - serviceAccountName: 2964 - description: |- 2965 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to 2966 - authenticate to the GitRepository. This field is only supported for 'azure' provider. 2967 - type: string 2968 - sparseCheckout: 2969 - description: |- 2970 - SparseCheckout specifies a list of directories to checkout when cloning 2971 - the repository. If specified, only these directories are included in the 2972 - Artifact produced for this GitRepository. 2973 - items: 2974 - type: string 2975 - type: array 2976 - suspend: 2977 - description: |- 2978 - Suspend tells the controller to suspend the reconciliation of this 2979 - GitRepository. 2980 - type: boolean 2981 - timeout: 2982 - default: 60s 2983 - description: Timeout for Git operations like cloning, defaults to 60s. 2984 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 2985 - type: string 2986 - url: 2987 - description: URL specifies the Git repository URL, it can be an HTTP/S or SSH address. 2988 - pattern: ^(http|https|ssh)://.*$ 2989 - type: string 2990 - verify: 2991 - description: |- 2992 - Verification specifies the configuration to verify the Git commit 2993 - signature(s). 2994 - properties: 2995 - mode: 2996 - default: HEAD 2997 - description: |- 2998 - Mode specifies which Git object(s) should be verified. 2999 + and whichever are supplied, will be used for connecting to the 3000 + registry. The client cert and key are useful if you are 3001 + authenticating with a certificate; the CA cert is useful if 3002 + you are using a self-signed server certificate. The Secret must 3003 + be of type `Opaque` or `kubernetes.io/tls`. 3004 3005 - The variants "head" and "HEAD" both imply the same thing, i.e. verify 3006 - the commit that the HEAD of the Git repository points to. The variant 3007 - "head" solely exists to ensure backwards compatibility. 3008 - enum: 3009 - - head 3010 - - HEAD 3011 - - Tag 3012 - - TagAndHEAD 3013 + It takes precedence over the values specified in the Secret referred 3014 + to by `.spec.secretRef`. 3015 + properties: 3016 + name: 3017 + description: Name of the referent. 3018 + type: string 3019 + required: 3020 + - name 3021 + type: object 3022 + insecure: 3023 + description: |- 3024 + Insecure allows connecting to a non-TLS HTTP container registry. 3025 + This field is only taken into account if the .spec.type field is set to 'oci'. 3026 + type: boolean 3027 + interval: 3028 + description: |- 3029 + Interval at which the HelmRepository URL is checked for updates. 3030 + This interval is approximate and may be subject to jitter to ensure 3031 + efficient use of resources. 3032 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 3033 + type: string 3034 + passCredentials: 3035 + description: |- 3036 + PassCredentials allows the credentials from the SecretRef to be passed 3037 + on to a host that does not match the host as defined in URL. 3038 + This may be required if the host of the advertised chart URLs in the 3039 + index differ from the defined URL. 3040 + Enabling this should be done with caution, as it can potentially result 3041 + in credentials getting stolen in a MITM-attack. 3042 + type: boolean 3043 + provider: 3044 + default: generic 3045 + description: |- 3046 + Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 3047 + This field is optional, and only taken into account if the .spec.type field is set to 'oci'. 3048 + When not specified, defaults to 'generic'. 3049 + enum: 3050 + - generic 3051 + - aws 3052 + - azure 3053 + - gcp 3054 + type: string 3055 + secretRef: 3056 + description: |- 3057 + SecretRef specifies the Secret containing authentication credentials 3058 + for the HelmRepository. 3059 + For HTTP/S basic auth the secret must contain 'username' and 'password' 3060 + fields. 3061 + Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile' 3062 + keys is deprecated. Please use `.spec.certSecretRef` instead. 3063 + properties: 3064 + name: 3065 + description: Name of the referent. 3066 + type: string 3067 + required: 3068 + - name 3069 + type: object 3070 + suspend: 3071 + description: |- 3072 + Suspend tells the controller to suspend the reconciliation of this 3073 + HelmRepository. 3074 + type: boolean 3075 + timeout: 3076 + description: |- 3077 + Timeout is used for the index fetch operation for an HTTPS helm repository, 3078 + and for remote OCI Repository operations like pulling for an OCI helm 3079 + chart by the associated HelmChart. 3080 + Its default value is 60s. 3081 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 3082 + type: string 3083 + type: 3084 + description: |- 3085 + Type of the HelmRepository. 3086 + When this field is set to "oci", the URL field value must be prefixed with "oci://". 3087 + enum: 3088 + - default 3089 + - oci 3090 + type: string 3091 + url: 3092 + description: |- 3093 + URL of the Helm repository, a valid URL contains at least a protocol and 3094 + host. 3095 + pattern: ^(http|https|oci)://.*$ 3096 + type: string 3097 + required: 3098 + - url 3099 + type: object 3100 + status: 3101 + default: 3102 + observedGeneration: -1 3103 + description: HelmRepositoryStatus records the observed state of the HelmRepository. 3104 + properties: 3105 + artifact: 3106 + description: Artifact represents the last successful HelmRepository 3107 + reconciliation. 3108 + properties: 3109 + digest: 3110 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3111 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3112 + type: string 3113 + lastUpdateTime: 3114 + description: |- 3115 + LastUpdateTime is the timestamp corresponding to the last update of the 3116 + Artifact. 3117 + format: date-time 3118 + type: string 3119 + metadata: 3120 + additionalProperties: 3121 type: string 3122 - secretRef: 3123 - description: |- 3124 - SecretRef specifies the Secret containing the public keys of trusted Git 3125 - authors. 3126 - properties: 3127 - name: 3128 - description: Name of the referent. 3129 - type: string 3130 - required: 3131 - - name 3132 - type: object 3133 - required: 3134 - - secretRef 3135 - type: object 3136 - required: 3137 - - interval 3138 + description: Metadata holds upstream information such as OCI annotations. 3139 + type: object 3140 + path: 3141 + description: |- 3142 + Path is the relative file path of the Artifact. It can be used to locate 3143 + the file in the root of the Artifact storage on the local file system of 3144 + the controller managing the Source. 3145 + type: string 3146 + revision: 3147 + description: |- 3148 + Revision is a human-readable identifier traceable in the origin source 3149 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3150 + type: string 3151 + size: 3152 + description: Size is the number of bytes in the file. 3153 + format: int64 3154 + type: integer 3155 + url: 3156 + description: |- 3157 + URL is the HTTP address of the Artifact as exposed by the controller 3158 + managing the Source. It can be used to retrieve the Artifact for 3159 + consumption, e.g. by another controller applying the Artifact contents. 3160 + type: string 3161 + required: 3162 + - digest 3163 + - lastUpdateTime 3164 + - path 3165 + - revision 3166 - url 3167 - type: object 3168 - x-kubernetes-validations: 3169 - - message: serviceAccountName can only be set when provider is 'azure' 3170 - rule: '!has(self.serviceAccountName) || (has(self.provider) && self.provider == ''azure'')' 3171 - status: 3172 - default: 3173 - observedGeneration: -1 3174 - description: GitRepositoryStatus records the observed state of a Git repository. 3175 - properties: 3176 - artifact: 3177 - description: Artifact represents the last successful GitRepository reconciliation. 3178 + type: object 3179 + conditions: 3180 + description: Conditions holds the conditions for the HelmRepository. 3181 + items: 3182 + description: Condition contains details for one aspect of the current 3183 + state of this API Resource. 3184 properties: 3185 - digest: 3186 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3187 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3188 - type: string 3189 - lastUpdateTime: 3190 + lastTransitionTime: 3191 description: |- 3192 - LastUpdateTime is the timestamp corresponding to the last update of the 3193 - Artifact. 3194 + lastTransitionTime is the last time the condition transitioned from one status to another. 3195 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 3196 format: date-time 3197 type: string 3198 - metadata: 3199 - additionalProperties: 3200 - type: string 3201 - description: Metadata holds upstream information such as OCI annotations. 3202 - type: object 3203 - path: 3204 + message: 3205 description: |- 3206 - Path is the relative file path of the Artifact. It can be used to locate 3207 - the file in the root of the Artifact storage on the local file system of 3208 - the controller managing the Source. 3209 + message is a human readable message indicating details about the transition. 3210 + This may be an empty string. 3211 + maxLength: 32768 3212 type: string 3213 - revision: 3214 + observedGeneration: 3215 description: |- 3216 - Revision is a human-readable identifier traceable in the origin source 3217 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3218 - type: string 3219 - size: 3220 - description: Size is the number of bytes in the file. 3221 + observedGeneration represents the .metadata.generation that the condition was set based upon. 3222 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 3223 + with respect to the current state of the instance. 3224 format: int64 3225 + minimum: 0 3226 type: integer 3227 - url: 3228 - description: |- 3229 - URL is the HTTP address of the Artifact as exposed by the controller 3230 - managing the Source. It can be used to retrieve the Artifact for 3231 - consumption, e.g. by another controller applying the Artifact contents. 3232 + reason: 3233 + description: |- 3234 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 3235 + Producers of specific condition types may define expected values and meanings for this field, 3236 + and whether the values are considered a guaranteed API. 3237 + The value should be a CamelCase string. 3238 + This field may not be empty. 3239 + maxLength: 1024 3240 + minLength: 1 3241 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 3242 + type: string 3243 + status: 3244 + description: status of the condition, one of True, False, Unknown. 3245 + enum: 3246 + - "True" 3247 + - "False" 3248 + - Unknown 3249 + type: string 3250 + type: 3251 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 3252 + maxLength: 316 3253 + 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])$ 3254 type: string 3255 required: 3256 - - digest 3257 - - lastUpdateTime 3258 - - path 3259 - - revision 3260 - - url 3261 + - lastTransitionTime 3262 + - message 3263 + - reason 3264 + - status 3265 + - type 3266 type: object 3267 - conditions: 3268 - description: Conditions holds the conditions for the GitRepository. 3269 - items: 3270 - description: Condition contains details for one aspect of the current state of this API Resource. 3271 - properties: 3272 - lastTransitionTime: 3273 - description: |- 3274 - lastTransitionTime is the last time the condition transitioned from one status to another. 3275 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 3276 - format: date-time 3277 - type: string 3278 - message: 3279 - description: |- 3280 - message is a human readable message indicating details about the transition. 3281 - This may be an empty string. 3282 - maxLength: 32768 3283 - type: string 3284 - observedGeneration: 3285 - description: |- 3286 - observedGeneration represents the .metadata.generation that the condition was set based upon. 3287 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 3288 - with respect to the current state of the instance. 3289 - format: int64 3290 - minimum: 0 3291 - type: integer 3292 - reason: 3293 - description: |- 3294 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 3295 - Producers of specific condition types may define expected values and meanings for this field, 3296 - and whether the values are considered a guaranteed API. 3297 - The value should be a CamelCase string. 3298 - This field may not be empty. 3299 - maxLength: 1024 3300 - minLength: 1 3301 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 3302 - type: string 3303 - status: 3304 - description: status of the condition, one of True, False, Unknown. 3305 - enum: 3306 - - "True" 3307 - - "False" 3308 - - Unknown 3309 - type: string 3310 - type: 3311 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 3312 - maxLength: 316 3313 - 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])$ 3314 - type: string 3315 - required: 3316 - - lastTransitionTime 3317 - - message 3318 - - reason 3319 - - status 3320 - - type 3321 - type: object 3322 - type: array 3323 - includedArtifacts: 3324 - description: |- 3325 - IncludedArtifacts contains a list of the last successfully included 3326 - Artifacts as instructed by GitRepositorySpec.Include. 3327 - items: 3328 - description: Artifact represents the output of a Source reconciliation. 3329 - properties: 3330 - digest: 3331 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3332 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3333 - type: string 3334 - lastUpdateTime: 3335 - description: |- 3336 - LastUpdateTime is the timestamp corresponding to the last update of the 3337 - Artifact. 3338 - format: date-time 3339 - type: string 3340 - metadata: 3341 - additionalProperties: 3342 + type: array 3343 + lastHandledReconcileAt: 3344 + description: |- 3345 + LastHandledReconcileAt holds the value of the most recent 3346 + reconcile request value, so a change of the annotation value 3347 + can be detected. 3348 + type: string 3349 + observedGeneration: 3350 + description: |- 3351 + ObservedGeneration is the last observed generation of the HelmRepository 3352 + object. 3353 + format: int64 3354 + type: integer 3355 + url: 3356 + description: |- 3357 + URL is the dynamic fetch link for the latest Artifact. 3358 + It is provided on a "best effort" basis, and using the precise 3359 + HelmRepositoryStatus.Artifact data is recommended. 3360 + type: string 3361 + type: object 3362 + type: object 3363 + served: true 3364 + storage: true 3365 + subresources: 3366 + status: {} 3367 +--- 3368 +apiVersion: apiextensions.k8s.io/v1 3369 +kind: CustomResourceDefinition 3370 +metadata: 3371 + annotations: 3372 + controller-gen.kubebuilder.io/version: v0.19.0 3373 + labels: 3374 + app.kubernetes.io/component: source-controller 3375 + app.kubernetes.io/instance: flux-system 3376 + app.kubernetes.io/part-of: flux 3377 + app.kubernetes.io/version: v2.8.0 3378 + name: ocirepositories.source.toolkit.fluxcd.io 3379 +spec: 3380 + group: source.toolkit.fluxcd.io 3381 + names: 3382 + kind: OCIRepository 3383 + listKind: OCIRepositoryList 3384 + plural: ocirepositories 3385 + shortNames: 3386 + - ocirepo 3387 + singular: ocirepository 3388 + scope: Namespaced 3389 + versions: 3390 + - additionalPrinterColumns: 3391 + - jsonPath: .spec.url 3392 + name: URL 3393 + type: string 3394 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 3395 + name: Ready 3396 + type: string 3397 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 3398 + name: Status 3399 + type: string 3400 + - jsonPath: .metadata.creationTimestamp 3401 + name: Age 3402 + type: date 3403 + name: v1 3404 + schema: 3405 + openAPIV3Schema: 3406 + description: OCIRepository is the Schema for the ocirepositories API 3407 + properties: 3408 + apiVersion: 3409 + description: |- 3410 + APIVersion defines the versioned schema of this representation of an object. 3411 + Servers should convert recognized schemas to the latest internal value, and 3412 + may reject unrecognized values. 3413 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 3414 + type: string 3415 + kind: 3416 + description: |- 3417 + Kind is a string value representing the REST resource this object represents. 3418 + Servers may infer this from the endpoint the client submits requests to. 3419 + Cannot be updated. 3420 + In CamelCase. 3421 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 3422 + type: string 3423 + metadata: 3424 + type: object 3425 + spec: 3426 + description: OCIRepositorySpec defines the desired state of OCIRepository 3427 + properties: 3428 + certSecretRef: 3429 + description: |- 3430 + CertSecretRef can be given the name of a Secret containing 3431 + either or both of 3432 + 3433 + - a PEM-encoded client certificate (`tls.crt`) and private 3434 + key (`tls.key`); 3435 + - a PEM-encoded CA certificate (`ca.crt`) 3436 + 3437 + and whichever are supplied, will be used for connecting to the 3438 + registry. The client cert and key are useful if you are 3439 + authenticating with a certificate; the CA cert is useful if 3440 + you are using a self-signed server certificate. The Secret must 3441 + be of type `Opaque` or `kubernetes.io/tls`. 3442 + properties: 3443 + name: 3444 + description: Name of the referent. 3445 + type: string 3446 + required: 3447 + - name 3448 + type: object 3449 + ignore: 3450 + description: |- 3451 + Ignore overrides the set of excluded patterns in the .sourceignore format 3452 + (which is the same as .gitignore). If not provided, a default will be used, 3453 + consult the documentation for your version to find out what those are. 3454 + type: string 3455 + insecure: 3456 + description: Insecure allows connecting to a non-TLS HTTP container 3457 + registry. 3458 + type: boolean 3459 + interval: 3460 + description: |- 3461 + Interval at which the OCIRepository URL is checked for updates. 3462 + This interval is approximate and may be subject to jitter to ensure 3463 + efficient use of resources. 3464 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 3465 + type: string 3466 + layerSelector: 3467 + description: |- 3468 + LayerSelector specifies which layer should be extracted from the OCI artifact. 3469 + When not specified, the first layer found in the artifact is selected. 3470 + properties: 3471 + mediaType: 3472 + description: |- 3473 + MediaType specifies the OCI media type of the layer 3474 + which should be extracted from the OCI Artifact. The 3475 + first layer matching this type is selected. 3476 + type: string 3477 + operation: 3478 + description: |- 3479 + Operation specifies how the selected layer should be processed. 3480 + By default, the layer compressed content is extracted to storage. 3481 + When the operation is set to 'copy', the layer compressed content 3482 + is persisted to storage as it is. 3483 + enum: 3484 + - extract 3485 + - copy 3486 + type: string 3487 + type: object 3488 + provider: 3489 + default: generic 3490 + description: |- 3491 + The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 3492 + When not specified, defaults to 'generic'. 3493 + enum: 3494 + - generic 3495 + - aws 3496 + - azure 3497 + - gcp 3498 + type: string 3499 + proxySecretRef: 3500 + description: |- 3501 + ProxySecretRef specifies the Secret containing the proxy configuration 3502 + to use while communicating with the container registry. 3503 + properties: 3504 + name: 3505 + description: Name of the referent. 3506 + type: string 3507 + required: 3508 + - name 3509 + type: object 3510 + ref: 3511 + description: |- 3512 + The OCI reference to pull and monitor for changes, 3513 + defaults to the latest tag. 3514 + properties: 3515 + digest: 3516 + description: |- 3517 + Digest is the image digest to pull, takes precedence over SemVer. 3518 + The value should be in the format 'sha256:<HASH>'. 3519 + type: string 3520 + semver: 3521 + description: |- 3522 + SemVer is the range of tags to pull selecting the latest within 3523 + the range, takes precedence over Tag. 3524 + type: string 3525 + semverFilter: 3526 + description: SemverFilter is a regex pattern to filter the tags 3527 + within the SemVer range. 3528 + type: string 3529 + tag: 3530 + description: Tag is the image tag to pull, defaults to latest. 3531 + type: string 3532 + type: object 3533 + secretRef: 3534 + description: |- 3535 + SecretRef contains the secret name containing the registry login 3536 + credentials to resolve image metadata. 3537 + The secret must be of type kubernetes.io/dockerconfigjson. 3538 + properties: 3539 + name: 3540 + description: Name of the referent. 3541 + type: string 3542 + required: 3543 + - name 3544 + type: object 3545 + serviceAccountName: 3546 + description: |- 3547 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 3548 + the image pull if the service account has attached pull secrets. For more information: 3549 + https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account 3550 + type: string 3551 + suspend: 3552 + description: This flag tells the controller to suspend the reconciliation 3553 + of this source. 3554 + type: boolean 3555 + timeout: 3556 + default: 60s 3557 + description: The timeout for remote OCI Repository operations like 3558 + pulling, defaults to 60s. 3559 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 3560 + type: string 3561 + url: 3562 + description: |- 3563 + URL is a reference to an OCI artifact repository hosted 3564 + on a remote container registry. 3565 + pattern: ^oci://.*$ 3566 + type: string 3567 + verify: 3568 + description: |- 3569 + Verify contains the secret name containing the trusted public keys 3570 + used to verify the signature and specifies which provider to use to check 3571 + whether OCI image is authentic. 3572 + properties: 3573 + matchOIDCIdentity: 3574 + description: |- 3575 + MatchOIDCIdentity specifies the identity matching criteria to use 3576 + while verifying an OCI artifact which was signed using Cosign keyless 3577 + signing. The artifact's identity is deemed to be verified if any of the 3578 + specified matchers match against the identity. 3579 + items: 3580 + description: |- 3581 + OIDCIdentityMatch specifies options for verifying the certificate identity, 3582 + i.e. the issuer and the subject of the certificate. 3583 + properties: 3584 + issuer: 3585 + description: |- 3586 + Issuer specifies the regex pattern to match against to verify 3587 + the OIDC issuer in the Fulcio certificate. The pattern must be a 3588 + valid Go regular expression. 3589 type: string 3590 - description: Metadata holds upstream information such as OCI annotations. 3591 - type: object 3592 - path: 3593 - description: |- 3594 - Path is the relative file path of the Artifact. It can be used to locate 3595 - the file in the root of the Artifact storage on the local file system of 3596 - the controller managing the Source. 3597 - type: string 3598 - revision: 3599 - description: |- 3600 - Revision is a human-readable identifier traceable in the origin source 3601 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3602 - type: string 3603 - size: 3604 - description: Size is the number of bytes in the file. 3605 - format: int64 3606 - type: integer 3607 - url: 3608 - description: |- 3609 - URL is the HTTP address of the Artifact as exposed by the controller 3610 - managing the Source. It can be used to retrieve the Artifact for 3611 - consumption, e.g. by another controller applying the Artifact contents. 3612 - type: string 3613 - required: 3614 - - digest 3615 - - lastUpdateTime 3616 - - path 3617 - - revision 3618 - - url 3619 - type: object 3620 - type: array 3621 - lastHandledReconcileAt: 3622 - description: |- 3623 - LastHandledReconcileAt holds the value of the most recent 3624 - reconcile request value, so a change of the annotation value 3625 - can be detected. 3626 - type: string 3627 - observedGeneration: 3628 - description: |- 3629 - ObservedGeneration is the last observed generation of the GitRepository 3630 - object. 3631 - format: int64 3632 - type: integer 3633 - observedIgnore: 3634 - description: |- 3635 - ObservedIgnore is the observed exclusion patterns used for constructing 3636 - the source artifact. 3637 - type: string 3638 - observedInclude: 3639 - description: |- 3640 - ObservedInclude is the observed list of GitRepository resources used to 3641 - produce the current Artifact. 3642 - items: 3643 + subject: 3644 + description: |- 3645 + Subject specifies the regex pattern to match against to verify 3646 + the identity subject in the Fulcio certificate. The pattern must 3647 + be a valid Go regular expression. 3648 + type: string 3649 + required: 3650 + - issuer 3651 + - subject 3652 + type: object 3653 + type: array 3654 + provider: 3655 + default: cosign 3656 + description: Provider specifies the technology used to sign the 3657 + OCI Artifact. 3658 + enum: 3659 + - cosign 3660 + - notation 3661 + type: string 3662 + secretRef: 3663 description: |- 3664 - GitRepositoryInclude specifies a local reference to a GitRepository which 3665 - Artifact (sub-)contents must be included, and where they should be placed. 3666 + SecretRef specifies the Kubernetes Secret containing the 3667 + trusted public keys. 3668 properties: 3669 - fromPath: 3670 - description: |- 3671 - FromPath specifies the path to copy contents from, defaults to the root 3672 - of the Artifact. 3673 - type: string 3674 - repository: 3675 - description: |- 3676 - GitRepositoryRef specifies the GitRepository which Artifact contents 3677 - must be included. 3678 - properties: 3679 - name: 3680 - description: Name of the referent. 3681 - type: string 3682 - required: 3683 - - name 3684 - type: object 3685 - toPath: 3686 - description: |- 3687 - ToPath specifies the path to copy contents to, defaults to the name of 3688 - the GitRepositoryRef. 3689 + name: 3690 + description: Name of the referent. 3691 type: string 3692 required: 3693 - - repository 3694 + - name 3695 type: object 3696 - type: array 3697 - observedRecurseSubmodules: 3698 - description: |- 3699 - ObservedRecurseSubmodules is the observed resource submodules 3700 - configuration used to produce the current Artifact. 3701 - type: boolean 3702 - observedSparseCheckout: 3703 - description: |- 3704 - ObservedSparseCheckout is the observed list of directories used to 3705 - produce the current Artifact. 3706 - items: 3707 + required: 3708 + - provider 3709 + type: object 3710 + required: 3711 + - interval 3712 + - url 3713 + type: object 3714 + status: 3715 + default: 3716 + observedGeneration: -1 3717 + description: OCIRepositoryStatus defines the observed state of OCIRepository 3718 + properties: 3719 + artifact: 3720 + description: Artifact represents the output of the last successful 3721 + OCI Repository sync. 3722 + properties: 3723 + digest: 3724 + description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 3725 + pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 3726 type: string 3727 - type: array 3728 - sourceVerificationMode: 3729 - description: |- 3730 - SourceVerificationMode is the last used verification mode indicating 3731 - which Git object(s) have been verified. 3732 - type: string 3733 - type: object 3734 - type: object 3735 - served: true 3736 - storage: true 3737 - subresources: 3738 - status: {} 3739 - - additionalPrinterColumns: 3740 - - jsonPath: .spec.url 3741 - name: URL 3742 - type: string 3743 - - jsonPath: .metadata.creationTimestamp 3744 - name: Age 3745 - type: date 3746 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 3747 - name: Ready 3748 - type: string 3749 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 3750 - name: Status 3751 - type: string 3752 - deprecated: true 3753 - deprecationWarning: v1beta2 GitRepository is deprecated, upgrade to v1 3754 - name: v1beta2 3755 - schema: 3756 - openAPIV3Schema: 3757 - description: GitRepository is the Schema for the gitrepositories API. 3758 - properties: 3759 - apiVersion: 3760 - description: |- 3761 - APIVersion defines the versioned schema of this representation of an object. 3762 - Servers should convert recognized schemas to the latest internal value, and 3763 - may reject unrecognized values. 3764 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 3765 - type: string 3766 - kind: 3767 - description: |- 3768 - Kind is a string value representing the REST resource this object represents. 3769 - Servers may infer this from the endpoint the client submits requests to. 3770 - Cannot be updated. 3771 - In CamelCase. 3772 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 3773 - type: string 3774 - metadata: 3775 - type: object 3776 - spec: 3777 - description: |- 3778 - GitRepositorySpec specifies the required configuration to produce an 3779 - Artifact for a Git repository. 3780 - properties: 3781 - accessFrom: 3782 - description: |- 3783 - AccessFrom specifies an Access Control List for allowing cross-namespace 3784 - references to this object. 3785 - NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 3786 - properties: 3787 - namespaceSelectors: 3788 - description: |- 3789 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 3790 - Items in this list are evaluated using a logical OR operation. 3791 - items: 3792 - description: |- 3793 - NamespaceSelector selects the namespaces to which this ACL applies. 3794 - An empty map of MatchLabels matches all namespaces in a cluster. 3795 - properties: 3796 - matchLabels: 3797 - additionalProperties: 3798 - type: string 3799 - description: |- 3800 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 3801 - map is equivalent to an element of matchExpressions, whose key field is "key", the 3802 - operator is "In", and the values array contains only "value". The requirements are ANDed. 3803 - type: object 3804 - type: object 3805 - type: array 3806 - required: 3807 - - namespaceSelectors 3808 - type: object 3809 - gitImplementation: 3810 - default: go-git 3811 - description: |- 3812 - GitImplementation specifies which Git client library implementation to 3813 - use. Defaults to 'go-git', valid values are ('go-git', 'libgit2'). 3814 - Deprecated: gitImplementation is deprecated now that 'go-git' is the 3815 - only supported implementation. 3816 - enum: 3817 - - go-git 3818 - - libgit2 3819 - type: string 3820 - ignore: 3821 - description: |- 3822 - Ignore overrides the set of excluded patterns in the .sourceignore format 3823 - (which is the same as .gitignore). If not provided, a default will be used, 3824 - consult the documentation for your version to find out what those are. 3825 - type: string 3826 - include: 3827 - description: |- 3828 - Include specifies a list of GitRepository resources which Artifacts 3829 - should be included in the Artifact produced for this GitRepository. 3830 - items: 3831 + lastUpdateTime: 3832 description: |- 3833 - GitRepositoryInclude specifies a local reference to a GitRepository which 3834 - Artifact (sub-)contents must be included, and where they should be placed. 3835 - properties: 3836 - fromPath: 3837 - description: |- 3838 - FromPath specifies the path to copy contents from, defaults to the root 3839 - of the Artifact. 3840 - type: string 3841 - repository: 3842 - description: |- 3843 - GitRepositoryRef specifies the GitRepository which Artifact contents 3844 - must be included. 3845 - properties: 3846 - name: 3847 - description: Name of the referent. 3848 - type: string 3849 - required: 3850 - - name 3851 - type: object 3852 - toPath: 3853 - description: |- 3854 - ToPath specifies the path to copy contents to, defaults to the name of 3855 - the GitRepositoryRef. 3856 - type: string 3857 - required: 3858 - - repository 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 - type: array 3869 - interval: 3870 - description: Interval at which to check the GitRepository for updates. 3871 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 3872 - type: string 3873 - recurseSubmodules: 3874 - description: |- 3875 - RecurseSubmodules enables the initialization of all submodules within 3876 - the GitRepository as cloned from the URL, using their default settings. 3877 - type: boolean 3878 - ref: 3879 - description: |- 3880 - Reference specifies the Git reference to resolve and monitor for 3881 - changes, defaults to the 'master' branch. 3882 + path: 3883 + description: |- 3884 + Path is the relative file path of the Artifact. It can be used to locate 3885 + the file in the root of the Artifact storage on the local file system of 3886 + the controller managing the Source. 3887 + type: string 3888 + revision: 3889 + description: |- 3890 + Revision is a human-readable identifier traceable in the origin source 3891 + system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 3892 + type: string 3893 + size: 3894 + description: Size is the number of bytes in the file. 3895 + format: int64 3896 + type: integer 3897 + url: 3898 + description: |- 3899 + URL is the HTTP address of the Artifact as exposed by the controller 3900 + managing the Source. It can be used to retrieve the Artifact for 3901 + consumption, e.g. by another controller applying the Artifact contents. 3902 + type: string 3903 + required: 3904 + - digest 3905 + - lastUpdateTime 3906 + - path 3907 + - revision 3908 + - url 3909 + type: object 3910 + conditions: 3911 + description: Conditions holds the conditions for the OCIRepository. 3912 + items: 3913 + description: Condition contains details for one aspect of the current 3914 + state of this API Resource. 3915 properties: 3916 - branch: 3917 - description: Branch to check out, defaults to 'master' if no other field is defined. 3918 - type: string 3919 - commit: 3920 + lastTransitionTime: 3921 description: |- 3922 - Commit SHA to check out, takes precedence over all reference fields. 3923 - 3924 - This can be combined with Branch to shallow clone the branch, in which 3925 - the commit is expected to exist. 3926 + lastTransitionTime is the last time the condition transitioned from one status to another. 3927 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 3928 + format: date-time 3929 type: string 3930 - name: 3931 + message: 3932 description: |- 3933 - Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 3934 - 3935 - It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 3936 - Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 3937 + message is a human readable message indicating details about the transition. 3938 + This may be an empty string. 3939 + maxLength: 32768 3940 type: string 3941 - semver: 3942 - description: SemVer tag expression to check out, takes precedence over Tag. 3943 + observedGeneration: 3944 + description: |- 3945 + observedGeneration represents the .metadata.generation that the condition was set based upon. 3946 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 3947 + with respect to the current state of the instance. 3948 + format: int64 3949 + minimum: 0 3950 + type: integer 3951 + reason: 3952 + description: |- 3953 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 3954 + Producers of specific condition types may define expected values and meanings for this field, 3955 + and whether the values are considered a guaranteed API. 3956 + The value should be a CamelCase string. 3957 + This field may not be empty. 3958 + maxLength: 1024 3959 + minLength: 1 3960 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 3961 type: string 3962 - tag: 3963 - description: Tag to check out, takes precedence over Branch. 3964 + status: 3965 + description: status of the condition, one of True, False, Unknown. 3966 + enum: 3967 + - "True" 3968 + - "False" 3969 + - Unknown 3970 type: string 3971 - type: object 3972 - secretRef: 3973 - description: |- 3974 - SecretRef specifies the Secret containing authentication credentials for 3975 - the GitRepository. 3976 - For HTTPS repositories the Secret must contain 'username' and 'password' 3977 - fields for basic auth or 'bearerToken' field for token auth. 3978 - For SSH repositories the Secret must contain 'identity' 3979 - and 'known_hosts' fields. 3980 - properties: 3981 - name: 3982 - description: Name of the referent. 3983 + type: 3984 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 3985 + maxLength: 316 3986 + 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])$ 3987 type: string 3988 required: 3989 - - name 3990 + - lastTransitionTime 3991 + - message 3992 + - reason 3993 + - status 3994 + - type 3995 type: object 3996 - suspend: 3997 - description: |- 3998 - Suspend tells the controller to suspend the reconciliation of this 3999 - GitRepository. 4000 - type: boolean 4001 - timeout: 4002 - default: 60s 4003 - description: Timeout for Git operations like cloning, defaults to 60s. 4004 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 4005 - type: string 4006 - url: 4007 - description: URL specifies the Git repository URL, it can be an HTTP/S or SSH address. 4008 - pattern: ^(http|https|ssh)://.*$ 4009 - type: string 4010 - verify: 4011 - description: |- 4012 - Verification specifies the configuration to verify the Git commit 4013 - signature(s). 4014 - properties: 4015 - mode: 4016 - description: Mode specifies what Git object should be verified, currently ('head'). 4017 - enum: 4018 - - head 4019 - type: string 4020 - secretRef: 4021 - description: |- 4022 - SecretRef specifies the Secret containing the public keys of trusted Git 4023 - authors. 4024 - properties: 4025 - name: 4026 - description: Name of the referent. 4027 - type: string 4028 - required: 4029 - - name 4030 - type: object 4031 - required: 4032 - - mode 4033 - - secretRef 4034 - type: object 4035 - required: 4036 - - interval 4037 - - url 4038 - type: object 4039 - status: 4040 - default: 4041 - observedGeneration: -1 4042 - description: GitRepositoryStatus records the observed state of a Git repository. 4043 - properties: 4044 - artifact: 4045 - description: Artifact represents the last successful GitRepository reconciliation. 4046 - properties: 4047 - digest: 4048 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 4049 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 4050 - type: string 4051 - lastUpdateTime: 4052 - description: |- 4053 - LastUpdateTime is the timestamp corresponding to the last update of the 4054 - Artifact. 4055 - format: date-time 4056 - type: string 4057 - metadata: 4058 - additionalProperties: 4059 - type: string 4060 - description: Metadata holds upstream information such as OCI annotations. 4061 - type: object 4062 - path: 4063 - description: |- 4064 - Path is the relative file path of the Artifact. It can be used to locate 4065 - the file in the root of the Artifact storage on the local file system of 4066 - the controller managing the Source. 4067 - type: string 4068 - revision: 4069 - description: |- 4070 - Revision is a human-readable identifier traceable in the origin source 4071 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 4072 - type: string 4073 - size: 4074 - description: Size is the number of bytes in the file. 4075 - format: int64 4076 - type: integer 4077 - url: 4078 - description: |- 4079 - URL is the HTTP address of the Artifact as exposed by the controller 4080 - managing the Source. It can be used to retrieve the Artifact for 4081 - consumption, e.g. by another controller applying the Artifact contents. 4082 - type: string 4083 - required: 4084 - - digest 4085 - - lastUpdateTime 4086 - - path 4087 - - revision 4088 - - url 4089 - type: object 4090 - conditions: 4091 - description: Conditions holds the conditions for the GitRepository. 4092 - items: 4093 - description: Condition contains details for one aspect of the current state of this API Resource. 4094 - properties: 4095 - lastTransitionTime: 4096 - description: |- 4097 - lastTransitionTime is the last time the condition transitioned from one status to another. 4098 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 4099 - format: date-time 4100 - type: string 4101 - message: 4102 - description: |- 4103 - message is a human readable message indicating details about the transition. 4104 - This may be an empty string. 4105 - maxLength: 32768 4106 - type: string 4107 - observedGeneration: 4108 - description: |- 4109 - observedGeneration represents the .metadata.generation that the condition was set based upon. 4110 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 4111 - with respect to the current state of the instance. 4112 - format: int64 4113 - minimum: 0 4114 - type: integer 4115 - reason: 4116 - description: |- 4117 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 4118 - Producers of specific condition types may define expected values and meanings for this field, 4119 - and whether the values are considered a guaranteed API. 4120 - The value should be a CamelCase string. 4121 - This field may not be empty. 4122 - maxLength: 1024 4123 - minLength: 1 4124 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 4125 - type: string 4126 - status: 4127 - description: status of the condition, one of True, False, Unknown. 4128 - enum: 4129 - - "True" 4130 - - "False" 4131 - - Unknown 4132 - type: string 4133 - type: 4134 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 4135 - maxLength: 316 4136 - 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])$ 4137 - type: string 4138 - required: 4139 - - lastTransitionTime 4140 - - message 4141 - - reason 4142 - - status 4143 - - type 4144 - type: object 4145 - type: array 4146 - contentConfigChecksum: 4147 - description: |- 4148 - ContentConfigChecksum is a checksum of all the configurations related to 4149 - the content of the source artifact: 4150 - - .spec.ignore 4151 - - .spec.recurseSubmodules 4152 - - .spec.included and the checksum of the included artifacts 4153 - observed in .status.observedGeneration version of the object. This can 4154 - be used to determine if the content of the included repository has 4155 - changed. 4156 - It has the format of `<algo>:<checksum>`, for example: `sha256:<checksum>`. 4157 - 4158 - Deprecated: Replaced with explicit fields for observed artifact content 4159 - config in the status. 4160 - type: string 4161 - includedArtifacts: 4162 - description: |- 4163 - IncludedArtifacts contains a list of the last successfully included 4164 - Artifacts as instructed by GitRepositorySpec.Include. 4165 - items: 4166 - description: Artifact represents the output of a Source reconciliation. 4167 - properties: 4168 - digest: 4169 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 4170 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 4171 - type: string 4172 - lastUpdateTime: 4173 - description: |- 4174 - LastUpdateTime is the timestamp corresponding to the last update of the 4175 - Artifact. 4176 - format: date-time 4177 - type: string 4178 - metadata: 4179 - additionalProperties: 4180 - type: string 4181 - description: Metadata holds upstream information such as OCI annotations. 4182 - type: object 4183 - path: 4184 - description: |- 4185 - Path is the relative file path of the Artifact. It can be used to locate 4186 - the file in the root of the Artifact storage on the local file system of 4187 - the controller managing the Source. 4188 - type: string 4189 - revision: 4190 - description: |- 4191 - Revision is a human-readable identifier traceable in the origin source 4192 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 4193 - type: string 4194 - size: 4195 - description: Size is the number of bytes in the file. 4196 - format: int64 4197 - type: integer 4198 - url: 4199 - description: |- 4200 - URL is the HTTP address of the Artifact as exposed by the controller 4201 - managing the Source. It can be used to retrieve the Artifact for 4202 - consumption, e.g. by another controller applying the Artifact contents. 4203 - type: string 4204 - required: 4205 - - digest 4206 - - lastUpdateTime 4207 - - path 4208 - - revision 4209 - - url 4210 - type: object 4211 - type: array 4212 - lastHandledReconcileAt: 4213 - description: |- 4214 - LastHandledReconcileAt holds the value of the most recent 4215 - reconcile request value, so a change of the annotation value 4216 - can be detected. 4217 - type: string 4218 - observedGeneration: 4219 - description: |- 4220 - ObservedGeneration is the last observed generation of the GitRepository 4221 - object. 4222 - format: int64 4223 - type: integer 4224 - observedIgnore: 4225 - description: |- 4226 - ObservedIgnore is the observed exclusion patterns used for constructing 4227 - the source artifact. 4228 - type: string 4229 - observedInclude: 4230 - description: |- 4231 - ObservedInclude is the observed list of GitRepository resources used to 4232 - to produce the current Artifact. 4233 - items: 4234 + type: array 4235 + lastHandledReconcileAt: 4236 + description: |- 4237 + LastHandledReconcileAt holds the value of the most recent 4238 + reconcile request value, so a change of the annotation value 4239 + can be detected. 4240 + type: string 4241 + observedGeneration: 4242 + description: ObservedGeneration is the last observed generation. 4243 + format: int64 4244 + type: integer 4245 + observedIgnore: 4246 + description: |- 4247 + ObservedIgnore is the observed exclusion patterns used for constructing 4248 + the source artifact. 4249 + type: string 4250 + observedLayerSelector: 4251 + description: |- 4252 + ObservedLayerSelector is the observed layer selector used for constructing 4253 + the source artifact. 4254 + properties: 4255 + mediaType: 4256 description: |- 4257 - GitRepositoryInclude specifies a local reference to a GitRepository which 4258 - Artifact (sub-)contents must be included, and where they should be placed. 4259 - properties: 4260 - fromPath: 4261 - description: |- 4262 - FromPath specifies the path to copy contents from, defaults to the root 4263 - of the Artifact. 4264 - type: string 4265 - repository: 4266 - description: |- 4267 - GitRepositoryRef specifies the GitRepository which Artifact contents 4268 - must be included. 4269 - properties: 4270 - name: 4271 - description: Name of the referent. 4272 - type: string 4273 - required: 4274 - - name 4275 - type: object 4276 - toPath: 4277 - description: |- 4278 - ToPath specifies the path to copy contents to, defaults to the name of 4279 - the GitRepositoryRef. 4280 - type: string 4281 - required: 4282 - - repository 4283 - type: object 4284 - type: array 4285 - observedRecurseSubmodules: 4286 - description: |- 4287 - ObservedRecurseSubmodules is the observed resource submodules 4288 - configuration used to produce the current Artifact. 4289 - type: boolean 4290 - url: 4291 - description: |- 4292 - URL is the dynamic fetch link for the latest Artifact. 4293 - It is provided on a "best effort" basis, and using the precise 4294 - GitRepositoryStatus.Artifact data is recommended. 4295 - type: string 4296 - type: object 4297 - type: object 4298 - served: true 4299 - storage: false 4300 - subresources: 4301 - status: {} 4302 + MediaType specifies the OCI media type of the layer 4303 + which should be extracted from the OCI Artifact. The 4304 + first layer matching this type is selected. 4305 + type: string 4306 + operation: 4307 + description: |- 4308 + Operation specifies how the selected layer should be processed. 4309 + By default, the layer compressed content is extracted to storage. 4310 + When the operation is set to 'copy', the layer compressed content 4311 + is persisted to storage as it is. 4312 + enum: 4313 + - extract 4314 + - copy 4315 + type: string 4316 + type: object 4317 + url: 4318 + description: URL is the download link for the artifact output of the 4319 + last OCI Repository sync. 4320 + type: string 4321 + type: object 4322 + type: object 4323 + served: true 4324 + storage: true 4325 + subresources: 4326 + status: {} 4327 +--- 4328 +apiVersion: v1 4329 +kind: ServiceAccount 4330 +metadata: 4331 + labels: 4332 + app.kubernetes.io/component: source-controller 4333 + app.kubernetes.io/instance: flux-system 4334 + app.kubernetes.io/part-of: flux 4335 + app.kubernetes.io/version: v2.8.0 4336 + name: source-controller 4337 + namespace: flux-system 4338 +--- 4339 +apiVersion: v1 4340 +kind: Service 4341 +metadata: 4342 + labels: 4343 + app.kubernetes.io/component: source-controller 4344 + app.kubernetes.io/instance: flux-system 4345 + app.kubernetes.io/part-of: flux 4346 + app.kubernetes.io/version: v2.8.0 4347 + control-plane: controller 4348 + name: source-controller 4349 + namespace: flux-system 4350 +spec: 4351 + ports: 4352 + - name: http 4353 + port: 80 4354 + protocol: TCP 4355 + targetPort: http 4356 + selector: 4357 + app: source-controller 4358 + type: ClusterIP 4359 +--- 4360 +apiVersion: apps/v1 4361 +kind: Deployment 4362 +metadata: 4363 + labels: 4364 + app.kubernetes.io/component: source-controller 4365 + app.kubernetes.io/instance: flux-system 4366 + app.kubernetes.io/part-of: flux 4367 + app.kubernetes.io/version: v2.8.0 4368 + control-plane: controller 4369 + name: source-controller 4370 + namespace: flux-system 4371 +spec: 4372 + replicas: 1 4373 + selector: 4374 + matchLabels: 4375 + app: source-controller 4376 + strategy: 4377 + type: Recreate 4378 + template: 4379 + metadata: 4380 + annotations: 4381 + prometheus.io/port: "8080" 4382 + prometheus.io/scrape: "true" 4383 + labels: 4384 + app: source-controller 4385 + app.kubernetes.io/component: source-controller 4386 + app.kubernetes.io/instance: flux-system 4387 + app.kubernetes.io/part-of: flux 4388 + app.kubernetes.io/version: v2.8.0 4389 + spec: 4390 + containers: 4391 + - args: 4392 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 4393 + - --watch-all-namespaces=true 4394 + - --log-level=info 4395 + - --log-encoding=json 4396 + - --enable-leader-election 4397 + - --storage-path=/data 4398 + - --storage-adv-addr=source-controller.$(RUNTIME_NAMESPACE).svc.cluster.local. 4399 + env: 4400 + - name: RUNTIME_NAMESPACE 4401 + valueFrom: 4402 + fieldRef: 4403 + fieldPath: metadata.namespace 4404 + - name: TUF_ROOT 4405 + value: /tmp/.sigstore 4406 + - name: GOMEMLIMIT 4407 + valueFrom: 4408 + resourceFieldRef: 4409 + containerName: manager 4410 + resource: limits.memory 4411 + image: ghcr.io/fluxcd/source-controller:v1.8.0 4412 + imagePullPolicy: IfNotPresent 4413 + livenessProbe: 4414 + httpGet: 4415 + path: /healthz 4416 + port: healthz 4417 + name: manager 4418 + ports: 4419 + - containerPort: 9090 4420 + name: http 4421 + protocol: TCP 4422 + - containerPort: 8080 4423 + name: http-prom 4424 + protocol: TCP 4425 + - containerPort: 9440 4426 + name: healthz 4427 + protocol: TCP 4428 + readinessProbe: 4429 + httpGet: 4430 + path: / 4431 + port: http 4432 + resources: 4433 + limits: 4434 + cpu: 1000m 4435 + memory: 1Gi 4436 + requests: 4437 + cpu: 50m 4438 + memory: 64Mi 4439 + securityContext: 4440 + allowPrivilegeEscalation: false 4441 + capabilities: 4442 + drop: 4443 + - ALL 4444 + readOnlyRootFilesystem: true 4445 + runAsNonRoot: true 4446 + seccompProfile: 4447 + type: RuntimeDefault 4448 + volumeMounts: 4449 + - mountPath: /data 4450 + name: data 4451 + - mountPath: /tmp 4452 + name: tmp 4453 + nodeSelector: 4454 + kubernetes.io/os: linux 4455 + priorityClassName: system-cluster-critical 4456 + securityContext: 4457 + fsGroup: 1337 4458 + serviceAccountName: source-controller 4459 + terminationGracePeriodSeconds: 10 4460 + volumes: 4461 + - emptyDir: {} 4462 + name: data 4463 + - emptyDir: {} 4464 + name: tmp 4465 --- 4466 apiVersion: apiextensions.k8s.io/v1 4467 kind: CustomResourceDefinition 4468 @@ -2189,6372 +2621,819 @@ metadata: 4469 annotations: 4470 controller-gen.kubebuilder.io/version: v0.19.0 4471 labels: 4472 - app.kubernetes.io/component: source-controller 4473 + app.kubernetes.io/component: kustomize-controller 4474 app.kubernetes.io/instance: flux-system 4475 app.kubernetes.io/part-of: flux 4476 - app.kubernetes.io/version: v2.7.5 4477 - name: helmcharts.source.toolkit.fluxcd.io 4478 + app.kubernetes.io/version: v2.8.0 4479 + name: kustomizations.kustomize.toolkit.fluxcd.io 4480 spec: 4481 - group: source.toolkit.fluxcd.io 4482 + group: kustomize.toolkit.fluxcd.io 4483 names: 4484 - kind: HelmChart 4485 - listKind: HelmChartList 4486 - plural: helmcharts 4487 + kind: Kustomization 4488 + listKind: KustomizationList 4489 + plural: kustomizations 4490 shortNames: 4491 - - hc 4492 - singular: helmchart 4493 - scope: Namespaced 4494 - versions: 4495 - - additionalPrinterColumns: 4496 - - jsonPath: .spec.chart 4497 - name: Chart 4498 - type: string 4499 - - jsonPath: .spec.version 4500 - name: Version 4501 - type: string 4502 - - jsonPath: .spec.sourceRef.kind 4503 - name: Source Kind 4504 - type: string 4505 - - jsonPath: .spec.sourceRef.name 4506 - name: Source Name 4507 - type: string 4508 - - jsonPath: .metadata.creationTimestamp 4509 - name: Age 4510 - type: date 4511 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 4512 - name: Ready 4513 - type: string 4514 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 4515 - name: Status 4516 - type: string 4517 - name: v1 4518 - schema: 4519 - openAPIV3Schema: 4520 - description: HelmChart is the Schema for the helmcharts API. 4521 - properties: 4522 - apiVersion: 4523 - description: |- 4524 - APIVersion defines the versioned schema of this representation of an object. 4525 - Servers should convert recognized schemas to the latest internal value, and 4526 - may reject unrecognized values. 4527 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 4528 - type: string 4529 - kind: 4530 - description: |- 4531 - Kind is a string value representing the REST resource this object represents. 4532 - Servers may infer this from the endpoint the client submits requests to. 4533 - Cannot be updated. 4534 - In CamelCase. 4535 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 4536 - type: string 4537 - metadata: 4538 - type: object 4539 - spec: 4540 - description: HelmChartSpec specifies the desired state of a Helm chart. 4541 - properties: 4542 - chart: 4543 - description: |- 4544 - Chart is the name or path the Helm chart is available at in the 4545 - SourceRef. 4546 - type: string 4547 - ignoreMissingValuesFiles: 4548 - description: |- 4549 - IgnoreMissingValuesFiles controls whether to silently ignore missing values 4550 - files rather than failing. 4551 - type: boolean 4552 - interval: 4553 - description: |- 4554 - Interval at which the HelmChart SourceRef is checked for updates. 4555 - This interval is approximate and may be subject to jitter to ensure 4556 - efficient use of resources. 4557 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 4558 - type: string 4559 - reconcileStrategy: 4560 - default: ChartVersion 4561 - description: |- 4562 - ReconcileStrategy determines what enables the creation of a new artifact. 4563 - Valid values are ('ChartVersion', 'Revision'). 4564 - See the documentation of the values for an explanation on their behavior. 4565 - Defaults to ChartVersion when omitted. 4566 - enum: 4567 - - ChartVersion 4568 - - Revision 4569 - type: string 4570 - sourceRef: 4571 - description: SourceRef is the reference to the Source the chart is available at. 4572 - properties: 4573 - apiVersion: 4574 - description: APIVersion of the referent. 4575 - type: string 4576 - kind: 4577 - description: |- 4578 - Kind of the referent, valid values are ('HelmRepository', 'GitRepository', 4579 - 'Bucket'). 4580 - enum: 4581 - - HelmRepository 4582 - - GitRepository 4583 - - Bucket 4584 - type: string 4585 - name: 4586 - description: Name of the referent. 4587 - type: string 4588 - required: 4589 - - kind 4590 - - name 4591 - type: object 4592 - suspend: 4593 - description: |- 4594 - Suspend tells the controller to suspend the reconciliation of this 4595 - source. 4596 - type: boolean 4597 - valuesFiles: 4598 - description: |- 4599 - ValuesFiles is an alternative list of values files to use as the chart 4600 - values (values.yaml is not included by default), expected to be a 4601 - relative path in the SourceRef. 4602 - Values files are merged in the order of this list with the last file 4603 - overriding the first. Ignored when omitted. 4604 - items: 4605 - type: string 4606 - type: array 4607 - verify: 4608 - description: |- 4609 - Verify contains the secret name containing the trusted public keys 4610 - used to verify the signature and specifies which provider to use to check 4611 - whether OCI image is authentic. 4612 - This field is only supported when using HelmRepository source with spec.type 'oci'. 4613 - Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. 4614 - properties: 4615 - matchOIDCIdentity: 4616 - description: |- 4617 - MatchOIDCIdentity specifies the identity matching criteria to use 4618 - while verifying an OCI artifact which was signed using Cosign keyless 4619 - signing. The artifact's identity is deemed to be verified if any of the 4620 - specified matchers match against the identity. 4621 - items: 4622 - description: |- 4623 - OIDCIdentityMatch specifies options for verifying the certificate identity, 4624 - i.e. the issuer and the subject of the certificate. 4625 - properties: 4626 - issuer: 4627 - description: |- 4628 - Issuer specifies the regex pattern to match against to verify 4629 - the OIDC issuer in the Fulcio certificate. The pattern must be a 4630 - valid Go regular expression. 4631 - type: string 4632 - subject: 4633 - description: |- 4634 - Subject specifies the regex pattern to match against to verify 4635 - the identity subject in the Fulcio certificate. The pattern must 4636 - be a valid Go regular expression. 4637 - type: string 4638 - required: 4639 - - issuer 4640 - - subject 4641 - type: object 4642 - type: array 4643 - provider: 4644 - default: cosign 4645 - description: Provider specifies the technology used to sign the OCI Artifact. 4646 - enum: 4647 - - cosign 4648 - - notation 4649 - type: string 4650 - secretRef: 4651 - description: |- 4652 - SecretRef specifies the Kubernetes Secret containing the 4653 - trusted public keys. 4654 - properties: 4655 - name: 4656 - description: Name of the referent. 4657 - type: string 4658 - required: 4659 - - name 4660 - type: object 4661 - required: 4662 - - provider 4663 - type: object 4664 - version: 4665 - default: '*' 4666 - description: |- 4667 - Version is the chart version semver expression, ignored for charts from 4668 - GitRepository and Bucket sources. Defaults to latest when omitted. 4669 - type: string 4670 - required: 4671 - - chart 4672 - - interval 4673 - - sourceRef 4674 - type: object 4675 - status: 4676 - default: 4677 - observedGeneration: -1 4678 - description: HelmChartStatus records the observed state of the HelmChart. 4679 - properties: 4680 - artifact: 4681 - description: Artifact represents the output of the last successful reconciliation. 4682 - properties: 4683 - digest: 4684 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 4685 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 4686 - type: string 4687 - lastUpdateTime: 4688 - description: |- 4689 - LastUpdateTime is the timestamp corresponding to the last update of the 4690 - Artifact. 4691 - format: date-time 4692 - type: string 4693 - metadata: 4694 - additionalProperties: 4695 - type: string 4696 - description: Metadata holds upstream information such as OCI annotations. 4697 - type: object 4698 - path: 4699 - description: |- 4700 - Path is the relative file path of the Artifact. It can be used to locate 4701 - the file in the root of the Artifact storage on the local file system of 4702 - the controller managing the Source. 4703 - type: string 4704 - revision: 4705 - description: |- 4706 - Revision is a human-readable identifier traceable in the origin source 4707 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 4708 - type: string 4709 - size: 4710 - description: Size is the number of bytes in the file. 4711 - format: int64 4712 - type: integer 4713 - url: 4714 - description: |- 4715 - URL is the HTTP address of the Artifact as exposed by the controller 4716 - managing the Source. It can be used to retrieve the Artifact for 4717 - consumption, e.g. by another controller applying the Artifact contents. 4718 - type: string 4719 - required: 4720 - - digest 4721 - - lastUpdateTime 4722 - - path 4723 - - revision 4724 - - url 4725 - type: object 4726 - conditions: 4727 - description: Conditions holds the conditions for the HelmChart. 4728 - items: 4729 - description: Condition contains details for one aspect of the current state of this API Resource. 4730 - properties: 4731 - lastTransitionTime: 4732 - description: |- 4733 - lastTransitionTime is the last time the condition transitioned from one status to another. 4734 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 4735 - format: date-time 4736 - type: string 4737 - message: 4738 - description: |- 4739 - message is a human readable message indicating details about the transition. 4740 - This may be an empty string. 4741 - maxLength: 32768 4742 - type: string 4743 - observedGeneration: 4744 - description: |- 4745 - observedGeneration represents the .metadata.generation that the condition was set based upon. 4746 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 4747 - with respect to the current state of the instance. 4748 - format: int64 4749 - minimum: 0 4750 - type: integer 4751 - reason: 4752 - description: |- 4753 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 4754 - Producers of specific condition types may define expected values and meanings for this field, 4755 - and whether the values are considered a guaranteed API. 4756 - The value should be a CamelCase string. 4757 - This field may not be empty. 4758 - maxLength: 1024 4759 - minLength: 1 4760 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 4761 - type: string 4762 - status: 4763 - description: status of the condition, one of True, False, Unknown. 4764 - enum: 4765 - - "True" 4766 - - "False" 4767 - - Unknown 4768 - type: string 4769 - type: 4770 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 4771 - maxLength: 316 4772 - 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])$ 4773 - type: string 4774 - required: 4775 - - lastTransitionTime 4776 - - message 4777 - - reason 4778 - - status 4779 - - type 4780 - type: object 4781 - type: array 4782 - lastHandledReconcileAt: 4783 - description: |- 4784 - LastHandledReconcileAt holds the value of the most recent 4785 - reconcile request value, so a change of the annotation value 4786 - can be detected. 4787 - type: string 4788 - observedChartName: 4789 - description: |- 4790 - ObservedChartName is the last observed chart name as specified by the 4791 - resolved chart reference. 4792 - type: string 4793 - observedGeneration: 4794 - description: |- 4795 - ObservedGeneration is the last observed generation of the HelmChart 4796 - object. 4797 - format: int64 4798 - type: integer 4799 - observedSourceArtifactRevision: 4800 - description: |- 4801 - ObservedSourceArtifactRevision is the last observed Artifact.Revision 4802 - of the HelmChartSpec.SourceRef. 4803 - type: string 4804 - observedValuesFiles: 4805 - description: |- 4806 - ObservedValuesFiles are the observed value files of the last successful 4807 - reconciliation. 4808 - It matches the chart in the last successfully reconciled artifact. 4809 - items: 4810 - type: string 4811 - type: array 4812 - url: 4813 - description: |- 4814 - URL is the dynamic fetch link for the latest Artifact. 4815 - It is provided on a "best effort" basis, and using the precise 4816 - BucketStatus.Artifact data is recommended. 4817 - type: string 4818 - type: object 4819 - type: object 4820 - served: true 4821 - storage: true 4822 - subresources: 4823 - status: {} 4824 - - additionalPrinterColumns: 4825 - - jsonPath: .spec.chart 4826 - name: Chart 4827 - type: string 4828 - - jsonPath: .spec.version 4829 - name: Version 4830 - type: string 4831 - - jsonPath: .spec.sourceRef.kind 4832 - name: Source Kind 4833 - type: string 4834 - - jsonPath: .spec.sourceRef.name 4835 - name: Source Name 4836 - type: string 4837 - - jsonPath: .metadata.creationTimestamp 4838 - name: Age 4839 - type: date 4840 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 4841 - name: Ready 4842 - type: string 4843 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 4844 - name: Status 4845 - type: string 4846 - deprecated: true 4847 - deprecationWarning: v1beta2 HelmChart is deprecated, upgrade to v1 4848 - name: v1beta2 4849 - schema: 4850 - openAPIV3Schema: 4851 - description: HelmChart is the Schema for the helmcharts API. 4852 - properties: 4853 - apiVersion: 4854 - description: |- 4855 - APIVersion defines the versioned schema of this representation of an object. 4856 - Servers should convert recognized schemas to the latest internal value, and 4857 - may reject unrecognized values. 4858 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 4859 - type: string 4860 - kind: 4861 - description: |- 4862 - Kind is a string value representing the REST resource this object represents. 4863 - Servers may infer this from the endpoint the client submits requests to. 4864 - Cannot be updated. 4865 - In CamelCase. 4866 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 4867 - type: string 4868 - metadata: 4869 - type: object 4870 - spec: 4871 - description: HelmChartSpec specifies the desired state of a Helm chart. 4872 - properties: 4873 - accessFrom: 4874 - description: |- 4875 - AccessFrom specifies an Access Control List for allowing cross-namespace 4876 - references to this object. 4877 - NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 4878 - properties: 4879 - namespaceSelectors: 4880 - description: |- 4881 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 4882 - Items in this list are evaluated using a logical OR operation. 4883 - items: 4884 - description: |- 4885 - NamespaceSelector selects the namespaces to which this ACL applies. 4886 - An empty map of MatchLabels matches all namespaces in a cluster. 4887 - properties: 4888 - matchLabels: 4889 - additionalProperties: 4890 - type: string 4891 - description: |- 4892 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 4893 - map is equivalent to an element of matchExpressions, whose key field is "key", the 4894 - operator is "In", and the values array contains only "value". The requirements are ANDed. 4895 - type: object 4896 - type: object 4897 - type: array 4898 - required: 4899 - - namespaceSelectors 4900 - type: object 4901 - chart: 4902 - description: |- 4903 - Chart is the name or path the Helm chart is available at in the 4904 - SourceRef. 4905 - type: string 4906 - ignoreMissingValuesFiles: 4907 - description: |- 4908 - IgnoreMissingValuesFiles controls whether to silently ignore missing values 4909 - files rather than failing. 4910 - type: boolean 4911 - interval: 4912 - description: |- 4913 - Interval at which the HelmChart SourceRef is checked for updates. 4914 - This interval is approximate and may be subject to jitter to ensure 4915 - efficient use of resources. 4916 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 4917 - type: string 4918 - reconcileStrategy: 4919 - default: ChartVersion 4920 - description: |- 4921 - ReconcileStrategy determines what enables the creation of a new artifact. 4922 - Valid values are ('ChartVersion', 'Revision'). 4923 - See the documentation of the values for an explanation on their behavior. 4924 - Defaults to ChartVersion when omitted. 4925 - enum: 4926 - - ChartVersion 4927 - - Revision 4928 - type: string 4929 - sourceRef: 4930 - description: SourceRef is the reference to the Source the chart is available at. 4931 - properties: 4932 - apiVersion: 4933 - description: APIVersion of the referent. 4934 - type: string 4935 - kind: 4936 - description: |- 4937 - Kind of the referent, valid values are ('HelmRepository', 'GitRepository', 4938 - 'Bucket'). 4939 - enum: 4940 - - HelmRepository 4941 - - GitRepository 4942 - - Bucket 4943 - type: string 4944 - name: 4945 - description: Name of the referent. 4946 - type: string 4947 - required: 4948 - - kind 4949 - - name 4950 - type: object 4951 - suspend: 4952 - description: |- 4953 - Suspend tells the controller to suspend the reconciliation of this 4954 - source. 4955 - type: boolean 4956 - valuesFile: 4957 - description: |- 4958 - ValuesFile is an alternative values file to use as the default chart 4959 - values, expected to be a relative path in the SourceRef. Deprecated in 4960 - favor of ValuesFiles, for backwards compatibility the file specified here 4961 - is merged before the ValuesFiles items. Ignored when omitted. 4962 - type: string 4963 - valuesFiles: 4964 - description: |- 4965 - ValuesFiles is an alternative list of values files to use as the chart 4966 - values (values.yaml is not included by default), expected to be a 4967 - relative path in the SourceRef. 4968 - Values files are merged in the order of this list with the last file 4969 - overriding the first. Ignored when omitted. 4970 - items: 4971 - type: string 4972 - type: array 4973 - verify: 4974 - description: |- 4975 - Verify contains the secret name containing the trusted public keys 4976 - used to verify the signature and specifies which provider to use to check 4977 - whether OCI image is authentic. 4978 - This field is only supported when using HelmRepository source with spec.type 'oci'. 4979 - Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. 4980 - properties: 4981 - matchOIDCIdentity: 4982 - description: |- 4983 - MatchOIDCIdentity specifies the identity matching criteria to use 4984 - while verifying an OCI artifact which was signed using Cosign keyless 4985 - signing. The artifact's identity is deemed to be verified if any of the 4986 - specified matchers match against the identity. 4987 - items: 4988 - description: |- 4989 - OIDCIdentityMatch specifies options for verifying the certificate identity, 4990 - i.e. the issuer and the subject of the certificate. 4991 - properties: 4992 - issuer: 4993 - description: |- 4994 - Issuer specifies the regex pattern to match against to verify 4995 - the OIDC issuer in the Fulcio certificate. The pattern must be a 4996 - valid Go regular expression. 4997 - type: string 4998 - subject: 4999 - description: |- 5000 - Subject specifies the regex pattern to match against to verify 5001 - the identity subject in the Fulcio certificate. The pattern must 5002 - be a valid Go regular expression. 5003 - type: string 5004 - required: 5005 - - issuer 5006 - - subject 5007 - type: object 5008 - type: array 5009 - provider: 5010 - default: cosign 5011 - description: Provider specifies the technology used to sign the OCI Artifact. 5012 - enum: 5013 - - cosign 5014 - - notation 5015 - type: string 5016 - secretRef: 5017 - description: |- 5018 - SecretRef specifies the Kubernetes Secret containing the 5019 - trusted public keys. 5020 - properties: 5021 - name: 5022 - description: Name of the referent. 5023 - type: string 5024 - required: 5025 - - name 5026 - type: object 5027 - required: 5028 - - provider 5029 - type: object 5030 - version: 5031 - default: '*' 5032 - description: |- 5033 - Version is the chart version semver expression, ignored for charts from 5034 - GitRepository and Bucket sources. Defaults to latest when omitted. 5035 - type: string 5036 - required: 5037 - - chart 5038 - - interval 5039 - - sourceRef 5040 - type: object 5041 - status: 5042 - default: 5043 - observedGeneration: -1 5044 - description: HelmChartStatus records the observed state of the HelmChart. 5045 - properties: 5046 - artifact: 5047 - description: Artifact represents the output of the last successful reconciliation. 5048 - properties: 5049 - digest: 5050 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 5051 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 5052 - type: string 5053 - lastUpdateTime: 5054 - description: |- 5055 - LastUpdateTime is the timestamp corresponding to the last update of the 5056 - Artifact. 5057 - format: date-time 5058 - type: string 5059 - metadata: 5060 - additionalProperties: 5061 - type: string 5062 - description: Metadata holds upstream information such as OCI annotations. 5063 - type: object 5064 - path: 5065 - description: |- 5066 - Path is the relative file path of the Artifact. It can be used to locate 5067 - the file in the root of the Artifact storage on the local file system of 5068 - the controller managing the Source. 5069 - type: string 5070 - revision: 5071 - description: |- 5072 - Revision is a human-readable identifier traceable in the origin source 5073 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 5074 - type: string 5075 - size: 5076 - description: Size is the number of bytes in the file. 5077 - format: int64 5078 - type: integer 5079 - url: 5080 - description: |- 5081 - URL is the HTTP address of the Artifact as exposed by the controller 5082 - managing the Source. It can be used to retrieve the Artifact for 5083 - consumption, e.g. by another controller applying the Artifact contents. 5084 - type: string 5085 - required: 5086 - - digest 5087 - - lastUpdateTime 5088 - - path 5089 - - revision 5090 - - url 5091 - type: object 5092 - conditions: 5093 - description: Conditions holds the conditions for the HelmChart. 5094 - items: 5095 - description: Condition contains details for one aspect of the current state of this API Resource. 5096 - properties: 5097 - lastTransitionTime: 5098 - description: |- 5099 - lastTransitionTime is the last time the condition transitioned from one status to another. 5100 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 5101 - format: date-time 5102 - type: string 5103 - message: 5104 - description: |- 5105 - message is a human readable message indicating details about the transition. 5106 - This may be an empty string. 5107 - maxLength: 32768 5108 - type: string 5109 - observedGeneration: 5110 - description: |- 5111 - observedGeneration represents the .metadata.generation that the condition was set based upon. 5112 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 5113 - with respect to the current state of the instance. 5114 - format: int64 5115 - minimum: 0 5116 - type: integer 5117 - reason: 5118 - description: |- 5119 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 5120 - Producers of specific condition types may define expected values and meanings for this field, 5121 - and whether the values are considered a guaranteed API. 5122 - The value should be a CamelCase string. 5123 - This field may not be empty. 5124 - maxLength: 1024 5125 - minLength: 1 5126 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 5127 - type: string 5128 - status: 5129 - description: status of the condition, one of True, False, Unknown. 5130 - enum: 5131 - - "True" 5132 - - "False" 5133 - - Unknown 5134 - type: string 5135 - type: 5136 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 5137 - maxLength: 316 5138 - 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])$ 5139 - type: string 5140 - required: 5141 - - lastTransitionTime 5142 - - message 5143 - - reason 5144 - - status 5145 - - type 5146 - type: object 5147 - type: array 5148 - lastHandledReconcileAt: 5149 - description: |- 5150 - LastHandledReconcileAt holds the value of the most recent 5151 - reconcile request value, so a change of the annotation value 5152 - can be detected. 5153 - type: string 5154 - observedChartName: 5155 - description: |- 5156 - ObservedChartName is the last observed chart name as specified by the 5157 - resolved chart reference. 5158 - type: string 5159 - observedGeneration: 5160 - description: |- 5161 - ObservedGeneration is the last observed generation of the HelmChart 5162 - object. 5163 - format: int64 5164 - type: integer 5165 - observedSourceArtifactRevision: 5166 - description: |- 5167 - ObservedSourceArtifactRevision is the last observed Artifact.Revision 5168 - of the HelmChartSpec.SourceRef. 5169 - type: string 5170 - observedValuesFiles: 5171 - description: |- 5172 - ObservedValuesFiles are the observed value files of the last successful 5173 - reconciliation. 5174 - It matches the chart in the last successfully reconciled artifact. 5175 - items: 5176 - type: string 5177 - type: array 5178 - url: 5179 - description: |- 5180 - URL is the dynamic fetch link for the latest Artifact. 5181 - It is provided on a "best effort" basis, and using the precise 5182 - BucketStatus.Artifact data is recommended. 5183 - type: string 5184 - type: object 5185 - type: object 5186 - served: true 5187 - storage: false 5188 - subresources: 5189 - status: {} 5190 ---- 5191 -apiVersion: apiextensions.k8s.io/v1 5192 -kind: CustomResourceDefinition 5193 -metadata: 5194 - annotations: 5195 - controller-gen.kubebuilder.io/version: v0.19.0 5196 - labels: 5197 - app.kubernetes.io/component: source-controller 5198 - app.kubernetes.io/instance: flux-system 5199 - app.kubernetes.io/part-of: flux 5200 - app.kubernetes.io/version: v2.7.5 5201 - name: helmrepositories.source.toolkit.fluxcd.io 5202 -spec: 5203 - group: source.toolkit.fluxcd.io 5204 - names: 5205 - kind: HelmRepository 5206 - listKind: HelmRepositoryList 5207 - plural: helmrepositories 5208 - shortNames: 5209 - - helmrepo 5210 - singular: helmrepository 5211 - scope: Namespaced 5212 - versions: 5213 - - additionalPrinterColumns: 5214 - - jsonPath: .spec.url 5215 - name: URL 5216 - type: string 5217 - - jsonPath: .metadata.creationTimestamp 5218 - name: Age 5219 - type: date 5220 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 5221 - name: Ready 5222 - type: string 5223 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 5224 - name: Status 5225 - type: string 5226 - name: v1 5227 - schema: 5228 - openAPIV3Schema: 5229 - description: HelmRepository is the Schema for the helmrepositories API. 5230 - properties: 5231 - apiVersion: 5232 - description: |- 5233 - APIVersion defines the versioned schema of this representation of an object. 5234 - Servers should convert recognized schemas to the latest internal value, and 5235 - may reject unrecognized values. 5236 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 5237 - type: string 5238 - kind: 5239 - description: |- 5240 - Kind is a string value representing the REST resource this object represents. 5241 - Servers may infer this from the endpoint the client submits requests to. 5242 - Cannot be updated. 5243 - In CamelCase. 5244 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 5245 - type: string 5246 - metadata: 5247 - type: object 5248 - spec: 5249 - description: |- 5250 - HelmRepositorySpec specifies the required configuration to produce an 5251 - Artifact for a Helm repository index YAML. 5252 - properties: 5253 - accessFrom: 5254 - description: |- 5255 - AccessFrom specifies an Access Control List for allowing cross-namespace 5256 - references to this object. 5257 - NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 5258 - properties: 5259 - namespaceSelectors: 5260 - description: |- 5261 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 5262 - Items in this list are evaluated using a logical OR operation. 5263 - items: 5264 - description: |- 5265 - NamespaceSelector selects the namespaces to which this ACL applies. 5266 - An empty map of MatchLabels matches all namespaces in a cluster. 5267 - properties: 5268 - matchLabels: 5269 - additionalProperties: 5270 - type: string 5271 - description: |- 5272 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 5273 - map is equivalent to an element of matchExpressions, whose key field is "key", the 5274 - operator is "In", and the values array contains only "value". The requirements are ANDed. 5275 - type: object 5276 - type: object 5277 - type: array 5278 - required: 5279 - - namespaceSelectors 5280 - type: object 5281 - certSecretRef: 5282 - description: |- 5283 - CertSecretRef can be given the name of a Secret containing 5284 - either or both of 5285 - 5286 - - a PEM-encoded client certificate (`tls.crt`) and private 5287 - key (`tls.key`); 5288 - - a PEM-encoded CA certificate (`ca.crt`) 5289 - 5290 - and whichever are supplied, will be used for connecting to the 5291 - registry. The client cert and key are useful if you are 5292 - authenticating with a certificate; the CA cert is useful if 5293 - you are using a self-signed server certificate. The Secret must 5294 - be of type `Opaque` or `kubernetes.io/tls`. 5295 - 5296 - It takes precedence over the values specified in the Secret referred 5297 - to by `.spec.secretRef`. 5298 - properties: 5299 - name: 5300 - description: Name of the referent. 5301 - type: string 5302 - required: 5303 - - name 5304 - type: object 5305 - insecure: 5306 - description: |- 5307 - Insecure allows connecting to a non-TLS HTTP container registry. 5308 - This field is only taken into account if the .spec.type field is set to 'oci'. 5309 - type: boolean 5310 - interval: 5311 - description: |- 5312 - Interval at which the HelmRepository URL is checked for updates. 5313 - This interval is approximate and may be subject to jitter to ensure 5314 - efficient use of resources. 5315 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5316 - type: string 5317 - passCredentials: 5318 - description: |- 5319 - PassCredentials allows the credentials from the SecretRef to be passed 5320 - on to a host that does not match the host as defined in URL. 5321 - This may be required if the host of the advertised chart URLs in the 5322 - index differ from the defined URL. 5323 - Enabling this should be done with caution, as it can potentially result 5324 - in credentials getting stolen in a MITM-attack. 5325 - type: boolean 5326 - provider: 5327 - default: generic 5328 - description: |- 5329 - Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 5330 - This field is optional, and only taken into account if the .spec.type field is set to 'oci'. 5331 - When not specified, defaults to 'generic'. 5332 - enum: 5333 - - generic 5334 - - aws 5335 - - azure 5336 - - gcp 5337 - type: string 5338 - secretRef: 5339 - description: |- 5340 - SecretRef specifies the Secret containing authentication credentials 5341 - for the HelmRepository. 5342 - For HTTP/S basic auth the secret must contain 'username' and 'password' 5343 - fields. 5344 - Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile' 5345 - keys is deprecated. Please use `.spec.certSecretRef` instead. 5346 - properties: 5347 - name: 5348 - description: Name of the referent. 5349 - type: string 5350 - required: 5351 - - name 5352 - type: object 5353 - suspend: 5354 - description: |- 5355 - Suspend tells the controller to suspend the reconciliation of this 5356 - HelmRepository. 5357 - type: boolean 5358 - timeout: 5359 - description: |- 5360 - Timeout is used for the index fetch operation for an HTTPS helm repository, 5361 - and for remote OCI Repository operations like pulling for an OCI helm 5362 - chart by the associated HelmChart. 5363 - Its default value is 60s. 5364 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 5365 - type: string 5366 - type: 5367 - description: |- 5368 - Type of the HelmRepository. 5369 - When this field is set to "oci", the URL field value must be prefixed with "oci://". 5370 - enum: 5371 - - default 5372 - - oci 5373 - type: string 5374 - url: 5375 - description: |- 5376 - URL of the Helm repository, a valid URL contains at least a protocol and 5377 - host. 5378 - pattern: ^(http|https|oci)://.*$ 5379 - type: string 5380 - required: 5381 - - url 5382 - type: object 5383 - status: 5384 - default: 5385 - observedGeneration: -1 5386 - description: HelmRepositoryStatus records the observed state of the HelmRepository. 5387 - properties: 5388 - artifact: 5389 - description: Artifact represents the last successful HelmRepository reconciliation. 5390 - properties: 5391 - digest: 5392 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 5393 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 5394 - type: string 5395 - lastUpdateTime: 5396 - description: |- 5397 - LastUpdateTime is the timestamp corresponding to the last update of the 5398 - Artifact. 5399 - format: date-time 5400 - type: string 5401 - metadata: 5402 - additionalProperties: 5403 - type: string 5404 - description: Metadata holds upstream information such as OCI annotations. 5405 - type: object 5406 - path: 5407 - description: |- 5408 - Path is the relative file path of the Artifact. It can be used to locate 5409 - the file in the root of the Artifact storage on the local file system of 5410 - the controller managing the Source. 5411 - type: string 5412 - revision: 5413 - description: |- 5414 - Revision is a human-readable identifier traceable in the origin source 5415 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 5416 - type: string 5417 - size: 5418 - description: Size is the number of bytes in the file. 5419 - format: int64 5420 - type: integer 5421 - url: 5422 - description: |- 5423 - URL is the HTTP address of the Artifact as exposed by the controller 5424 - managing the Source. It can be used to retrieve the Artifact for 5425 - consumption, e.g. by another controller applying the Artifact contents. 5426 - type: string 5427 - required: 5428 - - digest 5429 - - lastUpdateTime 5430 - - path 5431 - - revision 5432 - - url 5433 - type: object 5434 - conditions: 5435 - description: Conditions holds the conditions for the HelmRepository. 5436 - items: 5437 - description: Condition contains details for one aspect of the current state of this API Resource. 5438 - properties: 5439 - lastTransitionTime: 5440 - description: |- 5441 - lastTransitionTime is the last time the condition transitioned from one status to another. 5442 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 5443 - format: date-time 5444 - type: string 5445 - message: 5446 - description: |- 5447 - message is a human readable message indicating details about the transition. 5448 - This may be an empty string. 5449 - maxLength: 32768 5450 - type: string 5451 - observedGeneration: 5452 - description: |- 5453 - observedGeneration represents the .metadata.generation that the condition was set based upon. 5454 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 5455 - with respect to the current state of the instance. 5456 - format: int64 5457 - minimum: 0 5458 - type: integer 5459 - reason: 5460 - description: |- 5461 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 5462 - Producers of specific condition types may define expected values and meanings for this field, 5463 - and whether the values are considered a guaranteed API. 5464 - The value should be a CamelCase string. 5465 - This field may not be empty. 5466 - maxLength: 1024 5467 - minLength: 1 5468 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 5469 - type: string 5470 - status: 5471 - description: status of the condition, one of True, False, Unknown. 5472 - enum: 5473 - - "True" 5474 - - "False" 5475 - - Unknown 5476 - type: string 5477 - type: 5478 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 5479 - maxLength: 316 5480 - 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])$ 5481 - type: string 5482 - required: 5483 - - lastTransitionTime 5484 - - message 5485 - - reason 5486 - - status 5487 - - type 5488 - type: object 5489 - type: array 5490 - lastHandledReconcileAt: 5491 - description: |- 5492 - LastHandledReconcileAt holds the value of the most recent 5493 - reconcile request value, so a change of the annotation value 5494 - can be detected. 5495 - type: string 5496 - observedGeneration: 5497 - description: |- 5498 - ObservedGeneration is the last observed generation of the HelmRepository 5499 - object. 5500 - format: int64 5501 - type: integer 5502 - url: 5503 - description: |- 5504 - URL is the dynamic fetch link for the latest Artifact. 5505 - It is provided on a "best effort" basis, and using the precise 5506 - HelmRepositoryStatus.Artifact data is recommended. 5507 - type: string 5508 - type: object 5509 - type: object 5510 - served: true 5511 - storage: true 5512 - subresources: 5513 - status: {} 5514 - - additionalPrinterColumns: 5515 - - jsonPath: .spec.url 5516 - name: URL 5517 - type: string 5518 - - jsonPath: .metadata.creationTimestamp 5519 - name: Age 5520 - type: date 5521 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 5522 - name: Ready 5523 - type: string 5524 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 5525 - name: Status 5526 - type: string 5527 - deprecated: true 5528 - deprecationWarning: v1beta2 HelmRepository is deprecated, upgrade to v1 5529 - name: v1beta2 5530 - schema: 5531 - openAPIV3Schema: 5532 - description: HelmRepository is the Schema for the helmrepositories API. 5533 - properties: 5534 - apiVersion: 5535 - description: |- 5536 - APIVersion defines the versioned schema of this representation of an object. 5537 - Servers should convert recognized schemas to the latest internal value, and 5538 - may reject unrecognized values. 5539 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 5540 - type: string 5541 - kind: 5542 - description: |- 5543 - Kind is a string value representing the REST resource this object represents. 5544 - Servers may infer this from the endpoint the client submits requests to. 5545 - Cannot be updated. 5546 - In CamelCase. 5547 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 5548 - type: string 5549 - metadata: 5550 - type: object 5551 - spec: 5552 - description: |- 5553 - HelmRepositorySpec specifies the required configuration to produce an 5554 - Artifact for a Helm repository index YAML. 5555 - properties: 5556 - accessFrom: 5557 - description: |- 5558 - AccessFrom specifies an Access Control List for allowing cross-namespace 5559 - references to this object. 5560 - NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092 5561 - properties: 5562 - namespaceSelectors: 5563 - description: |- 5564 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 5565 - Items in this list are evaluated using a logical OR operation. 5566 - items: 5567 - description: |- 5568 - NamespaceSelector selects the namespaces to which this ACL applies. 5569 - An empty map of MatchLabels matches all namespaces in a cluster. 5570 - properties: 5571 - matchLabels: 5572 - additionalProperties: 5573 - type: string 5574 - description: |- 5575 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 5576 - map is equivalent to an element of matchExpressions, whose key field is "key", the 5577 - operator is "In", and the values array contains only "value". The requirements are ANDed. 5578 - type: object 5579 - type: object 5580 - type: array 5581 - required: 5582 - - namespaceSelectors 5583 - type: object 5584 - certSecretRef: 5585 - description: |- 5586 - CertSecretRef can be given the name of a Secret containing 5587 - either or both of 5588 - 5589 - - a PEM-encoded client certificate (`tls.crt`) and private 5590 - key (`tls.key`); 5591 - - a PEM-encoded CA certificate (`ca.crt`) 5592 - 5593 - and whichever are supplied, will be used for connecting to the 5594 - registry. The client cert and key are useful if you are 5595 - authenticating with a certificate; the CA cert is useful if 5596 - you are using a self-signed server certificate. The Secret must 5597 - be of type `Opaque` or `kubernetes.io/tls`. 5598 - 5599 - It takes precedence over the values specified in the Secret referred 5600 - to by `.spec.secretRef`. 5601 - properties: 5602 - name: 5603 - description: Name of the referent. 5604 - type: string 5605 - required: 5606 - - name 5607 - type: object 5608 - insecure: 5609 - description: |- 5610 - Insecure allows connecting to a non-TLS HTTP container registry. 5611 - This field is only taken into account if the .spec.type field is set to 'oci'. 5612 - type: boolean 5613 - interval: 5614 - description: |- 5615 - Interval at which the HelmRepository URL is checked for updates. 5616 - This interval is approximate and may be subject to jitter to ensure 5617 - efficient use of resources. 5618 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5619 - type: string 5620 - passCredentials: 5621 - description: |- 5622 - PassCredentials allows the credentials from the SecretRef to be passed 5623 - on to a host that does not match the host as defined in URL. 5624 - This may be required if the host of the advertised chart URLs in the 5625 - index differ from the defined URL. 5626 - Enabling this should be done with caution, as it can potentially result 5627 - in credentials getting stolen in a MITM-attack. 5628 - type: boolean 5629 - provider: 5630 - default: generic 5631 - description: |- 5632 - Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 5633 - This field is optional, and only taken into account if the .spec.type field is set to 'oci'. 5634 - When not specified, defaults to 'generic'. 5635 - enum: 5636 - - generic 5637 - - aws 5638 - - azure 5639 - - gcp 5640 - type: string 5641 - secretRef: 5642 - description: |- 5643 - SecretRef specifies the Secret containing authentication credentials 5644 - for the HelmRepository. 5645 - For HTTP/S basic auth the secret must contain 'username' and 'password' 5646 - fields. 5647 - Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile' 5648 - keys is deprecated. Please use `.spec.certSecretRef` instead. 5649 - properties: 5650 - name: 5651 - description: Name of the referent. 5652 - type: string 5653 - required: 5654 - - name 5655 - type: object 5656 - suspend: 5657 - description: |- 5658 - Suspend tells the controller to suspend the reconciliation of this 5659 - HelmRepository. 5660 - type: boolean 5661 - timeout: 5662 - description: |- 5663 - Timeout is used for the index fetch operation for an HTTPS helm repository, 5664 - and for remote OCI Repository operations like pulling for an OCI helm 5665 - chart by the associated HelmChart. 5666 - Its default value is 60s. 5667 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 5668 - type: string 5669 - type: 5670 - description: |- 5671 - Type of the HelmRepository. 5672 - When this field is set to "oci", the URL field value must be prefixed with "oci://". 5673 - enum: 5674 - - default 5675 - - oci 5676 - type: string 5677 - url: 5678 - description: |- 5679 - URL of the Helm repository, a valid URL contains at least a protocol and 5680 - host. 5681 - pattern: ^(http|https|oci)://.*$ 5682 - type: string 5683 - required: 5684 - - url 5685 - type: object 5686 - status: 5687 - default: 5688 - observedGeneration: -1 5689 - description: HelmRepositoryStatus records the observed state of the HelmRepository. 5690 - properties: 5691 - artifact: 5692 - description: Artifact represents the last successful HelmRepository reconciliation. 5693 - properties: 5694 - digest: 5695 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 5696 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 5697 - type: string 5698 - lastUpdateTime: 5699 - description: |- 5700 - LastUpdateTime is the timestamp corresponding to the last update of the 5701 - Artifact. 5702 - format: date-time 5703 - type: string 5704 - metadata: 5705 - additionalProperties: 5706 - type: string 5707 - description: Metadata holds upstream information such as OCI annotations. 5708 - type: object 5709 - path: 5710 - description: |- 5711 - Path is the relative file path of the Artifact. It can be used to locate 5712 - the file in the root of the Artifact storage on the local file system of 5713 - the controller managing the Source. 5714 - type: string 5715 - revision: 5716 - description: |- 5717 - Revision is a human-readable identifier traceable in the origin source 5718 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 5719 - type: string 5720 - size: 5721 - description: Size is the number of bytes in the file. 5722 - format: int64 5723 - type: integer 5724 - url: 5725 - description: |- 5726 - URL is the HTTP address of the Artifact as exposed by the controller 5727 - managing the Source. It can be used to retrieve the Artifact for 5728 - consumption, e.g. by another controller applying the Artifact contents. 5729 - type: string 5730 - required: 5731 - - digest 5732 - - lastUpdateTime 5733 - - path 5734 - - revision 5735 - - url 5736 - type: object 5737 - conditions: 5738 - description: Conditions holds the conditions for the HelmRepository. 5739 - items: 5740 - description: Condition contains details for one aspect of the current state of this API Resource. 5741 - properties: 5742 - lastTransitionTime: 5743 - description: |- 5744 - lastTransitionTime is the last time the condition transitioned from one status to another. 5745 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 5746 - format: date-time 5747 - type: string 5748 - message: 5749 - description: |- 5750 - message is a human readable message indicating details about the transition. 5751 - This may be an empty string. 5752 - maxLength: 32768 5753 - type: string 5754 - observedGeneration: 5755 - description: |- 5756 - observedGeneration represents the .metadata.generation that the condition was set based upon. 5757 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 5758 - with respect to the current state of the instance. 5759 - format: int64 5760 - minimum: 0 5761 - type: integer 5762 - reason: 5763 - description: |- 5764 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 5765 - Producers of specific condition types may define expected values and meanings for this field, 5766 - and whether the values are considered a guaranteed API. 5767 - The value should be a CamelCase string. 5768 - This field may not be empty. 5769 - maxLength: 1024 5770 - minLength: 1 5771 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 5772 - type: string 5773 - status: 5774 - description: status of the condition, one of True, False, Unknown. 5775 - enum: 5776 - - "True" 5777 - - "False" 5778 - - Unknown 5779 - type: string 5780 - type: 5781 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 5782 - maxLength: 316 5783 - 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])$ 5784 - type: string 5785 - required: 5786 - - lastTransitionTime 5787 - - message 5788 - - reason 5789 - - status 5790 - - type 5791 - type: object 5792 - type: array 5793 - lastHandledReconcileAt: 5794 - description: |- 5795 - LastHandledReconcileAt holds the value of the most recent 5796 - reconcile request value, so a change of the annotation value 5797 - can be detected. 5798 - type: string 5799 - observedGeneration: 5800 - description: |- 5801 - ObservedGeneration is the last observed generation of the HelmRepository 5802 - object. 5803 - format: int64 5804 - type: integer 5805 - url: 5806 - description: |- 5807 - URL is the dynamic fetch link for the latest Artifact. 5808 - It is provided on a "best effort" basis, and using the precise 5809 - HelmRepositoryStatus.Artifact data is recommended. 5810 - type: string 5811 - type: object 5812 - type: object 5813 - served: true 5814 - storage: false 5815 - subresources: 5816 - status: {} 5817 ---- 5818 -apiVersion: apiextensions.k8s.io/v1 5819 -kind: CustomResourceDefinition 5820 -metadata: 5821 - annotations: 5822 - controller-gen.kubebuilder.io/version: v0.19.0 5823 - labels: 5824 - app.kubernetes.io/component: source-controller 5825 - app.kubernetes.io/instance: flux-system 5826 - app.kubernetes.io/part-of: flux 5827 - app.kubernetes.io/version: v2.7.5 5828 - name: ocirepositories.source.toolkit.fluxcd.io 5829 -spec: 5830 - group: source.toolkit.fluxcd.io 5831 - names: 5832 - kind: OCIRepository 5833 - listKind: OCIRepositoryList 5834 - plural: ocirepositories 5835 - shortNames: 5836 - - ocirepo 5837 - singular: ocirepository 5838 - scope: Namespaced 5839 - versions: 5840 - - additionalPrinterColumns: 5841 - - jsonPath: .spec.url 5842 - name: URL 5843 - type: string 5844 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 5845 - name: Ready 5846 - type: string 5847 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 5848 - name: Status 5849 - type: string 5850 - - jsonPath: .metadata.creationTimestamp 5851 - name: Age 5852 - type: date 5853 - name: v1 5854 - schema: 5855 - openAPIV3Schema: 5856 - description: OCIRepository is the Schema for the ocirepositories API 5857 - properties: 5858 - apiVersion: 5859 - description: |- 5860 - APIVersion defines the versioned schema of this representation of an object. 5861 - Servers should convert recognized schemas to the latest internal value, and 5862 - may reject unrecognized values. 5863 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 5864 - type: string 5865 - kind: 5866 - description: |- 5867 - Kind is a string value representing the REST resource this object represents. 5868 - Servers may infer this from the endpoint the client submits requests to. 5869 - Cannot be updated. 5870 - In CamelCase. 5871 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 5872 - type: string 5873 - metadata: 5874 - type: object 5875 - spec: 5876 - description: OCIRepositorySpec defines the desired state of OCIRepository 5877 - properties: 5878 - certSecretRef: 5879 - description: |- 5880 - CertSecretRef can be given the name of a Secret containing 5881 - either or both of 5882 - 5883 - - a PEM-encoded client certificate (`tls.crt`) and private 5884 - key (`tls.key`); 5885 - - a PEM-encoded CA certificate (`ca.crt`) 5886 - 5887 - and whichever are supplied, will be used for connecting to the 5888 - registry. The client cert and key are useful if you are 5889 - authenticating with a certificate; the CA cert is useful if 5890 - you are using a self-signed server certificate. The Secret must 5891 - be of type `Opaque` or `kubernetes.io/tls`. 5892 - properties: 5893 - name: 5894 - description: Name of the referent. 5895 - type: string 5896 - required: 5897 - - name 5898 - type: object 5899 - ignore: 5900 - description: |- 5901 - Ignore overrides the set of excluded patterns in the .sourceignore format 5902 - (which is the same as .gitignore). If not provided, a default will be used, 5903 - consult the documentation for your version to find out what those are. 5904 - type: string 5905 - insecure: 5906 - description: Insecure allows connecting to a non-TLS HTTP container registry. 5907 - type: boolean 5908 - interval: 5909 - description: |- 5910 - Interval at which the OCIRepository URL is checked for updates. 5911 - This interval is approximate and may be subject to jitter to ensure 5912 - efficient use of resources. 5913 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 5914 - type: string 5915 - layerSelector: 5916 - description: |- 5917 - LayerSelector specifies which layer should be extracted from the OCI artifact. 5918 - When not specified, the first layer found in the artifact is selected. 5919 - properties: 5920 - mediaType: 5921 - description: |- 5922 - MediaType specifies the OCI media type of the layer 5923 - which should be extracted from the OCI Artifact. The 5924 - first layer matching this type is selected. 5925 - type: string 5926 - operation: 5927 - description: |- 5928 - Operation specifies how the selected layer should be processed. 5929 - By default, the layer compressed content is extracted to storage. 5930 - When the operation is set to 'copy', the layer compressed content 5931 - is persisted to storage as it is. 5932 - enum: 5933 - - extract 5934 - - copy 5935 - type: string 5936 - type: object 5937 - provider: 5938 - default: generic 5939 - description: |- 5940 - The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 5941 - When not specified, defaults to 'generic'. 5942 - enum: 5943 - - generic 5944 - - aws 5945 - - azure 5946 - - gcp 5947 - type: string 5948 - proxySecretRef: 5949 - description: |- 5950 - ProxySecretRef specifies the Secret containing the proxy configuration 5951 - to use while communicating with the container registry. 5952 - properties: 5953 - name: 5954 - description: Name of the referent. 5955 - type: string 5956 - required: 5957 - - name 5958 - type: object 5959 - ref: 5960 - description: |- 5961 - The OCI reference to pull and monitor for changes, 5962 - defaults to the latest tag. 5963 - properties: 5964 - digest: 5965 - description: |- 5966 - Digest is the image digest to pull, takes precedence over SemVer. 5967 - The value should be in the format 'sha256:<HASH>'. 5968 - type: string 5969 - semver: 5970 - description: |- 5971 - SemVer is the range of tags to pull selecting the latest within 5972 - the range, takes precedence over Tag. 5973 - type: string 5974 - semverFilter: 5975 - description: SemverFilter is a regex pattern to filter the tags within the SemVer range. 5976 - type: string 5977 - tag: 5978 - description: Tag is the image tag to pull, defaults to latest. 5979 - type: string 5980 - type: object 5981 - secretRef: 5982 - description: |- 5983 - SecretRef contains the secret name containing the registry login 5984 - credentials to resolve image metadata. 5985 - The secret must be of type kubernetes.io/dockerconfigjson. 5986 - properties: 5987 - name: 5988 - description: Name of the referent. 5989 - type: string 5990 - required: 5991 - - name 5992 - type: object 5993 - serviceAccountName: 5994 - description: |- 5995 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 5996 - the image pull if the service account has attached pull secrets. For more information: 5997 - https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account 5998 - type: string 5999 - suspend: 6000 - description: This flag tells the controller to suspend the reconciliation of this source. 6001 - type: boolean 6002 - timeout: 6003 - default: 60s 6004 - description: The timeout for remote OCI Repository operations like pulling, defaults to 60s. 6005 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 6006 - type: string 6007 - url: 6008 - description: |- 6009 - URL is a reference to an OCI artifact repository hosted 6010 - on a remote container registry. 6011 - pattern: ^oci://.*$ 6012 - type: string 6013 - verify: 6014 - description: |- 6015 - Verify contains the secret name containing the trusted public keys 6016 - used to verify the signature and specifies which provider to use to check 6017 - whether OCI image is authentic. 6018 - properties: 6019 - matchOIDCIdentity: 6020 - description: |- 6021 - MatchOIDCIdentity specifies the identity matching criteria to use 6022 - while verifying an OCI artifact which was signed using Cosign keyless 6023 - signing. The artifact's identity is deemed to be verified if any of the 6024 - specified matchers match against the identity. 6025 - items: 6026 - description: |- 6027 - OIDCIdentityMatch specifies options for verifying the certificate identity, 6028 - i.e. the issuer and the subject of the certificate. 6029 - properties: 6030 - issuer: 6031 - description: |- 6032 - Issuer specifies the regex pattern to match against to verify 6033 - the OIDC issuer in the Fulcio certificate. The pattern must be a 6034 - valid Go regular expression. 6035 - type: string 6036 - subject: 6037 - description: |- 6038 - Subject specifies the regex pattern to match against to verify 6039 - the identity subject in the Fulcio certificate. The pattern must 6040 - be a valid Go regular expression. 6041 - type: string 6042 - required: 6043 - - issuer 6044 - - subject 6045 - type: object 6046 - type: array 6047 - provider: 6048 - default: cosign 6049 - description: Provider specifies the technology used to sign the OCI Artifact. 6050 - enum: 6051 - - cosign 6052 - - notation 6053 - type: string 6054 - secretRef: 6055 - description: |- 6056 - SecretRef specifies the Kubernetes Secret containing the 6057 - trusted public keys. 6058 - properties: 6059 - name: 6060 - description: Name of the referent. 6061 - type: string 6062 - required: 6063 - - name 6064 - type: object 6065 - required: 6066 - - provider 6067 - type: object 6068 - required: 6069 - - interval 6070 - - url 6071 - type: object 6072 - status: 6073 - default: 6074 - observedGeneration: -1 6075 - description: OCIRepositoryStatus defines the observed state of OCIRepository 6076 - properties: 6077 - artifact: 6078 - description: Artifact represents the output of the last successful OCI Repository sync. 6079 - properties: 6080 - digest: 6081 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 6082 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 6083 - type: string 6084 - lastUpdateTime: 6085 - description: |- 6086 - LastUpdateTime is the timestamp corresponding to the last update of the 6087 - Artifact. 6088 - format: date-time 6089 - type: string 6090 - metadata: 6091 - additionalProperties: 6092 - type: string 6093 - description: Metadata holds upstream information such as OCI annotations. 6094 - type: object 6095 - path: 6096 - description: |- 6097 - Path is the relative file path of the Artifact. It can be used to locate 6098 - the file in the root of the Artifact storage on the local file system of 6099 - the controller managing the Source. 6100 - type: string 6101 - revision: 6102 - description: |- 6103 - Revision is a human-readable identifier traceable in the origin source 6104 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 6105 - type: string 6106 - size: 6107 - description: Size is the number of bytes in the file. 6108 - format: int64 6109 - type: integer 6110 - url: 6111 - description: |- 6112 - URL is the HTTP address of the Artifact as exposed by the controller 6113 - managing the Source. It can be used to retrieve the Artifact for 6114 - consumption, e.g. by another controller applying the Artifact contents. 6115 - type: string 6116 - required: 6117 - - digest 6118 - - lastUpdateTime 6119 - - path 6120 - - revision 6121 - - url 6122 - type: object 6123 - conditions: 6124 - description: Conditions holds the conditions for the OCIRepository. 6125 - items: 6126 - description: Condition contains details for one aspect of the current state of this API Resource. 6127 - properties: 6128 - lastTransitionTime: 6129 - description: |- 6130 - lastTransitionTime is the last time the condition transitioned from one status to another. 6131 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 6132 - format: date-time 6133 - type: string 6134 - message: 6135 - description: |- 6136 - message is a human readable message indicating details about the transition. 6137 - This may be an empty string. 6138 - maxLength: 32768 6139 - type: string 6140 - observedGeneration: 6141 - description: |- 6142 - observedGeneration represents the .metadata.generation that the condition was set based upon. 6143 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 6144 - with respect to the current state of the instance. 6145 - format: int64 6146 - minimum: 0 6147 - type: integer 6148 - reason: 6149 - description: |- 6150 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 6151 - Producers of specific condition types may define expected values and meanings for this field, 6152 - and whether the values are considered a guaranteed API. 6153 - The value should be a CamelCase string. 6154 - This field may not be empty. 6155 - maxLength: 1024 6156 - minLength: 1 6157 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 6158 - type: string 6159 - status: 6160 - description: status of the condition, one of True, False, Unknown. 6161 - enum: 6162 - - "True" 6163 - - "False" 6164 - - Unknown 6165 - type: string 6166 - type: 6167 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 6168 - maxLength: 316 6169 - 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])$ 6170 - type: string 6171 - required: 6172 - - lastTransitionTime 6173 - - message 6174 - - reason 6175 - - status 6176 - - type 6177 - type: object 6178 - type: array 6179 - lastHandledReconcileAt: 6180 - description: |- 6181 - LastHandledReconcileAt holds the value of the most recent 6182 - reconcile request value, so a change of the annotation value 6183 - can be detected. 6184 - type: string 6185 - observedGeneration: 6186 - description: ObservedGeneration is the last observed generation. 6187 - format: int64 6188 - type: integer 6189 - observedIgnore: 6190 - description: |- 6191 - ObservedIgnore is the observed exclusion patterns used for constructing 6192 - the source artifact. 6193 - type: string 6194 - observedLayerSelector: 6195 - description: |- 6196 - ObservedLayerSelector is the observed layer selector used for constructing 6197 - the source artifact. 6198 - properties: 6199 - mediaType: 6200 - description: |- 6201 - MediaType specifies the OCI media type of the layer 6202 - which should be extracted from the OCI Artifact. The 6203 - first layer matching this type is selected. 6204 - type: string 6205 - operation: 6206 - description: |- 6207 - Operation specifies how the selected layer should be processed. 6208 - By default, the layer compressed content is extracted to storage. 6209 - When the operation is set to 'copy', the layer compressed content 6210 - is persisted to storage as it is. 6211 - enum: 6212 - - extract 6213 - - copy 6214 - type: string 6215 - type: object 6216 - url: 6217 - description: URL is the download link for the artifact output of the last OCI Repository sync. 6218 - type: string 6219 - type: object 6220 - type: object 6221 - served: true 6222 - storage: true 6223 - subresources: 6224 - status: {} 6225 - - additionalPrinterColumns: 6226 - - jsonPath: .spec.url 6227 - name: URL 6228 - type: string 6229 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 6230 - name: Ready 6231 - type: string 6232 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 6233 - name: Status 6234 - type: string 6235 - - jsonPath: .metadata.creationTimestamp 6236 - name: Age 6237 - type: date 6238 - deprecated: true 6239 - deprecationWarning: v1beta2 OCIRepository is deprecated, upgrade to v1 6240 - name: v1beta2 6241 - schema: 6242 - openAPIV3Schema: 6243 - description: OCIRepository is the Schema for the ocirepositories API 6244 - properties: 6245 - apiVersion: 6246 - description: |- 6247 - APIVersion defines the versioned schema of this representation of an object. 6248 - Servers should convert recognized schemas to the latest internal value, and 6249 - may reject unrecognized values. 6250 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 6251 - type: string 6252 - kind: 6253 - description: |- 6254 - Kind is a string value representing the REST resource this object represents. 6255 - Servers may infer this from the endpoint the client submits requests to. 6256 - Cannot be updated. 6257 - In CamelCase. 6258 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 6259 - type: string 6260 - metadata: 6261 - type: object 6262 - spec: 6263 - description: OCIRepositorySpec defines the desired state of OCIRepository 6264 - properties: 6265 - certSecretRef: 6266 - description: |- 6267 - CertSecretRef can be given the name of a Secret containing 6268 - either or both of 6269 - 6270 - - a PEM-encoded client certificate (`tls.crt`) and private 6271 - key (`tls.key`); 6272 - - a PEM-encoded CA certificate (`ca.crt`) 6273 - 6274 - and whichever are supplied, will be used for connecting to the 6275 - registry. The client cert and key are useful if you are 6276 - authenticating with a certificate; the CA cert is useful if 6277 - you are using a self-signed server certificate. The Secret must 6278 - be of type `Opaque` or `kubernetes.io/tls`. 6279 - 6280 - Note: Support for the `caFile`, `certFile` and `keyFile` keys have 6281 - been deprecated. 6282 - properties: 6283 - name: 6284 - description: Name of the referent. 6285 - type: string 6286 - required: 6287 - - name 6288 - type: object 6289 - ignore: 6290 - description: |- 6291 - Ignore overrides the set of excluded patterns in the .sourceignore format 6292 - (which is the same as .gitignore). If not provided, a default will be used, 6293 - consult the documentation for your version to find out what those are. 6294 - type: string 6295 - insecure: 6296 - description: Insecure allows connecting to a non-TLS HTTP container registry. 6297 - type: boolean 6298 - interval: 6299 - description: |- 6300 - Interval at which the OCIRepository URL is checked for updates. 6301 - This interval is approximate and may be subject to jitter to ensure 6302 - efficient use of resources. 6303 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 6304 - type: string 6305 - layerSelector: 6306 - description: |- 6307 - LayerSelector specifies which layer should be extracted from the OCI artifact. 6308 - When not specified, the first layer found in the artifact is selected. 6309 - properties: 6310 - mediaType: 6311 - description: |- 6312 - MediaType specifies the OCI media type of the layer 6313 - which should be extracted from the OCI Artifact. The 6314 - first layer matching this type is selected. 6315 - type: string 6316 - operation: 6317 - description: |- 6318 - Operation specifies how the selected layer should be processed. 6319 - By default, the layer compressed content is extracted to storage. 6320 - When the operation is set to 'copy', the layer compressed content 6321 - is persisted to storage as it is. 6322 - enum: 6323 - - extract 6324 - - copy 6325 - type: string 6326 - type: object 6327 - provider: 6328 - default: generic 6329 - description: |- 6330 - The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 6331 - When not specified, defaults to 'generic'. 6332 - enum: 6333 - - generic 6334 - - aws 6335 - - azure 6336 - - gcp 6337 - type: string 6338 - proxySecretRef: 6339 - description: |- 6340 - ProxySecretRef specifies the Secret containing the proxy configuration 6341 - to use while communicating with the container registry. 6342 - properties: 6343 - name: 6344 - description: Name of the referent. 6345 - type: string 6346 - required: 6347 - - name 6348 - type: object 6349 - ref: 6350 - description: |- 6351 - The OCI reference to pull and monitor for changes, 6352 - defaults to the latest tag. 6353 - properties: 6354 - digest: 6355 - description: |- 6356 - Digest is the image digest to pull, takes precedence over SemVer. 6357 - The value should be in the format 'sha256:<HASH>'. 6358 - type: string 6359 - semver: 6360 - description: |- 6361 - SemVer is the range of tags to pull selecting the latest within 6362 - the range, takes precedence over Tag. 6363 - type: string 6364 - semverFilter: 6365 - description: SemverFilter is a regex pattern to filter the tags within the SemVer range. 6366 - type: string 6367 - tag: 6368 - description: Tag is the image tag to pull, defaults to latest. 6369 - type: string 6370 - type: object 6371 - secretRef: 6372 - description: |- 6373 - SecretRef contains the secret name containing the registry login 6374 - credentials to resolve image metadata. 6375 - The secret must be of type kubernetes.io/dockerconfigjson. 6376 - properties: 6377 - name: 6378 - description: Name of the referent. 6379 - type: string 6380 - required: 6381 - - name 6382 - type: object 6383 - serviceAccountName: 6384 - description: |- 6385 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 6386 - the image pull if the service account has attached pull secrets. For more information: 6387 - https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account 6388 - type: string 6389 - suspend: 6390 - description: This flag tells the controller to suspend the reconciliation of this source. 6391 - type: boolean 6392 - timeout: 6393 - default: 60s 6394 - description: The timeout for remote OCI Repository operations like pulling, defaults to 60s. 6395 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 6396 - type: string 6397 - url: 6398 - description: |- 6399 - URL is a reference to an OCI artifact repository hosted 6400 - on a remote container registry. 6401 - pattern: ^oci://.*$ 6402 - type: string 6403 - verify: 6404 - description: |- 6405 - Verify contains the secret name containing the trusted public keys 6406 - used to verify the signature and specifies which provider to use to check 6407 - whether OCI image is authentic. 6408 - properties: 6409 - matchOIDCIdentity: 6410 - description: |- 6411 - MatchOIDCIdentity specifies the identity matching criteria to use 6412 - while verifying an OCI artifact which was signed using Cosign keyless 6413 - signing. The artifact's identity is deemed to be verified if any of the 6414 - specified matchers match against the identity. 6415 - items: 6416 - description: |- 6417 - OIDCIdentityMatch specifies options for verifying the certificate identity, 6418 - i.e. the issuer and the subject of the certificate. 6419 - properties: 6420 - issuer: 6421 - description: |- 6422 - Issuer specifies the regex pattern to match against to verify 6423 - the OIDC issuer in the Fulcio certificate. The pattern must be a 6424 - valid Go regular expression. 6425 - type: string 6426 - subject: 6427 - description: |- 6428 - Subject specifies the regex pattern to match against to verify 6429 - the identity subject in the Fulcio certificate. The pattern must 6430 - be a valid Go regular expression. 6431 - type: string 6432 - required: 6433 - - issuer 6434 - - subject 6435 - type: object 6436 - type: array 6437 - provider: 6438 - default: cosign 6439 - description: Provider specifies the technology used to sign the OCI Artifact. 6440 - enum: 6441 - - cosign 6442 - - notation 6443 - type: string 6444 - secretRef: 6445 - description: |- 6446 - SecretRef specifies the Kubernetes Secret containing the 6447 - trusted public keys. 6448 - properties: 6449 - name: 6450 - description: Name of the referent. 6451 - type: string 6452 - required: 6453 - - name 6454 - type: object 6455 - required: 6456 - - provider 6457 - type: object 6458 - required: 6459 - - interval 6460 - - url 6461 - type: object 6462 - status: 6463 - default: 6464 - observedGeneration: -1 6465 - description: OCIRepositoryStatus defines the observed state of OCIRepository 6466 - properties: 6467 - artifact: 6468 - description: Artifact represents the output of the last successful OCI Repository sync. 6469 - properties: 6470 - digest: 6471 - description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'. 6472 - pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$ 6473 - type: string 6474 - lastUpdateTime: 6475 - description: |- 6476 - LastUpdateTime is the timestamp corresponding to the last update of the 6477 - Artifact. 6478 - format: date-time 6479 - type: string 6480 - metadata: 6481 - additionalProperties: 6482 - type: string 6483 - description: Metadata holds upstream information such as OCI annotations. 6484 - type: object 6485 - path: 6486 - description: |- 6487 - Path is the relative file path of the Artifact. It can be used to locate 6488 - the file in the root of the Artifact storage on the local file system of 6489 - the controller managing the Source. 6490 - type: string 6491 - revision: 6492 - description: |- 6493 - Revision is a human-readable identifier traceable in the origin source 6494 - system. It can be a Git commit SHA, Git tag, a Helm chart version, etc. 6495 - type: string 6496 - size: 6497 - description: Size is the number of bytes in the file. 6498 - format: int64 6499 - type: integer 6500 - url: 6501 - description: |- 6502 - URL is the HTTP address of the Artifact as exposed by the controller 6503 - managing the Source. It can be used to retrieve the Artifact for 6504 - consumption, e.g. by another controller applying the Artifact contents. 6505 - type: string 6506 - required: 6507 - - digest 6508 - - lastUpdateTime 6509 - - path 6510 - - revision 6511 - - url 6512 - type: object 6513 - conditions: 6514 - description: Conditions holds the conditions for the OCIRepository. 6515 - items: 6516 - description: Condition contains details for one aspect of the current state of this API Resource. 6517 - properties: 6518 - lastTransitionTime: 6519 - description: |- 6520 - lastTransitionTime is the last time the condition transitioned from one status to another. 6521 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 6522 - format: date-time 6523 - type: string 6524 - message: 6525 - description: |- 6526 - message is a human readable message indicating details about the transition. 6527 - This may be an empty string. 6528 - maxLength: 32768 6529 - type: string 6530 - observedGeneration: 6531 - description: |- 6532 - observedGeneration represents the .metadata.generation that the condition was set based upon. 6533 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 6534 - with respect to the current state of the instance. 6535 - format: int64 6536 - minimum: 0 6537 - type: integer 6538 - reason: 6539 - description: |- 6540 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 6541 - Producers of specific condition types may define expected values and meanings for this field, 6542 - and whether the values are considered a guaranteed API. 6543 - The value should be a CamelCase string. 6544 - This field may not be empty. 6545 - maxLength: 1024 6546 - minLength: 1 6547 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 6548 - type: string 6549 - status: 6550 - description: status of the condition, one of True, False, Unknown. 6551 - enum: 6552 - - "True" 6553 - - "False" 6554 - - Unknown 6555 - type: string 6556 - type: 6557 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 6558 - maxLength: 316 6559 - 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])$ 6560 - type: string 6561 - required: 6562 - - lastTransitionTime 6563 - - message 6564 - - reason 6565 - - status 6566 - - type 6567 - type: object 6568 - type: array 6569 - contentConfigChecksum: 6570 - description: |- 6571 - ContentConfigChecksum is a checksum of all the configurations related to 6572 - the content of the source artifact: 6573 - - .spec.ignore 6574 - - .spec.layerSelector 6575 - observed in .status.observedGeneration version of the object. This can 6576 - be used to determine if the content configuration has changed and the 6577 - artifact needs to be rebuilt. 6578 - It has the format of `<algo>:<checksum>`, for example: `sha256:<checksum>`. 6579 - 6580 - Deprecated: Replaced with explicit fields for observed artifact content 6581 - config in the status. 6582 - type: string 6583 - lastHandledReconcileAt: 6584 - description: |- 6585 - LastHandledReconcileAt holds the value of the most recent 6586 - reconcile request value, so a change of the annotation value 6587 - can be detected. 6588 - type: string 6589 - observedGeneration: 6590 - description: ObservedGeneration is the last observed generation. 6591 - format: int64 6592 - type: integer 6593 - observedIgnore: 6594 - description: |- 6595 - ObservedIgnore is the observed exclusion patterns used for constructing 6596 - the source artifact. 6597 - type: string 6598 - observedLayerSelector: 6599 - description: |- 6600 - ObservedLayerSelector is the observed layer selector used for constructing 6601 - the source artifact. 6602 - properties: 6603 - mediaType: 6604 - description: |- 6605 - MediaType specifies the OCI media type of the layer 6606 - which should be extracted from the OCI Artifact. The 6607 - first layer matching this type is selected. 6608 - type: string 6609 - operation: 6610 - description: |- 6611 - Operation specifies how the selected layer should be processed. 6612 - By default, the layer compressed content is extracted to storage. 6613 - When the operation is set to 'copy', the layer compressed content 6614 - is persisted to storage as it is. 6615 - enum: 6616 - - extract 6617 - - copy 6618 - type: string 6619 - type: object 6620 - url: 6621 - description: URL is the download link for the artifact output of the last OCI Repository sync. 6622 - type: string 6623 - type: object 6624 - type: object 6625 - served: true 6626 - storage: false 6627 - subresources: 6628 - status: {} 6629 ---- 6630 -apiVersion: v1 6631 -kind: ServiceAccount 6632 -metadata: 6633 - labels: 6634 - app.kubernetes.io/component: source-controller 6635 - app.kubernetes.io/instance: flux-system 6636 - app.kubernetes.io/part-of: flux 6637 - app.kubernetes.io/version: v2.7.5 6638 - name: source-controller 6639 - namespace: flux-system 6640 ---- 6641 -apiVersion: v1 6642 -kind: Service 6643 -metadata: 6644 - labels: 6645 - app.kubernetes.io/component: source-controller 6646 - app.kubernetes.io/instance: flux-system 6647 - app.kubernetes.io/part-of: flux 6648 - app.kubernetes.io/version: v2.7.5 6649 - control-plane: controller 6650 - name: source-controller 6651 - namespace: flux-system 6652 -spec: 6653 - ports: 6654 - - name: http 6655 - port: 80 6656 - protocol: TCP 6657 - targetPort: http 6658 - selector: 6659 - app: source-controller 6660 - type: ClusterIP 6661 ---- 6662 -apiVersion: apps/v1 6663 -kind: Deployment 6664 -metadata: 6665 - labels: 6666 - app.kubernetes.io/component: source-controller 6667 - app.kubernetes.io/instance: flux-system 6668 - app.kubernetes.io/part-of: flux 6669 - app.kubernetes.io/version: v2.7.5 6670 - control-plane: controller 6671 - name: source-controller 6672 - namespace: flux-system 6673 -spec: 6674 - replicas: 1 6675 - selector: 6676 - matchLabels: 6677 - app: source-controller 6678 - strategy: 6679 - type: Recreate 6680 - template: 6681 - metadata: 6682 - annotations: 6683 - prometheus.io/port: "8080" 6684 - prometheus.io/scrape: "true" 6685 - labels: 6686 - app: source-controller 6687 - app.kubernetes.io/component: source-controller 6688 - app.kubernetes.io/instance: flux-system 6689 - app.kubernetes.io/part-of: flux 6690 - app.kubernetes.io/version: v2.7.5 6691 - spec: 6692 - containers: 6693 - - args: 6694 - - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 6695 - - --watch-all-namespaces=true 6696 - - --log-level=info 6697 - - --log-encoding=json 6698 - - --enable-leader-election 6699 - - --storage-path=/data 6700 - - --storage-adv-addr=source-controller.$(RUNTIME_NAMESPACE).svc.cluster.local. 6701 - env: 6702 - - name: RUNTIME_NAMESPACE 6703 - valueFrom: 6704 - fieldRef: 6705 - fieldPath: metadata.namespace 6706 - - name: TUF_ROOT 6707 - value: /tmp/.sigstore 6708 - - name: GOMEMLIMIT 6709 - valueFrom: 6710 - resourceFieldRef: 6711 - containerName: manager 6712 - resource: limits.memory 6713 - image: ghcr.io/fluxcd/source-controller:v1.7.4 6714 - imagePullPolicy: IfNotPresent 6715 - livenessProbe: 6716 - httpGet: 6717 - path: /healthz 6718 - port: healthz 6719 - name: manager 6720 - ports: 6721 - - containerPort: 9090 6722 - name: http 6723 - protocol: TCP 6724 - - containerPort: 8080 6725 - name: http-prom 6726 - protocol: TCP 6727 - - containerPort: 9440 6728 - name: healthz 6729 - protocol: TCP 6730 - readinessProbe: 6731 - httpGet: 6732 - path: / 6733 - port: http 6734 - resources: 6735 - limits: 6736 - cpu: 1000m 6737 - memory: 1Gi 6738 - requests: 6739 - cpu: 50m 6740 - memory: 64Mi 6741 - securityContext: 6742 - allowPrivilegeEscalation: false 6743 - capabilities: 6744 - drop: 6745 - - ALL 6746 - readOnlyRootFilesystem: true 6747 - runAsNonRoot: true 6748 - seccompProfile: 6749 - type: RuntimeDefault 6750 - volumeMounts: 6751 - - mountPath: /data 6752 - name: data 6753 - - mountPath: /tmp 6754 - name: tmp 6755 - nodeSelector: 6756 - kubernetes.io/os: linux 6757 - priorityClassName: system-cluster-critical 6758 - securityContext: 6759 - fsGroup: 1337 6760 - serviceAccountName: source-controller 6761 - terminationGracePeriodSeconds: 10 6762 - volumes: 6763 - - emptyDir: {} 6764 - name: data 6765 - - emptyDir: {} 6766 - name: tmp 6767 ---- 6768 -apiVersion: apiextensions.k8s.io/v1 6769 -kind: CustomResourceDefinition 6770 -metadata: 6771 - annotations: 6772 - controller-gen.kubebuilder.io/version: v0.19.0 6773 - labels: 6774 - app.kubernetes.io/component: kustomize-controller 6775 - app.kubernetes.io/instance: flux-system 6776 - app.kubernetes.io/part-of: flux 6777 - app.kubernetes.io/version: v2.7.5 6778 - name: kustomizations.kustomize.toolkit.fluxcd.io 6779 -spec: 6780 - group: kustomize.toolkit.fluxcd.io 6781 - names: 6782 - kind: Kustomization 6783 - listKind: KustomizationList 6784 - plural: kustomizations 6785 - shortNames: 6786 - - ks 6787 - singular: kustomization 6788 - scope: Namespaced 6789 - versions: 6790 - - additionalPrinterColumns: 6791 - - jsonPath: .metadata.creationTimestamp 6792 - name: Age 6793 - type: date 6794 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 6795 - name: Ready 6796 - type: string 6797 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 6798 - name: Status 6799 - type: string 6800 - name: v1 6801 - schema: 6802 - openAPIV3Schema: 6803 - description: Kustomization is the Schema for the kustomizations API. 6804 - properties: 6805 - apiVersion: 6806 - description: |- 6807 - APIVersion defines the versioned schema of this representation of an object. 6808 - Servers should convert recognized schemas to the latest internal value, and 6809 - may reject unrecognized values. 6810 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 6811 - type: string 6812 - kind: 6813 - description: |- 6814 - Kind is a string value representing the REST resource this object represents. 6815 - Servers may infer this from the endpoint the client submits requests to. 6816 - Cannot be updated. 6817 - In CamelCase. 6818 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 6819 - type: string 6820 - metadata: 6821 - type: object 6822 - spec: 6823 - description: |- 6824 - KustomizationSpec defines the configuration to calculate the desired state 6825 - from a Source using Kustomize. 6826 - properties: 6827 - commonMetadata: 6828 - description: |- 6829 - CommonMetadata specifies the common labels and annotations that are 6830 - applied to all resources. Any existing label or annotation will be 6831 - overridden if its key matches a common one. 6832 - properties: 6833 - annotations: 6834 - additionalProperties: 6835 - type: string 6836 - description: Annotations to be added to the object's metadata. 6837 - type: object 6838 - labels: 6839 - additionalProperties: 6840 - type: string 6841 - description: Labels to be added to the object's metadata. 6842 - type: object 6843 - type: object 6844 - components: 6845 - description: Components specifies relative paths to kustomize Components. 6846 - items: 6847 - type: string 6848 - type: array 6849 - decryption: 6850 - description: Decrypt Kubernetes secrets before applying them on the cluster. 6851 - properties: 6852 - provider: 6853 - description: Provider is the name of the decryption engine. 6854 - enum: 6855 - - sops 6856 - type: string 6857 - secretRef: 6858 - description: |- 6859 - The secret name containing the private OpenPGP keys used for decryption. 6860 - A static credential for a cloud provider defined inside the Secret 6861 - takes priority to secret-less authentication with the ServiceAccountName 6862 - field. 6863 - properties: 6864 - name: 6865 - description: Name of the referent. 6866 - type: string 6867 - required: 6868 - - name 6869 - type: object 6870 - serviceAccountName: 6871 - description: |- 6872 - ServiceAccountName is the name of the service account used to 6873 - authenticate with KMS services from cloud providers. If a 6874 - static credential for a given cloud provider is defined 6875 - inside the Secret referenced by SecretRef, that static 6876 - credential takes priority. 6877 - type: string 6878 - required: 6879 - - provider 6880 - type: object 6881 - deletionPolicy: 6882 - description: |- 6883 - DeletionPolicy can be used to control garbage collection when this 6884 - Kustomization is deleted. Valid values are ('MirrorPrune', 'Delete', 6885 - 'WaitForTermination', 'Orphan'). 'MirrorPrune' mirrors the Prune field 6886 - (orphan if false, delete if true). Defaults to 'MirrorPrune'. 6887 - enum: 6888 - - MirrorPrune 6889 - - Delete 6890 - - WaitForTermination 6891 - - Orphan 6892 - type: string 6893 - dependsOn: 6894 - description: |- 6895 - DependsOn may contain a DependencyReference slice 6896 - with references to Kustomization resources that must be ready before this 6897 - Kustomization can be reconciled. 6898 - items: 6899 - description: DependencyReference defines a Kustomization dependency on another Kustomization resource. 6900 - properties: 6901 - name: 6902 - description: Name of the referent. 6903 - type: string 6904 - namespace: 6905 - description: |- 6906 - Namespace of the referent, defaults to the namespace of the Kustomization 6907 - resource object that contains the reference. 6908 - type: string 6909 - readyExpr: 6910 - description: |- 6911 - ReadyExpr is a CEL expression that can be used to assess the readiness 6912 - of a dependency. When specified, the built-in readiness check 6913 - is replaced by the logic defined in the CEL expression. 6914 - To make the CEL expression additive to the built-in readiness check, 6915 - the feature gate `AdditiveCELDependencyCheck` must be set to `true`. 6916 - type: string 6917 - required: 6918 - - name 6919 - type: object 6920 - type: array 6921 - force: 6922 - default: false 6923 - description: |- 6924 - Force instructs the controller to recreate resources 6925 - when patching fails due to an immutable field change. 6926 - type: boolean 6927 - healthCheckExprs: 6928 - description: |- 6929 - HealthCheckExprs is a list of healthcheck expressions for evaluating the 6930 - health of custom resources using Common Expression Language (CEL). 6931 - The expressions are evaluated only when Wait or HealthChecks are specified. 6932 - items: 6933 - description: CustomHealthCheck defines the health check for custom resources. 6934 - properties: 6935 - apiVersion: 6936 - description: APIVersion of the custom resource under evaluation. 6937 - type: string 6938 - current: 6939 - description: |- 6940 - Current is the CEL expression that determines if the status 6941 - of the custom resource has reached the desired state. 6942 - type: string 6943 - failed: 6944 - description: |- 6945 - Failed is the CEL expression that determines if the status 6946 - of the custom resource has failed to reach the desired state. 6947 - type: string 6948 - inProgress: 6949 - description: |- 6950 - InProgress is the CEL expression that determines if the status 6951 - of the custom resource has not yet reached the desired state. 6952 - type: string 6953 - kind: 6954 - description: Kind of the custom resource under evaluation. 6955 - type: string 6956 - required: 6957 - - apiVersion 6958 - - current 6959 - - kind 6960 - type: object 6961 - type: array 6962 - healthChecks: 6963 - description: A list of resources to be included in the health assessment. 6964 - items: 6965 - description: |- 6966 - NamespacedObjectKindReference contains enough information to locate the typed referenced Kubernetes resource object 6967 - in any namespace. 6968 - properties: 6969 - apiVersion: 6970 - description: API version of the referent, if not specified the Kubernetes preferred version will be used. 6971 - type: string 6972 - kind: 6973 - description: Kind of the referent. 6974 - type: string 6975 - name: 6976 - description: Name of the referent. 6977 - type: string 6978 - namespace: 6979 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 6980 - type: string 6981 - required: 6982 - - kind 6983 - - name 6984 - type: object 6985 - type: array 6986 - ignoreMissingComponents: 6987 - description: |- 6988 - IgnoreMissingComponents instructs the controller to ignore Components paths 6989 - not found in source by removing them from the generated kustomization.yaml 6990 - before running kustomize build. 6991 - type: boolean 6992 - images: 6993 - description: |- 6994 - Images is a list of (image name, new name, new tag or digest) 6995 - for changing image names, tags or digests. This can also be achieved with a 6996 - patch, but this operator is simpler to specify. 6997 - items: 6998 - description: Image contains an image name, a new name, a new tag or digest, which will replace the original name and tag. 6999 - properties: 7000 - digest: 7001 - description: |- 7002 - Digest is the value used to replace the original image tag. 7003 - If digest is present NewTag value is ignored. 7004 - type: string 7005 - name: 7006 - description: Name is a tag-less image name. 7007 - type: string 7008 - newName: 7009 - description: NewName is the value used to replace the original name. 7010 - type: string 7011 - newTag: 7012 - description: NewTag is the value used to replace the original tag. 7013 - type: string 7014 - required: 7015 - - name 7016 - type: object 7017 - type: array 7018 - interval: 7019 - description: |- 7020 - The interval at which to reconcile the Kustomization. 7021 - This interval is approximate and may be subject to jitter to ensure 7022 - efficient use of resources. 7023 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7024 - type: string 7025 - kubeConfig: 7026 - description: |- 7027 - The KubeConfig for reconciling the Kustomization on a remote cluster. 7028 - When used in combination with KustomizationSpec.ServiceAccountName, 7029 - forces the controller to act on behalf of that Service Account at the 7030 - target cluster. 7031 - If the --default-service-account flag is set, its value will be used as 7032 - a controller level fallback for when KustomizationSpec.ServiceAccountName 7033 - is empty. 7034 - properties: 7035 - configMapRef: 7036 - description: |- 7037 - ConfigMapRef holds an optional name of a ConfigMap that contains 7038 - the following keys: 7039 - 7040 - - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 7041 - `generic`. Required. 7042 - - `cluster`: the fully qualified resource name of the Kubernetes 7043 - cluster in the cloud provider API. Not used by the `generic` 7044 - provider. Required when one of `address` or `ca.crt` is not set. 7045 - - `address`: the address of the Kubernetes API server. Required 7046 - for `generic`. For the other providers, if not specified, the 7047 - first address in the cluster resource will be used, and if 7048 - specified, it must match one of the addresses in the cluster 7049 - resource. 7050 - If audiences is not set, will be used as the audience for the 7051 - `generic` provider. 7052 - - `ca.crt`: the optional PEM-encoded CA certificate for the 7053 - Kubernetes API server. If not set, the controller will use the 7054 - CA certificate from the cluster resource. 7055 - - `audiences`: the optional audiences as a list of 7056 - line-break-separated strings for the Kubernetes ServiceAccount 7057 - token. Defaults to the `address` for the `generic` provider, or 7058 - to specific values for the other providers depending on the 7059 - provider. 7060 - - `serviceAccountName`: the optional name of the Kubernetes 7061 - ServiceAccount in the same namespace that should be used 7062 - for authentication. If not specified, the controller 7063 - ServiceAccount will be used. 7064 - 7065 - Mutually exclusive with SecretRef. 7066 - properties: 7067 - name: 7068 - description: Name of the referent. 7069 - type: string 7070 - required: 7071 - - name 7072 - type: object 7073 - secretRef: 7074 - description: |- 7075 - SecretRef holds an optional name of a secret that contains a key with 7076 - the kubeconfig file as the value. If no key is set, the key will default 7077 - to 'value'. Mutually exclusive with ConfigMapRef. 7078 - It is recommended that the kubeconfig is self-contained, and the secret 7079 - is regularly updated if credentials such as a cloud-access-token expire. 7080 - Cloud specific `cmd-path` auth helpers will not function without adding 7081 - binaries and credentials to the Pod that is responsible for reconciling 7082 - Kubernetes resources. Supported only for the generic provider. 7083 - properties: 7084 - key: 7085 - description: Key in the Secret, when not specified an implementation-specific default key is used. 7086 - type: string 7087 - name: 7088 - description: Name of the Secret. 7089 - type: string 7090 - required: 7091 - - name 7092 - type: object 7093 - type: object 7094 - x-kubernetes-validations: 7095 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 7096 - rule: has(self.configMapRef) || has(self.secretRef) 7097 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 7098 - rule: '!has(self.configMapRef) || !has(self.secretRef)' 7099 - namePrefix: 7100 - description: NamePrefix will prefix the names of all managed resources. 7101 - maxLength: 200 7102 - minLength: 1 7103 - type: string 7104 - nameSuffix: 7105 - description: NameSuffix will suffix the names of all managed resources. 7106 - maxLength: 200 7107 - minLength: 1 7108 - type: string 7109 - patches: 7110 - description: |- 7111 - Strategic merge and JSON patches, defined as inline YAML objects, 7112 - capable of targeting objects based on kind, label and annotation selectors. 7113 - items: 7114 - description: |- 7115 - Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 7116 - be applied to. 7117 - properties: 7118 - patch: 7119 - description: |- 7120 - Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 7121 - an array of operation objects. 7122 - type: string 7123 - target: 7124 - description: Target points to the resources that the patch document should be applied to. 7125 - properties: 7126 - annotationSelector: 7127 - description: |- 7128 - AnnotationSelector is a string that follows the label selection expression 7129 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7130 - It matches with the resource annotations. 7131 - type: string 7132 - group: 7133 - description: |- 7134 - Group is the API group to select resources from. 7135 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 7136 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7137 - type: string 7138 - kind: 7139 - description: |- 7140 - Kind of the API Group to select resources from. 7141 - Together with Group and Version it is capable of unambiguously 7142 - identifying and/or selecting resources. 7143 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7144 - type: string 7145 - labelSelector: 7146 - description: |- 7147 - LabelSelector is a string that follows the label selection expression 7148 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7149 - It matches with the resource labels. 7150 - type: string 7151 - name: 7152 - description: Name to match resources with. 7153 - type: string 7154 - namespace: 7155 - description: Namespace to select resources from. 7156 - type: string 7157 - version: 7158 - description: |- 7159 - Version of the API Group to select resources from. 7160 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 7161 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7162 - type: string 7163 - type: object 7164 - required: 7165 - - patch 7166 - type: object 7167 - type: array 7168 - path: 7169 - description: |- 7170 - Path to the directory containing the kustomization.yaml file, or the 7171 - set of plain YAMLs a kustomization.yaml should be generated for. 7172 - Defaults to 'None', which translates to the root path of the SourceRef. 7173 - type: string 7174 - postBuild: 7175 - description: |- 7176 - PostBuild describes which actions to perform on the YAML manifest 7177 - generated by building the kustomize overlay. 7178 - properties: 7179 - substitute: 7180 - additionalProperties: 7181 - type: string 7182 - description: |- 7183 - Substitute holds a map of key/value pairs. 7184 - The variables defined in your YAML manifests that match any of the keys 7185 - defined in the map will be substituted with the set value. 7186 - Includes support for bash string replacement functions 7187 - e.g. ${var:=default}, ${var:position} and ${var/substring/replacement}. 7188 - type: object 7189 - substituteFrom: 7190 - description: |- 7191 - SubstituteFrom holds references to ConfigMaps and Secrets containing 7192 - the variables and their values to be substituted in the YAML manifests. 7193 - The ConfigMap and the Secret data keys represent the var names, and they 7194 - must match the vars declared in the manifests for the substitution to 7195 - happen. 7196 - items: 7197 - description: |- 7198 - SubstituteReference contains a reference to a resource containing 7199 - the variables name and value. 7200 - properties: 7201 - kind: 7202 - description: Kind of the values referent, valid values are ('Secret', 'ConfigMap'). 7203 - enum: 7204 - - Secret 7205 - - ConfigMap 7206 - type: string 7207 - name: 7208 - description: |- 7209 - Name of the values referent. Should reside in the same namespace as the 7210 - referring resource. 7211 - maxLength: 253 7212 - minLength: 1 7213 - type: string 7214 - optional: 7215 - default: false 7216 - description: |- 7217 - Optional indicates whether the referenced resource must exist, or whether to 7218 - tolerate its absence. If true and the referenced resource is absent, proceed 7219 - as if the resource was present but empty, without any variables defined. 7220 - type: boolean 7221 - required: 7222 - - kind 7223 - - name 7224 - type: object 7225 - type: array 7226 - type: object 7227 - prune: 7228 - description: Prune enables garbage collection. 7229 - type: boolean 7230 - retryInterval: 7231 - description: |- 7232 - The interval at which to retry a previously failed reconciliation. 7233 - When not specified, the controller uses the KustomizationSpec.Interval 7234 - value to retry failures. 7235 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7236 - type: string 7237 - serviceAccountName: 7238 - description: |- 7239 - The name of the Kubernetes service account to impersonate 7240 - when reconciling this Kustomization. 7241 - type: string 7242 - sourceRef: 7243 - description: Reference of the source where the kustomization file is. 7244 - properties: 7245 - apiVersion: 7246 - description: API version of the referent. 7247 - type: string 7248 - kind: 7249 - description: Kind of the referent. 7250 - enum: 7251 - - OCIRepository 7252 - - GitRepository 7253 - - Bucket 7254 - - ExternalArtifact 7255 - type: string 7256 - name: 7257 - description: Name of the referent. 7258 - type: string 7259 - namespace: 7260 - description: |- 7261 - Namespace of the referent, defaults to the namespace of the Kubernetes 7262 - resource object that contains the reference. 7263 - type: string 7264 - required: 7265 - - kind 7266 - - name 7267 - type: object 7268 - suspend: 7269 - description: |- 7270 - This flag tells the controller to suspend subsequent kustomize executions, 7271 - it does not apply to already started executions. Defaults to false. 7272 - type: boolean 7273 - targetNamespace: 7274 - description: |- 7275 - TargetNamespace sets or overrides the namespace in the 7276 - kustomization.yaml file. 7277 - maxLength: 63 7278 - minLength: 1 7279 - type: string 7280 - timeout: 7281 - description: |- 7282 - Timeout for validation, apply and health checking operations. 7283 - Defaults to 'Interval' duration. 7284 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7285 - type: string 7286 - wait: 7287 - description: |- 7288 - Wait instructs the controller to check the health of all the reconciled 7289 - resources. When enabled, the HealthChecks are ignored. Defaults to false. 7290 - type: boolean 7291 - required: 7292 - - interval 7293 - - prune 7294 - - sourceRef 7295 - type: object 7296 - status: 7297 - default: 7298 - observedGeneration: -1 7299 - description: KustomizationStatus defines the observed state of a kustomization. 7300 - properties: 7301 - conditions: 7302 - items: 7303 - description: Condition contains details for one aspect of the current state of this API Resource. 7304 - properties: 7305 - lastTransitionTime: 7306 - description: |- 7307 - lastTransitionTime is the last time the condition transitioned from one status to another. 7308 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 7309 - format: date-time 7310 - type: string 7311 - message: 7312 - description: |- 7313 - message is a human readable message indicating details about the transition. 7314 - This may be an empty string. 7315 - maxLength: 32768 7316 - type: string 7317 - observedGeneration: 7318 - description: |- 7319 - observedGeneration represents the .metadata.generation that the condition was set based upon. 7320 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 7321 - with respect to the current state of the instance. 7322 - format: int64 7323 - minimum: 0 7324 - type: integer 7325 - reason: 7326 - description: |- 7327 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 7328 - Producers of specific condition types may define expected values and meanings for this field, 7329 - and whether the values are considered a guaranteed API. 7330 - The value should be a CamelCase string. 7331 - This field may not be empty. 7332 - maxLength: 1024 7333 - minLength: 1 7334 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 7335 - type: string 7336 - status: 7337 - description: status of the condition, one of True, False, Unknown. 7338 - enum: 7339 - - "True" 7340 - - "False" 7341 - - Unknown 7342 - type: string 7343 - type: 7344 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 7345 - maxLength: 316 7346 - 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])$ 7347 - type: string 7348 - required: 7349 - - lastTransitionTime 7350 - - message 7351 - - reason 7352 - - status 7353 - - type 7354 - type: object 7355 - type: array 7356 - history: 7357 - description: |- 7358 - History contains a set of snapshots of the last reconciliation attempts 7359 - tracking the revision, the state and the duration of each attempt. 7360 - items: 7361 - description: |- 7362 - Snapshot represents a point-in-time record of a group of resources reconciliation, 7363 - including timing information, status, and a unique digest identifier. 7364 - properties: 7365 - digest: 7366 - description: Digest is the checksum in the format `<algo>:<hex>` of the resources in this snapshot. 7367 - type: string 7368 - firstReconciled: 7369 - description: FirstReconciled is the time when this revision was first reconciled to the cluster. 7370 - format: date-time 7371 - type: string 7372 - lastReconciled: 7373 - description: LastReconciled is the time when this revision was last reconciled to the cluster. 7374 - format: date-time 7375 - type: string 7376 - lastReconciledDuration: 7377 - description: LastReconciledDuration is time it took to reconcile the resources in this revision. 7378 - type: string 7379 - lastReconciledStatus: 7380 - description: LastReconciledStatus is the status of the last reconciliation. 7381 - type: string 7382 - metadata: 7383 - additionalProperties: 7384 - type: string 7385 - description: Metadata contains additional information about the snapshot. 7386 - type: object 7387 - totalReconciliations: 7388 - description: TotalReconciliations is the total number of reconciliations that have occurred for this snapshot. 7389 - format: int64 7390 - type: integer 7391 - required: 7392 - - digest 7393 - - firstReconciled 7394 - - lastReconciled 7395 - - lastReconciledDuration 7396 - - lastReconciledStatus 7397 - - totalReconciliations 7398 - type: object 7399 - type: array 7400 - inventory: 7401 - description: |- 7402 - Inventory contains the list of Kubernetes resource object references that 7403 - have been successfully applied. 7404 - properties: 7405 - entries: 7406 - description: Entries of Kubernetes resource object references. 7407 - items: 7408 - description: ResourceRef contains the information necessary to locate a resource within a cluster. 7409 - properties: 7410 - id: 7411 - description: |- 7412 - ID is the string representation of the Kubernetes resource object's metadata, 7413 - in the format '<namespace>_<name>_<group>_<kind>'. 7414 - type: string 7415 - v: 7416 - description: Version is the API version of the Kubernetes resource object's kind. 7417 - type: string 7418 - required: 7419 - - id 7420 - - v 7421 - type: object 7422 - type: array 7423 - required: 7424 - - entries 7425 - type: object 7426 - lastAppliedOriginRevision: 7427 - description: |- 7428 - The last successfully applied origin revision. 7429 - Equals the origin revision of the applied Artifact from the referenced Source. 7430 - Usually present on the Metadata of the applied Artifact and depends on the 7431 - Source type, e.g. for OCI it's the value associated with the key 7432 - "org.opencontainers.image.revision". 7433 - type: string 7434 - lastAppliedRevision: 7435 - description: |- 7436 - The last successfully applied revision. 7437 - Equals the Revision of the applied Artifact from the referenced Source. 7438 - type: string 7439 - lastAttemptedRevision: 7440 - description: LastAttemptedRevision is the revision of the last reconciliation attempt. 7441 - type: string 7442 - lastHandledReconcileAt: 7443 - description: |- 7444 - LastHandledReconcileAt holds the value of the most recent 7445 - reconcile request value, so a change of the annotation value 7446 - can be detected. 7447 - type: string 7448 - observedGeneration: 7449 - description: ObservedGeneration is the last reconciled generation. 7450 - format: int64 7451 - type: integer 7452 - type: object 7453 - type: object 7454 - served: true 7455 - storage: true 7456 - subresources: 7457 - status: {} 7458 - - additionalPrinterColumns: 7459 - - jsonPath: .metadata.creationTimestamp 7460 - name: Age 7461 - type: date 7462 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 7463 - name: Ready 7464 - type: string 7465 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 7466 - name: Status 7467 - type: string 7468 - deprecated: true 7469 - deprecationWarning: v1beta2 Kustomization is deprecated, upgrade to v1 7470 - name: v1beta2 7471 - schema: 7472 - openAPIV3Schema: 7473 - description: Kustomization is the Schema for the kustomizations API. 7474 - properties: 7475 - apiVersion: 7476 - description: |- 7477 - APIVersion defines the versioned schema of this representation of an object. 7478 - Servers should convert recognized schemas to the latest internal value, and 7479 - may reject unrecognized values. 7480 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 7481 - type: string 7482 - kind: 7483 - description: |- 7484 - Kind is a string value representing the REST resource this object represents. 7485 - Servers may infer this from the endpoint the client submits requests to. 7486 - Cannot be updated. 7487 - In CamelCase. 7488 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 7489 - type: string 7490 - metadata: 7491 - type: object 7492 - spec: 7493 - description: KustomizationSpec defines the configuration to calculate the desired state from a Source using Kustomize. 7494 - properties: 7495 - commonMetadata: 7496 - description: |- 7497 - CommonMetadata specifies the common labels and annotations that are applied to all resources. 7498 - Any existing label or annotation will be overridden if its key matches a common one. 7499 - properties: 7500 - annotations: 7501 - additionalProperties: 7502 - type: string 7503 - description: Annotations to be added to the object's metadata. 7504 - type: object 7505 - labels: 7506 - additionalProperties: 7507 - type: string 7508 - description: Labels to be added to the object's metadata. 7509 - type: object 7510 - type: object 7511 - components: 7512 - description: Components specifies relative paths to specifications of other Components. 7513 - items: 7514 - type: string 7515 - type: array 7516 - decryption: 7517 - description: Decrypt Kubernetes secrets before applying them on the cluster. 7518 - properties: 7519 - provider: 7520 - description: Provider is the name of the decryption engine. 7521 - enum: 7522 - - sops 7523 - type: string 7524 - secretRef: 7525 - description: The secret name containing the private OpenPGP keys used for decryption. 7526 - properties: 7527 - name: 7528 - description: Name of the referent. 7529 - type: string 7530 - required: 7531 - - name 7532 - type: object 7533 - required: 7534 - - provider 7535 - type: object 7536 - dependsOn: 7537 - description: |- 7538 - DependsOn may contain a meta.NamespacedObjectReference slice 7539 - with references to Kustomization resources that must be ready before this 7540 - Kustomization can be reconciled. 7541 - items: 7542 - description: |- 7543 - NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any 7544 - namespace. 7545 - properties: 7546 - name: 7547 - description: Name of the referent. 7548 - type: string 7549 - namespace: 7550 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 7551 - type: string 7552 - required: 7553 - - name 7554 - type: object 7555 - type: array 7556 - force: 7557 - default: false 7558 - description: |- 7559 - Force instructs the controller to recreate resources 7560 - when patching fails due to an immutable field change. 7561 - type: boolean 7562 - healthChecks: 7563 - description: A list of resources to be included in the health assessment. 7564 - items: 7565 - description: |- 7566 - NamespacedObjectKindReference contains enough information to locate the typed referenced Kubernetes resource object 7567 - in any namespace. 7568 - properties: 7569 - apiVersion: 7570 - description: API version of the referent, if not specified the Kubernetes preferred version will be used. 7571 - type: string 7572 - kind: 7573 - description: Kind of the referent. 7574 - type: string 7575 - name: 7576 - description: Name of the referent. 7577 - type: string 7578 - namespace: 7579 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 7580 - type: string 7581 - required: 7582 - - kind 7583 - - name 7584 - type: object 7585 - type: array 7586 - images: 7587 - description: |- 7588 - Images is a list of (image name, new name, new tag or digest) 7589 - for changing image names, tags or digests. This can also be achieved with a 7590 - patch, but this operator is simpler to specify. 7591 - items: 7592 - description: Image contains an image name, a new name, a new tag or digest, which will replace the original name and tag. 7593 - properties: 7594 - digest: 7595 - description: |- 7596 - Digest is the value used to replace the original image tag. 7597 - If digest is present NewTag value is ignored. 7598 - type: string 7599 - name: 7600 - description: Name is a tag-less image name. 7601 - type: string 7602 - newName: 7603 - description: NewName is the value used to replace the original name. 7604 - type: string 7605 - newTag: 7606 - description: NewTag is the value used to replace the original tag. 7607 - type: string 7608 - required: 7609 - - name 7610 - type: object 7611 - type: array 7612 - interval: 7613 - description: The interval at which to reconcile the Kustomization. 7614 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7615 - type: string 7616 - kubeConfig: 7617 - description: |- 7618 - The KubeConfig for reconciling the Kustomization on a remote cluster. 7619 - When used in combination with KustomizationSpec.ServiceAccountName, 7620 - forces the controller to act on behalf of that Service Account at the 7621 - target cluster. 7622 - If the --default-service-account flag is set, its value will be used as 7623 - a controller level fallback for when KustomizationSpec.ServiceAccountName 7624 - is empty. 7625 - properties: 7626 - configMapRef: 7627 - description: |- 7628 - ConfigMapRef holds an optional name of a ConfigMap that contains 7629 - the following keys: 7630 - 7631 - - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 7632 - `generic`. Required. 7633 - - `cluster`: the fully qualified resource name of the Kubernetes 7634 - cluster in the cloud provider API. Not used by the `generic` 7635 - provider. Required when one of `address` or `ca.crt` is not set. 7636 - - `address`: the address of the Kubernetes API server. Required 7637 - for `generic`. For the other providers, if not specified, the 7638 - first address in the cluster resource will be used, and if 7639 - specified, it must match one of the addresses in the cluster 7640 - resource. 7641 - If audiences is not set, will be used as the audience for the 7642 - `generic` provider. 7643 - - `ca.crt`: the optional PEM-encoded CA certificate for the 7644 - Kubernetes API server. If not set, the controller will use the 7645 - CA certificate from the cluster resource. 7646 - - `audiences`: the optional audiences as a list of 7647 - line-break-separated strings for the Kubernetes ServiceAccount 7648 - token. Defaults to the `address` for the `generic` provider, or 7649 - to specific values for the other providers depending on the 7650 - provider. 7651 - - `serviceAccountName`: the optional name of the Kubernetes 7652 - ServiceAccount in the same namespace that should be used 7653 - for authentication. If not specified, the controller 7654 - ServiceAccount will be used. 7655 - 7656 - Mutually exclusive with SecretRef. 7657 - properties: 7658 - name: 7659 - description: Name of the referent. 7660 - type: string 7661 - required: 7662 - - name 7663 - type: object 7664 - secretRef: 7665 - description: |- 7666 - SecretRef holds an optional name of a secret that contains a key with 7667 - the kubeconfig file as the value. If no key is set, the key will default 7668 - to 'value'. Mutually exclusive with ConfigMapRef. 7669 - It is recommended that the kubeconfig is self-contained, and the secret 7670 - is regularly updated if credentials such as a cloud-access-token expire. 7671 - Cloud specific `cmd-path` auth helpers will not function without adding 7672 - binaries and credentials to the Pod that is responsible for reconciling 7673 - Kubernetes resources. Supported only for the generic provider. 7674 - properties: 7675 - key: 7676 - description: Key in the Secret, when not specified an implementation-specific default key is used. 7677 - type: string 7678 - name: 7679 - description: Name of the Secret. 7680 - type: string 7681 - required: 7682 - - name 7683 - type: object 7684 - type: object 7685 - x-kubernetes-validations: 7686 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 7687 - rule: has(self.configMapRef) || has(self.secretRef) 7688 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 7689 - rule: '!has(self.configMapRef) || !has(self.secretRef)' 7690 - patches: 7691 - description: |- 7692 - Strategic merge and JSON patches, defined as inline YAML objects, 7693 - capable of targeting objects based on kind, label and annotation selectors. 7694 - items: 7695 - description: |- 7696 - Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 7697 - be applied to. 7698 - properties: 7699 - patch: 7700 - description: |- 7701 - Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 7702 - an array of operation objects. 7703 - type: string 7704 - target: 7705 - description: Target points to the resources that the patch document should be applied to. 7706 - properties: 7707 - annotationSelector: 7708 - description: |- 7709 - AnnotationSelector is a string that follows the label selection expression 7710 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7711 - It matches with the resource annotations. 7712 - type: string 7713 - group: 7714 - description: |- 7715 - Group is the API group to select resources from. 7716 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 7717 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7718 - type: string 7719 - kind: 7720 - description: |- 7721 - Kind of the API Group to select resources from. 7722 - Together with Group and Version it is capable of unambiguously 7723 - identifying and/or selecting resources. 7724 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7725 - type: string 7726 - labelSelector: 7727 - description: |- 7728 - LabelSelector is a string that follows the label selection expression 7729 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7730 - It matches with the resource labels. 7731 - type: string 7732 - name: 7733 - description: Name to match resources with. 7734 - type: string 7735 - namespace: 7736 - description: Namespace to select resources from. 7737 - type: string 7738 - version: 7739 - description: |- 7740 - Version of the API Group to select resources from. 7741 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 7742 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7743 - type: string 7744 - type: object 7745 - required: 7746 - - patch 7747 - type: object 7748 - type: array 7749 - patchesJson6902: 7750 - description: |- 7751 - JSON 6902 patches, defined as inline YAML objects. 7752 - Deprecated: Use Patches instead. 7753 - items: 7754 - description: JSON6902Patch contains a JSON6902 patch and the target the patch should be applied to. 7755 - properties: 7756 - patch: 7757 - description: Patch contains the JSON6902 patch document with an array of operation objects. 7758 - items: 7759 - description: |- 7760 - JSON6902 is a JSON6902 operation object. 7761 - https://datatracker.ietf.org/doc/html/rfc6902#section-4 7762 - properties: 7763 - from: 7764 - description: |- 7765 - From contains a JSON-pointer value that references a location within the target document where the operation is 7766 - performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. 7767 - type: string 7768 - op: 7769 - description: |- 7770 - Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or 7771 - "test". 7772 - https://datatracker.ietf.org/doc/html/rfc6902#section-4 7773 - enum: 7774 - - test 7775 - - remove 7776 - - add 7777 - - replace 7778 - - move 7779 - - copy 7780 - type: string 7781 - path: 7782 - description: |- 7783 - Path contains the JSON-pointer value that references a location within the target document where the operation 7784 - is performed. The meaning of the value depends on the value of Op. 7785 - type: string 7786 - value: 7787 - description: |- 7788 - Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into 7789 - account by all operations. 7790 - x-kubernetes-preserve-unknown-fields: true 7791 - required: 7792 - - op 7793 - - path 7794 - type: object 7795 - type: array 7796 - target: 7797 - description: Target points to the resources that the patch document should be applied to. 7798 - properties: 7799 - annotationSelector: 7800 - description: |- 7801 - AnnotationSelector is a string that follows the label selection expression 7802 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7803 - It matches with the resource annotations. 7804 - type: string 7805 - group: 7806 - description: |- 7807 - Group is the API group to select resources from. 7808 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 7809 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7810 - type: string 7811 - kind: 7812 - description: |- 7813 - Kind of the API Group to select resources from. 7814 - Together with Group and Version it is capable of unambiguously 7815 - identifying and/or selecting resources. 7816 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7817 - type: string 7818 - labelSelector: 7819 - description: |- 7820 - LabelSelector is a string that follows the label selection expression 7821 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 7822 - It matches with the resource labels. 7823 - type: string 7824 - name: 7825 - description: Name to match resources with. 7826 - type: string 7827 - namespace: 7828 - description: Namespace to select resources from. 7829 - type: string 7830 - version: 7831 - description: |- 7832 - Version of the API Group to select resources from. 7833 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 7834 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 7835 - type: string 7836 - type: object 7837 - required: 7838 - - patch 7839 - - target 7840 - type: object 7841 - type: array 7842 - patchesStrategicMerge: 7843 - description: |- 7844 - Strategic merge patches, defined as inline YAML objects. 7845 - Deprecated: Use Patches instead. 7846 - items: 7847 - x-kubernetes-preserve-unknown-fields: true 7848 - type: array 7849 - path: 7850 - description: |- 7851 - Path to the directory containing the kustomization.yaml file, or the 7852 - set of plain YAMLs a kustomization.yaml should be generated for. 7853 - Defaults to 'None', which translates to the root path of the SourceRef. 7854 - type: string 7855 - postBuild: 7856 - description: |- 7857 - PostBuild describes which actions to perform on the YAML manifest 7858 - generated by building the kustomize overlay. 7859 - properties: 7860 - substitute: 7861 - additionalProperties: 7862 - type: string 7863 - description: |- 7864 - Substitute holds a map of key/value pairs. 7865 - The variables defined in your YAML manifests 7866 - that match any of the keys defined in the map 7867 - will be substituted with the set value. 7868 - Includes support for bash string replacement functions 7869 - e.g. ${var:=default}, ${var:position} and ${var/substring/replacement}. 7870 - type: object 7871 - substituteFrom: 7872 - description: |- 7873 - SubstituteFrom holds references to ConfigMaps and Secrets containing 7874 - the variables and their values to be substituted in the YAML manifests. 7875 - The ConfigMap and the Secret data keys represent the var names and they 7876 - must match the vars declared in the manifests for the substitution to happen. 7877 - items: 7878 - description: |- 7879 - SubstituteReference contains a reference to a resource containing 7880 - the variables name and value. 7881 - properties: 7882 - kind: 7883 - description: Kind of the values referent, valid values are ('Secret', 'ConfigMap'). 7884 - enum: 7885 - - Secret 7886 - - ConfigMap 7887 - type: string 7888 - name: 7889 - description: |- 7890 - Name of the values referent. Should reside in the same namespace as the 7891 - referring resource. 7892 - maxLength: 253 7893 - minLength: 1 7894 - type: string 7895 - optional: 7896 - default: false 7897 - description: |- 7898 - Optional indicates whether the referenced resource must exist, or whether to 7899 - tolerate its absence. If true and the referenced resource is absent, proceed 7900 - as if the resource was present but empty, without any variables defined. 7901 - type: boolean 7902 - required: 7903 - - kind 7904 - - name 7905 - type: object 7906 - type: array 7907 - type: object 7908 - prune: 7909 - description: Prune enables garbage collection. 7910 - type: boolean 7911 - retryInterval: 7912 - description: |- 7913 - The interval at which to retry a previously failed reconciliation. 7914 - When not specified, the controller uses the KustomizationSpec.Interval 7915 - value to retry failures. 7916 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7917 - type: string 7918 - serviceAccountName: 7919 - description: |- 7920 - The name of the Kubernetes service account to impersonate 7921 - when reconciling this Kustomization. 7922 - type: string 7923 - sourceRef: 7924 - description: Reference of the source where the kustomization file is. 7925 - properties: 7926 - apiVersion: 7927 - description: API version of the referent. 7928 - type: string 7929 - kind: 7930 - description: Kind of the referent. 7931 - enum: 7932 - - OCIRepository 7933 - - GitRepository 7934 - - Bucket 7935 - type: string 7936 - name: 7937 - description: Name of the referent. 7938 - type: string 7939 - namespace: 7940 - description: Namespace of the referent, defaults to the namespace of the Kubernetes resource object that contains the reference. 7941 - type: string 7942 - required: 7943 - - kind 7944 - - name 7945 - type: object 7946 - suspend: 7947 - description: |- 7948 - This flag tells the controller to suspend subsequent kustomize executions, 7949 - it does not apply to already started executions. Defaults to false. 7950 - type: boolean 7951 - targetNamespace: 7952 - description: |- 7953 - TargetNamespace sets or overrides the namespace in the 7954 - kustomization.yaml file. 7955 - maxLength: 63 7956 - minLength: 1 7957 - type: string 7958 - timeout: 7959 - description: |- 7960 - Timeout for validation, apply and health checking operations. 7961 - Defaults to 'Interval' duration. 7962 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 7963 - type: string 7964 - validation: 7965 - description: 'Deprecated: Not used in v1beta2.' 7966 - enum: 7967 - - none 7968 - - client 7969 - - server 7970 - type: string 7971 - wait: 7972 - description: |- 7973 - Wait instructs the controller to check the health of all the reconciled resources. 7974 - When enabled, the HealthChecks are ignored. Defaults to false. 7975 - type: boolean 7976 - required: 7977 - - interval 7978 - - prune 7979 - - sourceRef 7980 - type: object 7981 - status: 7982 - default: 7983 - observedGeneration: -1 7984 - description: KustomizationStatus defines the observed state of a kustomization. 7985 - properties: 7986 - conditions: 7987 - items: 7988 - description: Condition contains details for one aspect of the current state of this API Resource. 7989 - properties: 7990 - lastTransitionTime: 7991 - description: |- 7992 - lastTransitionTime is the last time the condition transitioned from one status to another. 7993 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 7994 - format: date-time 7995 - type: string 7996 - message: 7997 - description: |- 7998 - message is a human readable message indicating details about the transition. 7999 - This may be an empty string. 8000 - maxLength: 32768 8001 - type: string 8002 - observedGeneration: 8003 - description: |- 8004 - observedGeneration represents the .metadata.generation that the condition was set based upon. 8005 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 8006 - with respect to the current state of the instance. 8007 - format: int64 8008 - minimum: 0 8009 - type: integer 8010 - reason: 8011 - description: |- 8012 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 8013 - Producers of specific condition types may define expected values and meanings for this field, 8014 - and whether the values are considered a guaranteed API. 8015 - The value should be a CamelCase string. 8016 - This field may not be empty. 8017 - maxLength: 1024 8018 - minLength: 1 8019 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 8020 - type: string 8021 - status: 8022 - description: status of the condition, one of True, False, Unknown. 8023 - enum: 8024 - - "True" 8025 - - "False" 8026 - - Unknown 8027 - type: string 8028 - type: 8029 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 8030 - maxLength: 316 8031 - 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])$ 8032 - type: string 8033 - required: 8034 - - lastTransitionTime 8035 - - message 8036 - - reason 8037 - - status 8038 - - type 8039 - type: object 8040 - type: array 8041 - inventory: 8042 - description: Inventory contains the list of Kubernetes resource object references that have been successfully applied. 8043 - properties: 8044 - entries: 8045 - description: Entries of Kubernetes resource object references. 8046 - items: 8047 - description: ResourceRef contains the information necessary to locate a resource within a cluster. 8048 - properties: 8049 - id: 8050 - description: |- 8051 - ID is the string representation of the Kubernetes resource object's metadata, 8052 - in the format '<namespace>_<name>_<group>_<kind>'. 8053 - type: string 8054 - v: 8055 - description: Version is the API version of the Kubernetes resource object's kind. 8056 - type: string 8057 - required: 8058 - - id 8059 - - v 8060 - type: object 8061 - type: array 8062 - required: 8063 - - entries 8064 - type: object 8065 - lastAppliedRevision: 8066 - description: |- 8067 - The last successfully applied revision. 8068 - Equals the Revision of the applied Artifact from the referenced Source. 8069 - type: string 8070 - lastAttemptedRevision: 8071 - description: LastAttemptedRevision is the revision of the last reconciliation attempt. 8072 - type: string 8073 - lastHandledReconcileAt: 8074 - description: |- 8075 - LastHandledReconcileAt holds the value of the most recent 8076 - reconcile request value, so a change of the annotation value 8077 - can be detected. 8078 - type: string 8079 - observedGeneration: 8080 - description: ObservedGeneration is the last reconciled generation. 8081 - format: int64 8082 - type: integer 8083 - type: object 8084 - type: object 8085 - served: true 8086 - storage: false 8087 - subresources: 8088 - status: {} 8089 ---- 8090 -apiVersion: v1 8091 -kind: ServiceAccount 8092 -metadata: 8093 - labels: 8094 - app.kubernetes.io/component: kustomize-controller 8095 - app.kubernetes.io/instance: flux-system 8096 - app.kubernetes.io/part-of: flux 8097 - app.kubernetes.io/version: v2.7.5 8098 - name: kustomize-controller 8099 - namespace: flux-system 8100 ---- 8101 -apiVersion: apps/v1 8102 -kind: Deployment 8103 -metadata: 8104 - labels: 8105 - app.kubernetes.io/component: kustomize-controller 8106 - app.kubernetes.io/instance: flux-system 8107 - app.kubernetes.io/part-of: flux 8108 - app.kubernetes.io/version: v2.7.5 8109 - control-plane: controller 8110 - name: kustomize-controller 8111 - namespace: flux-system 8112 -spec: 8113 - replicas: 1 8114 - selector: 8115 - matchLabels: 8116 - app: kustomize-controller 8117 - template: 8118 - metadata: 8119 - annotations: 8120 - prometheus.io/port: "8080" 8121 - prometheus.io/scrape: "true" 8122 - labels: 8123 - app: kustomize-controller 8124 - app.kubernetes.io/component: kustomize-controller 8125 - app.kubernetes.io/instance: flux-system 8126 - app.kubernetes.io/part-of: flux 8127 - app.kubernetes.io/version: v2.7.5 8128 - spec: 8129 - containers: 8130 - - args: 8131 - - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 8132 - - --watch-all-namespaces=true 8133 - - --log-level=info 8134 - - --log-encoding=json 8135 - - --enable-leader-election 8136 - env: 8137 - - name: RUNTIME_NAMESPACE 8138 - valueFrom: 8139 - fieldRef: 8140 - fieldPath: metadata.namespace 8141 - - name: GOMEMLIMIT 8142 - valueFrom: 8143 - resourceFieldRef: 8144 - containerName: manager 8145 - resource: limits.memory 8146 - image: ghcr.io/fluxcd/kustomize-controller:v1.7.3 8147 - imagePullPolicy: IfNotPresent 8148 - livenessProbe: 8149 - httpGet: 8150 - path: /healthz 8151 - port: healthz 8152 - name: manager 8153 - ports: 8154 - - containerPort: 8080 8155 - name: http-prom 8156 - protocol: TCP 8157 - - containerPort: 9440 8158 - name: healthz 8159 - protocol: TCP 8160 - readinessProbe: 8161 - httpGet: 8162 - path: /readyz 8163 - port: healthz 8164 - resources: 8165 - limits: 8166 - cpu: 1000m 8167 - memory: 1Gi 8168 - requests: 8169 - cpu: 100m 8170 - memory: 64Mi 8171 - securityContext: 8172 - allowPrivilegeEscalation: false 8173 - capabilities: 8174 - drop: 8175 - - ALL 8176 - readOnlyRootFilesystem: true 8177 - runAsNonRoot: true 8178 - seccompProfile: 8179 - type: RuntimeDefault 8180 - volumeMounts: 8181 - - mountPath: /tmp 8182 - name: temp 8183 - nodeSelector: 8184 - kubernetes.io/os: linux 8185 - priorityClassName: system-cluster-critical 8186 - securityContext: 8187 - fsGroup: 1337 8188 - serviceAccountName: kustomize-controller 8189 - terminationGracePeriodSeconds: 60 8190 - volumes: 8191 - - emptyDir: {} 8192 - name: temp 8193 ---- 8194 -apiVersion: apiextensions.k8s.io/v1 8195 -kind: CustomResourceDefinition 8196 -metadata: 8197 - annotations: 8198 - controller-gen.kubebuilder.io/version: v0.19.0 8199 - labels: 8200 - app.kubernetes.io/component: helm-controller 8201 - app.kubernetes.io/instance: flux-system 8202 - app.kubernetes.io/part-of: flux 8203 - app.kubernetes.io/version: v2.7.5 8204 - name: helmreleases.helm.toolkit.fluxcd.io 8205 -spec: 8206 - group: helm.toolkit.fluxcd.io 8207 - names: 8208 - kind: HelmRelease 8209 - listKind: HelmReleaseList 8210 - plural: helmreleases 8211 - shortNames: 8212 - - hr 8213 - singular: helmrelease 8214 - scope: Namespaced 8215 - versions: 8216 - - additionalPrinterColumns: 8217 - - jsonPath: .metadata.creationTimestamp 8218 - name: Age 8219 - type: date 8220 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 8221 - name: Ready 8222 - type: string 8223 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 8224 - name: Status 8225 - type: string 8226 - name: v2 8227 - schema: 8228 - openAPIV3Schema: 8229 - description: HelmRelease is the Schema for the helmreleases API 8230 - properties: 8231 - apiVersion: 8232 - description: |- 8233 - APIVersion defines the versioned schema of this representation of an object. 8234 - Servers should convert recognized schemas to the latest internal value, and 8235 - may reject unrecognized values. 8236 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 8237 - type: string 8238 - kind: 8239 - description: |- 8240 - Kind is a string value representing the REST resource this object represents. 8241 - Servers may infer this from the endpoint the client submits requests to. 8242 - Cannot be updated. 8243 - In CamelCase. 8244 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 8245 - type: string 8246 - metadata: 8247 - type: object 8248 - spec: 8249 - description: HelmReleaseSpec defines the desired state of a Helm release. 8250 - properties: 8251 - chart: 8252 - description: |- 8253 - Chart defines the template of the v1.HelmChart that should be created 8254 - for this HelmRelease. 8255 - properties: 8256 - metadata: 8257 - description: ObjectMeta holds the template for metadata like labels and annotations. 8258 - properties: 8259 - annotations: 8260 - additionalProperties: 8261 - type: string 8262 - description: |- 8263 - Annotations is an unstructured key value map stored with a resource that may be 8264 - set by external tools to store and retrieve arbitrary metadata. They are not 8265 - queryable and should be preserved when modifying objects. 8266 - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 8267 - type: object 8268 - labels: 8269 - additionalProperties: 8270 - type: string 8271 - description: |- 8272 - Map of string keys and values that can be used to organize and categorize 8273 - (scope and select) objects. 8274 - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 8275 - type: object 8276 - type: object 8277 - spec: 8278 - description: Spec holds the template for the v1.HelmChartSpec for this HelmRelease. 8279 - properties: 8280 - chart: 8281 - description: The name or path the Helm chart is available at in the SourceRef. 8282 - maxLength: 2048 8283 - minLength: 1 8284 - type: string 8285 - ignoreMissingValuesFiles: 8286 - description: IgnoreMissingValuesFiles controls whether to silently ignore missing values files rather than failing. 8287 - type: boolean 8288 - interval: 8289 - description: |- 8290 - Interval at which to check the v1.Source for updates. Defaults to 8291 - 'HelmReleaseSpec.Interval'. 8292 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8293 - type: string 8294 - reconcileStrategy: 8295 - default: ChartVersion 8296 - description: |- 8297 - Determines what enables the creation of a new artifact. Valid values are 8298 - ('ChartVersion', 'Revision'). 8299 - See the documentation of the values for an explanation on their behavior. 8300 - Defaults to ChartVersion when omitted. 8301 - enum: 8302 - - ChartVersion 8303 - - Revision 8304 - type: string 8305 - sourceRef: 8306 - description: The name and namespace of the v1.Source the chart is available at. 8307 - properties: 8308 - apiVersion: 8309 - description: APIVersion of the referent. 8310 - type: string 8311 - kind: 8312 - description: Kind of the referent. 8313 - enum: 8314 - - HelmRepository 8315 - - GitRepository 8316 - - Bucket 8317 - type: string 8318 - name: 8319 - description: Name of the referent. 8320 - maxLength: 253 8321 - minLength: 1 8322 - type: string 8323 - namespace: 8324 - description: Namespace of the referent. 8325 - maxLength: 63 8326 - minLength: 1 8327 - type: string 8328 - required: 8329 - - kind 8330 - - name 8331 - type: object 8332 - valuesFiles: 8333 - description: |- 8334 - Alternative list of values files to use as the chart values (values.yaml 8335 - is not included by default), expected to be a relative path in the SourceRef. 8336 - Values files are merged in the order of this list with the last file overriding 8337 - the first. Ignored when omitted. 8338 - items: 8339 - type: string 8340 - type: array 8341 - verify: 8342 - description: |- 8343 - Verify contains the secret name containing the trusted public keys 8344 - used to verify the signature and specifies which provider to use to check 8345 - whether OCI image is authentic. 8346 - This field is only supported for OCI sources. 8347 - Chart dependencies, which are not bundled in the umbrella chart artifact, 8348 - are not verified. 8349 - properties: 8350 - provider: 8351 - default: cosign 8352 - description: Provider specifies the technology used to sign the OCI Helm chart. 8353 - enum: 8354 - - cosign 8355 - - notation 8356 - type: string 8357 - secretRef: 8358 - description: |- 8359 - SecretRef specifies the Kubernetes Secret containing the 8360 - trusted public keys. 8361 - properties: 8362 - name: 8363 - description: Name of the referent. 8364 - type: string 8365 - required: 8366 - - name 8367 - type: object 8368 - required: 8369 - - provider 8370 - type: object 8371 - version: 8372 - default: '*' 8373 - description: |- 8374 - Version semver expression, ignored for charts from v1.GitRepository and 8375 - v1beta2.Bucket sources. Defaults to latest when omitted. 8376 - type: string 8377 - required: 8378 - - chart 8379 - - sourceRef 8380 - type: object 8381 - required: 8382 - - spec 8383 - type: object 8384 - chartRef: 8385 - description: |- 8386 - ChartRef holds a reference to a source controller resource containing the 8387 - Helm chart artifact. 8388 - properties: 8389 - apiVersion: 8390 - description: APIVersion of the referent. 8391 - type: string 8392 - kind: 8393 - description: Kind of the referent. 8394 - enum: 8395 - - OCIRepository 8396 - - HelmChart 8397 - - ExternalArtifact 8398 - type: string 8399 - name: 8400 - description: Name of the referent. 8401 - maxLength: 253 8402 - minLength: 1 8403 - type: string 8404 - namespace: 8405 - description: |- 8406 - Namespace of the referent, defaults to the namespace of the Kubernetes 8407 - resource object that contains the reference. 8408 - maxLength: 63 8409 - minLength: 1 8410 - type: string 8411 - required: 8412 - - kind 8413 - - name 8414 - type: object 8415 - commonMetadata: 8416 - description: |- 8417 - CommonMetadata specifies the common labels and annotations that are 8418 - applied to all resources. Any existing label or annotation will be 8419 - overridden if its key matches a common one. 8420 - properties: 8421 - annotations: 8422 - additionalProperties: 8423 - type: string 8424 - description: Annotations to be added to the object's metadata. 8425 - type: object 8426 - labels: 8427 - additionalProperties: 8428 - type: string 8429 - description: Labels to be added to the object's metadata. 8430 - type: object 8431 - type: object 8432 - dependsOn: 8433 - description: |- 8434 - DependsOn may contain a DependencyReference slice with 8435 - references to HelmRelease resources that must be ready before this HelmRelease 8436 - can be reconciled. 8437 - items: 8438 - description: DependencyReference defines a HelmRelease dependency on another HelmRelease resource. 8439 - properties: 8440 - name: 8441 - description: Name of the referent. 8442 - type: string 8443 - namespace: 8444 - description: |- 8445 - Namespace of the referent, defaults to the namespace of the HelmRelease 8446 - resource object that contains the reference. 8447 - type: string 8448 - readyExpr: 8449 - description: |- 8450 - ReadyExpr is a CEL expression that can be used to assess the readiness 8451 - of a dependency. When specified, the built-in readiness check 8452 - is replaced by the logic defined in the CEL expression. 8453 - To make the CEL expression additive to the built-in readiness check, 8454 - the feature gate `AdditiveCELDependencyCheck` must be set to `true`. 8455 - type: string 8456 - required: 8457 - - name 8458 - type: object 8459 - type: array 8460 - driftDetection: 8461 - description: |- 8462 - DriftDetection holds the configuration for detecting and handling 8463 - differences between the manifest in the Helm storage and the resources 8464 - currently existing in the cluster. 8465 - properties: 8466 - ignore: 8467 - description: |- 8468 - Ignore contains a list of rules for specifying which changes to ignore 8469 - during diffing. 8470 - items: 8471 - description: |- 8472 - IgnoreRule defines a rule to selectively disregard specific changes during 8473 - the drift detection process. 8474 - properties: 8475 - paths: 8476 - description: |- 8477 - Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from 8478 - consideration in a Kubernetes object. 8479 - items: 8480 - type: string 8481 - type: array 8482 - target: 8483 - description: |- 8484 - Target is a selector for specifying Kubernetes objects to which this 8485 - rule applies. 8486 - If Target is not set, the Paths will be ignored for all Kubernetes 8487 - objects within the manifest of the Helm release. 8488 - properties: 8489 - annotationSelector: 8490 - description: |- 8491 - AnnotationSelector is a string that follows the label selection expression 8492 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 8493 - It matches with the resource annotations. 8494 - type: string 8495 - group: 8496 - description: |- 8497 - Group is the API group to select resources from. 8498 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 8499 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8500 - type: string 8501 - kind: 8502 - description: |- 8503 - Kind of the API Group to select resources from. 8504 - Together with Group and Version it is capable of unambiguously 8505 - identifying and/or selecting resources. 8506 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8507 - type: string 8508 - labelSelector: 8509 - description: |- 8510 - LabelSelector is a string that follows the label selection expression 8511 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 8512 - It matches with the resource labels. 8513 - type: string 8514 - name: 8515 - description: Name to match resources with. 8516 - type: string 8517 - namespace: 8518 - description: Namespace to select resources from. 8519 - type: string 8520 - version: 8521 - description: |- 8522 - Version of the API Group to select resources from. 8523 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 8524 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8525 - type: string 8526 - type: object 8527 - required: 8528 - - paths 8529 - type: object 8530 - type: array 8531 - mode: 8532 - description: |- 8533 - Mode defines how differences should be handled between the Helm manifest 8534 - and the manifest currently applied to the cluster. 8535 - If not explicitly set, it defaults to DiffModeDisabled. 8536 - enum: 8537 - - enabled 8538 - - warn 8539 - - disabled 8540 - type: string 8541 - type: object 8542 - install: 8543 - description: Install holds the configuration for Helm install actions for this HelmRelease. 8544 - properties: 8545 - crds: 8546 - description: |- 8547 - CRDs upgrade CRDs from the Helm Chart's crds directory according 8548 - to the CRD upgrade policy provided here. Valid values are `Skip`, 8549 - `Create` or `CreateReplace`. Default is `Create` and if omitted 8550 - CRDs are installed but not updated. 8551 - 8552 - Skip: do neither install nor replace (update) any CRDs. 8553 - 8554 - Create: new CRDs are created, existing CRDs are neither updated nor deleted. 8555 - 8556 - CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 8557 - but not deleted. 8558 - 8559 - By default, CRDs are applied (installed) during Helm install action. 8560 - With this option users can opt in to CRD replace existing CRDs on Helm 8561 - install actions, which is not (yet) natively supported by Helm. 8562 - https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 8563 - enum: 8564 - - Skip 8565 - - Create 8566 - - CreateReplace 8567 - type: string 8568 - createNamespace: 8569 - description: |- 8570 - CreateNamespace tells the Helm install action to create the 8571 - HelmReleaseSpec.TargetNamespace if it does not exist yet. 8572 - On uninstall, the namespace will not be garbage collected. 8573 - type: boolean 8574 - disableHooks: 8575 - description: DisableHooks prevents hooks from running during the Helm install action. 8576 - type: boolean 8577 - disableOpenAPIValidation: 8578 - description: |- 8579 - DisableOpenAPIValidation prevents the Helm install action from validating 8580 - rendered templates against the Kubernetes OpenAPI Schema. 8581 - type: boolean 8582 - disableSchemaValidation: 8583 - description: |- 8584 - DisableSchemaValidation prevents the Helm install action from validating 8585 - the values against the JSON Schema. 8586 - type: boolean 8587 - disableTakeOwnership: 8588 - description: |- 8589 - DisableTakeOwnership disables taking ownership of existing resources 8590 - during the Helm install action. Defaults to false. 8591 - type: boolean 8592 - disableWait: 8593 - description: |- 8594 - DisableWait disables the waiting for resources to be ready after a Helm 8595 - install has been performed. 8596 - type: boolean 8597 - disableWaitForJobs: 8598 - description: |- 8599 - DisableWaitForJobs disables waiting for jobs to complete after a Helm 8600 - install has been performed. 8601 - type: boolean 8602 - remediation: 8603 - description: |- 8604 - Remediation holds the remediation configuration for when the Helm install 8605 - action for the HelmRelease fails. The default is to not perform any action. 8606 - properties: 8607 - ignoreTestFailures: 8608 - description: |- 8609 - IgnoreTestFailures tells the controller to skip remediation when the Helm 8610 - tests are run after an install action but fail. Defaults to 8611 - 'Test.IgnoreFailures'. 8612 - type: boolean 8613 - remediateLastFailure: 8614 - description: |- 8615 - RemediateLastFailure tells the controller to remediate the last failure, when 8616 - no retries remain. Defaults to 'false'. 8617 - type: boolean 8618 - retries: 8619 - description: |- 8620 - Retries is the number of retries that should be attempted on failures before 8621 - bailing. Remediation, using an uninstall, is performed between each attempt. 8622 - Defaults to '0', a negative integer equals to unlimited retries. 8623 - type: integer 8624 - type: object 8625 - replace: 8626 - description: |- 8627 - Replace tells the Helm install action to re-use the 'ReleaseName', but only 8628 - if that name is a deleted release which remains in the history. 8629 - type: boolean 8630 - skipCRDs: 8631 - description: |- 8632 - SkipCRDs tells the Helm install action to not install any CRDs. By default, 8633 - CRDs are installed if not already present. 8634 - 8635 - Deprecated use CRD policy (`crds`) attribute with value `Skip` instead. 8636 - type: boolean 8637 - strategy: 8638 - description: |- 8639 - Strategy defines the install strategy to use for this HelmRelease. 8640 - Defaults to 'RemediateOnFailure'. 8641 - properties: 8642 - name: 8643 - description: Name of the install strategy. 8644 - enum: 8645 - - RemediateOnFailure 8646 - - RetryOnFailure 8647 - type: string 8648 - retryInterval: 8649 - description: |- 8650 - RetryInterval is the interval at which to retry a failed install. 8651 - Can be used only when Name is set to RetryOnFailure. 8652 - Defaults to '5m'. 8653 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8654 - type: string 8655 - required: 8656 - - name 8657 - type: object 8658 - x-kubernetes-validations: 8659 - - message: .retryInterval cannot be set when .name is 'RemediateOnFailure' 8660 - rule: '!has(self.retryInterval) || self.name != ''RemediateOnFailure''' 8661 - timeout: 8662 - description: |- 8663 - Timeout is the time to wait for any individual Kubernetes operation (like 8664 - Jobs for hooks) during the performance of a Helm install action. Defaults to 8665 - 'HelmReleaseSpec.Timeout'. 8666 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8667 - type: string 8668 - type: object 8669 - interval: 8670 - description: Interval at which to reconcile the Helm release. 8671 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8672 - type: string 8673 - kubeConfig: 8674 - description: |- 8675 - KubeConfig for reconciling the HelmRelease on a remote cluster. 8676 - When used in combination with HelmReleaseSpec.ServiceAccountName, 8677 - forces the controller to act on behalf of that Service Account at the 8678 - target cluster. 8679 - If the --default-service-account flag is set, its value will be used as 8680 - a controller level fallback for when HelmReleaseSpec.ServiceAccountName 8681 - is empty. 8682 - properties: 8683 - configMapRef: 8684 - description: |- 8685 - ConfigMapRef holds an optional name of a ConfigMap that contains 8686 - the following keys: 8687 - 8688 - - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 8689 - `generic`. Required. 8690 - - `cluster`: the fully qualified resource name of the Kubernetes 8691 - cluster in the cloud provider API. Not used by the `generic` 8692 - provider. Required when one of `address` or `ca.crt` is not set. 8693 - - `address`: the address of the Kubernetes API server. Required 8694 - for `generic`. For the other providers, if not specified, the 8695 - first address in the cluster resource will be used, and if 8696 - specified, it must match one of the addresses in the cluster 8697 - resource. 8698 - If audiences is not set, will be used as the audience for the 8699 - `generic` provider. 8700 - - `ca.crt`: the optional PEM-encoded CA certificate for the 8701 - Kubernetes API server. If not set, the controller will use the 8702 - CA certificate from the cluster resource. 8703 - - `audiences`: the optional audiences as a list of 8704 - line-break-separated strings for the Kubernetes ServiceAccount 8705 - token. Defaults to the `address` for the `generic` provider, or 8706 - to specific values for the other providers depending on the 8707 - provider. 8708 - - `serviceAccountName`: the optional name of the Kubernetes 8709 - ServiceAccount in the same namespace that should be used 8710 - for authentication. If not specified, the controller 8711 - ServiceAccount will be used. 8712 - 8713 - Mutually exclusive with SecretRef. 8714 - properties: 8715 - name: 8716 - description: Name of the referent. 8717 - type: string 8718 - required: 8719 - - name 8720 - type: object 8721 - secretRef: 8722 - description: |- 8723 - SecretRef holds an optional name of a secret that contains a key with 8724 - the kubeconfig file as the value. If no key is set, the key will default 8725 - to 'value'. Mutually exclusive with ConfigMapRef. 8726 - It is recommended that the kubeconfig is self-contained, and the secret 8727 - is regularly updated if credentials such as a cloud-access-token expire. 8728 - Cloud specific `cmd-path` auth helpers will not function without adding 8729 - binaries and credentials to the Pod that is responsible for reconciling 8730 - Kubernetes resources. Supported only for the generic provider. 8731 - properties: 8732 - key: 8733 - description: Key in the Secret, when not specified an implementation-specific default key is used. 8734 - type: string 8735 - name: 8736 - description: Name of the Secret. 8737 - type: string 8738 - required: 8739 - - name 8740 - type: object 8741 - type: object 8742 - x-kubernetes-validations: 8743 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 8744 - rule: has(self.configMapRef) || has(self.secretRef) 8745 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 8746 - rule: '!has(self.configMapRef) || !has(self.secretRef)' 8747 - maxHistory: 8748 - description: |- 8749 - MaxHistory is the number of revisions saved by Helm for this HelmRelease. 8750 - Use '0' for an unlimited number of revisions; defaults to '5'. 8751 - type: integer 8752 - persistentClient: 8753 - description: |- 8754 - PersistentClient tells the controller to use a persistent Kubernetes 8755 - client for this release. When enabled, the client will be reused for the 8756 - duration of the reconciliation, instead of being created and destroyed 8757 - for each (step of a) Helm action. 8758 - 8759 - This can improve performance, but may cause issues with some Helm charts 8760 - that for example do create Custom Resource Definitions during installation 8761 - outside Helm's CRD lifecycle hooks, which are then not observed to be 8762 - available by e.g. post-install hooks. 8763 - 8764 - If not set, it defaults to true. 8765 - type: boolean 8766 - postRenderers: 8767 - description: |- 8768 - PostRenderers holds an array of Helm PostRenderers, which will be applied in order 8769 - of their definition. 8770 - items: 8771 - description: PostRenderer contains a Helm PostRenderer specification. 8772 - properties: 8773 - kustomize: 8774 - description: Kustomization to apply as PostRenderer. 8775 - properties: 8776 - images: 8777 - description: |- 8778 - Images is a list of (image name, new name, new tag or digest) 8779 - for changing image names, tags or digests. This can also be achieved with a 8780 - patch, but this operator is simpler to specify. 8781 - items: 8782 - description: Image contains an image name, a new name, a new tag or digest, which will replace the original name and tag. 8783 - properties: 8784 - digest: 8785 - description: |- 8786 - Digest is the value used to replace the original image tag. 8787 - If digest is present NewTag value is ignored. 8788 - type: string 8789 - name: 8790 - description: Name is a tag-less image name. 8791 - type: string 8792 - newName: 8793 - description: NewName is the value used to replace the original name. 8794 - type: string 8795 - newTag: 8796 - description: NewTag is the value used to replace the original tag. 8797 - type: string 8798 - required: 8799 - - name 8800 - type: object 8801 - type: array 8802 - patches: 8803 - description: |- 8804 - Strategic merge and JSON patches, defined as inline YAML objects, 8805 - capable of targeting objects based on kind, label and annotation selectors. 8806 - items: 8807 - description: |- 8808 - Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 8809 - be applied to. 8810 - properties: 8811 - patch: 8812 - description: |- 8813 - Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 8814 - an array of operation objects. 8815 - type: string 8816 - target: 8817 - description: Target points to the resources that the patch document should be applied to. 8818 - properties: 8819 - annotationSelector: 8820 - description: |- 8821 - AnnotationSelector is a string that follows the label selection expression 8822 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 8823 - It matches with the resource annotations. 8824 - type: string 8825 - group: 8826 - description: |- 8827 - Group is the API group to select resources from. 8828 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 8829 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8830 - type: string 8831 - kind: 8832 - description: |- 8833 - Kind of the API Group to select resources from. 8834 - Together with Group and Version it is capable of unambiguously 8835 - identifying and/or selecting resources. 8836 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8837 - type: string 8838 - labelSelector: 8839 - description: |- 8840 - LabelSelector is a string that follows the label selection expression 8841 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 8842 - It matches with the resource labels. 8843 - type: string 8844 - name: 8845 - description: Name to match resources with. 8846 - type: string 8847 - namespace: 8848 - description: Namespace to select resources from. 8849 - type: string 8850 - version: 8851 - description: |- 8852 - Version of the API Group to select resources from. 8853 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 8854 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 8855 - type: string 8856 - type: object 8857 - required: 8858 - - patch 8859 - type: object 8860 - type: array 8861 - type: object 8862 - type: object 8863 - type: array 8864 - releaseName: 8865 - description: |- 8866 - ReleaseName used for the Helm release. Defaults to a composition of 8867 - '[TargetNamespace-]Name'. 8868 - maxLength: 53 8869 - minLength: 1 8870 - type: string 8871 - rollback: 8872 - description: Rollback holds the configuration for Helm rollback actions for this HelmRelease. 8873 - properties: 8874 - cleanupOnFail: 8875 - description: |- 8876 - CleanupOnFail allows deletion of new resources created during the Helm 8877 - rollback action when it fails. 8878 - type: boolean 8879 - disableHooks: 8880 - description: DisableHooks prevents hooks from running during the Helm rollback action. 8881 - type: boolean 8882 - disableWait: 8883 - description: |- 8884 - DisableWait disables the waiting for resources to be ready after a Helm 8885 - rollback has been performed. 8886 - type: boolean 8887 - disableWaitForJobs: 8888 - description: |- 8889 - DisableWaitForJobs disables waiting for jobs to complete after a Helm 8890 - rollback has been performed. 8891 - type: boolean 8892 - force: 8893 - description: Force forces resource updates through a replacement strategy. 8894 - type: boolean 8895 - recreate: 8896 - description: Recreate performs pod restarts for the resource if applicable. 8897 - type: boolean 8898 - timeout: 8899 - description: |- 8900 - Timeout is the time to wait for any individual Kubernetes operation (like 8901 - Jobs for hooks) during the performance of a Helm rollback action. Defaults to 8902 - 'HelmReleaseSpec.Timeout'. 8903 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8904 - type: string 8905 - type: object 8906 - serviceAccountName: 8907 - description: |- 8908 - The name of the Kubernetes service account to impersonate 8909 - when reconciling this HelmRelease. 8910 - maxLength: 253 8911 - minLength: 1 8912 - type: string 8913 - storageNamespace: 8914 - description: |- 8915 - StorageNamespace used for the Helm storage. 8916 - Defaults to the namespace of the HelmRelease. 8917 - maxLength: 63 8918 - minLength: 1 8919 - type: string 8920 - suspend: 8921 - description: |- 8922 - Suspend tells the controller to suspend reconciliation for this HelmRelease, 8923 - it does not apply to already started reconciliations. Defaults to false. 8924 - type: boolean 8925 - targetNamespace: 8926 - description: |- 8927 - TargetNamespace to target when performing operations for the HelmRelease. 8928 - Defaults to the namespace of the HelmRelease. 8929 - maxLength: 63 8930 - minLength: 1 8931 - type: string 8932 - test: 8933 - description: Test holds the configuration for Helm test actions for this HelmRelease. 8934 - properties: 8935 - enable: 8936 - description: |- 8937 - Enable enables Helm test actions for this HelmRelease after an Helm install 8938 - or upgrade action has been performed. 8939 - type: boolean 8940 - filters: 8941 - description: Filters is a list of tests to run or exclude from running. 8942 - items: 8943 - description: Filter holds the configuration for individual Helm test filters. 8944 - properties: 8945 - exclude: 8946 - description: Exclude specifies whether the named test should be excluded. 8947 - type: boolean 8948 - name: 8949 - description: Name is the name of the test. 8950 - maxLength: 253 8951 - minLength: 1 8952 - type: string 8953 - required: 8954 - - name 8955 - type: object 8956 - type: array 8957 - ignoreFailures: 8958 - description: |- 8959 - IgnoreFailures tells the controller to skip remediation when the Helm tests 8960 - are run but fail. Can be overwritten for tests run after install or upgrade 8961 - actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. 8962 - type: boolean 8963 - timeout: 8964 - description: |- 8965 - Timeout is the time to wait for any individual Kubernetes operation during 8966 - the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. 8967 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8968 - type: string 8969 - type: object 8970 - timeout: 8971 - description: |- 8972 - Timeout is the time to wait for any individual Kubernetes operation (like Jobs 8973 - for hooks) during the performance of a Helm action. Defaults to '5m0s'. 8974 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 8975 - type: string 8976 - uninstall: 8977 - description: Uninstall holds the configuration for Helm uninstall actions for this HelmRelease. 8978 - properties: 8979 - deletionPropagation: 8980 - default: background 8981 - description: |- 8982 - DeletionPropagation specifies the deletion propagation policy when 8983 - a Helm uninstall is performed. 8984 - enum: 8985 - - background 8986 - - foreground 8987 - - orphan 8988 - type: string 8989 - disableHooks: 8990 - description: DisableHooks prevents hooks from running during the Helm rollback action. 8991 - type: boolean 8992 - disableWait: 8993 - description: |- 8994 - DisableWait disables waiting for all the resources to be deleted after 8995 - a Helm uninstall is performed. 8996 - type: boolean 8997 - keepHistory: 8998 - description: |- 8999 - KeepHistory tells Helm to remove all associated resources and mark the 9000 - release as deleted, but retain the release history. 9001 - type: boolean 9002 - timeout: 9003 - description: |- 9004 - Timeout is the time to wait for any individual Kubernetes operation (like 9005 - Jobs for hooks) during the performance of a Helm uninstall action. Defaults 9006 - to 'HelmReleaseSpec.Timeout'. 9007 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9008 - type: string 9009 - type: object 9010 - upgrade: 9011 - description: Upgrade holds the configuration for Helm upgrade actions for this HelmRelease. 9012 - properties: 9013 - cleanupOnFail: 9014 - description: |- 9015 - CleanupOnFail allows deletion of new resources created during the Helm 9016 - upgrade action when it fails. 9017 - type: boolean 9018 - crds: 9019 - description: |- 9020 - CRDs upgrade CRDs from the Helm Chart's crds directory according 9021 - to the CRD upgrade policy provided here. Valid values are `Skip`, 9022 - `Create` or `CreateReplace`. Default is `Skip` and if omitted 9023 - CRDs are neither installed nor upgraded. 9024 - 9025 - Skip: do neither install nor replace (update) any CRDs. 9026 - 9027 - Create: new CRDs are created, existing CRDs are neither updated nor deleted. 9028 - 9029 - CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 9030 - but not deleted. 9031 - 9032 - By default, CRDs are not applied during Helm upgrade action. With this 9033 - option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. 9034 - https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 9035 - enum: 9036 - - Skip 9037 - - Create 9038 - - CreateReplace 9039 - type: string 9040 - disableHooks: 9041 - description: DisableHooks prevents hooks from running during the Helm upgrade action. 9042 - type: boolean 9043 - disableOpenAPIValidation: 9044 - description: |- 9045 - DisableOpenAPIValidation prevents the Helm upgrade action from validating 9046 - rendered templates against the Kubernetes OpenAPI Schema. 9047 - type: boolean 9048 - disableSchemaValidation: 9049 - description: |- 9050 - DisableSchemaValidation prevents the Helm upgrade action from validating 9051 - the values against the JSON Schema. 9052 - type: boolean 9053 - disableTakeOwnership: 9054 - description: |- 9055 - DisableTakeOwnership disables taking ownership of existing resources 9056 - during the Helm upgrade action. Defaults to false. 9057 - type: boolean 9058 - disableWait: 9059 - description: |- 9060 - DisableWait disables the waiting for resources to be ready after a Helm 9061 - upgrade has been performed. 9062 - type: boolean 9063 - disableWaitForJobs: 9064 - description: |- 9065 - DisableWaitForJobs disables waiting for jobs to complete after a Helm 9066 - upgrade has been performed. 9067 - type: boolean 9068 - force: 9069 - description: Force forces resource updates through a replacement strategy. 9070 - type: boolean 9071 - preserveValues: 9072 - description: |- 9073 - PreserveValues will make Helm reuse the last release's values and merge in 9074 - overrides from 'Values'. Setting this flag makes the HelmRelease 9075 - non-declarative. 9076 - type: boolean 9077 - remediation: 9078 - description: |- 9079 - Remediation holds the remediation configuration for when the Helm upgrade 9080 - action for the HelmRelease fails. The default is to not perform any action. 9081 - properties: 9082 - ignoreTestFailures: 9083 - description: |- 9084 - IgnoreTestFailures tells the controller to skip remediation when the Helm 9085 - tests are run after an upgrade action but fail. 9086 - Defaults to 'Test.IgnoreFailures'. 9087 - type: boolean 9088 - remediateLastFailure: 9089 - description: |- 9090 - RemediateLastFailure tells the controller to remediate the last failure, when 9091 - no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. 9092 - type: boolean 9093 - retries: 9094 - description: |- 9095 - Retries is the number of retries that should be attempted on failures before 9096 - bailing. Remediation, using 'Strategy', is performed between each attempt. 9097 - Defaults to '0', a negative integer equals to unlimited retries. 9098 - type: integer 9099 - strategy: 9100 - description: Strategy to use for failure remediation. Defaults to 'rollback'. 9101 - enum: 9102 - - rollback 9103 - - uninstall 9104 - type: string 9105 - type: object 9106 - strategy: 9107 - description: |- 9108 - Strategy defines the upgrade strategy to use for this HelmRelease. 9109 - Defaults to 'RemediateOnFailure'. 9110 - properties: 9111 - name: 9112 - description: Name of the upgrade strategy. 9113 - enum: 9114 - - RemediateOnFailure 9115 - - RetryOnFailure 9116 - type: string 9117 - retryInterval: 9118 - description: |- 9119 - RetryInterval is the interval at which to retry a failed upgrade. 9120 - Can be used only when Name is set to RetryOnFailure. 9121 - Defaults to '5m'. 9122 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9123 - type: string 9124 - required: 9125 - - name 9126 - type: object 9127 - x-kubernetes-validations: 9128 - - message: .retryInterval can only be set when .name is 'RetryOnFailure' 9129 - rule: '!has(self.retryInterval) || self.name == ''RetryOnFailure''' 9130 - timeout: 9131 - description: |- 9132 - Timeout is the time to wait for any individual Kubernetes operation (like 9133 - Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 9134 - 'HelmReleaseSpec.Timeout'. 9135 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9136 - type: string 9137 - type: object 9138 - values: 9139 - description: Values holds the values for this Helm release. 9140 - x-kubernetes-preserve-unknown-fields: true 9141 - valuesFrom: 9142 - description: |- 9143 - ValuesFrom holds references to resources containing Helm values for this HelmRelease, 9144 - and information about how they should be merged. 9145 - items: 9146 - description: |- 9147 - ValuesReference contains a reference to a resource containing Helm values, 9148 - and optionally the key they can be found at. 9149 - properties: 9150 - kind: 9151 - description: Kind of the values referent, valid values are ('Secret', 'ConfigMap'). 9152 - enum: 9153 - - Secret 9154 - - ConfigMap 9155 - type: string 9156 - name: 9157 - description: |- 9158 - Name of the values referent. Should reside in the same namespace as the 9159 - referring resource. 9160 - maxLength: 253 9161 - minLength: 1 9162 - type: string 9163 - optional: 9164 - description: |- 9165 - Optional marks this ValuesReference as optional. When set, a not found error 9166 - for the values reference is ignored, but any ValuesKey, TargetPath or 9167 - transient error will still result in a reconciliation failure. 9168 - type: boolean 9169 - targetPath: 9170 - description: |- 9171 - TargetPath is the YAML dot notation path the value should be merged at. When 9172 - set, the ValuesKey is expected to be a single flat value. Defaults to 'None', 9173 - which results in the values getting merged at the root. 9174 - maxLength: 250 9175 - pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$ 9176 - type: string 9177 - valuesKey: 9178 - description: |- 9179 - ValuesKey is the data key where the values.yaml or a specific value can be 9180 - found at. Defaults to 'values.yaml'. 9181 - maxLength: 253 9182 - pattern: ^[\-._a-zA-Z0-9]+$ 9183 - type: string 9184 - required: 9185 - - kind 9186 - - name 9187 - type: object 9188 - type: array 9189 - required: 9190 - - interval 9191 - type: object 9192 - x-kubernetes-validations: 9193 - - message: either chart or chartRef must be set 9194 - rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart) && has(self.chartRef)) 9195 - status: 9196 - default: 9197 - observedGeneration: -1 9198 - description: HelmReleaseStatus defines the observed state of a HelmRelease. 9199 - properties: 9200 - conditions: 9201 - description: Conditions holds the conditions for the HelmRelease. 9202 - items: 9203 - description: Condition contains details for one aspect of the current state of this API Resource. 9204 - properties: 9205 - lastTransitionTime: 9206 - description: |- 9207 - lastTransitionTime is the last time the condition transitioned from one status to another. 9208 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 9209 - format: date-time 9210 - type: string 9211 - message: 9212 - description: |- 9213 - message is a human readable message indicating details about the transition. 9214 - This may be an empty string. 9215 - maxLength: 32768 9216 - type: string 9217 - observedGeneration: 9218 - description: |- 9219 - observedGeneration represents the .metadata.generation that the condition was set based upon. 9220 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 9221 - with respect to the current state of the instance. 9222 - format: int64 9223 - minimum: 0 9224 - type: integer 9225 - reason: 9226 - description: |- 9227 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 9228 - Producers of specific condition types may define expected values and meanings for this field, 9229 - and whether the values are considered a guaranteed API. 9230 - The value should be a CamelCase string. 9231 - This field may not be empty. 9232 - maxLength: 1024 9233 - minLength: 1 9234 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 9235 - type: string 9236 - status: 9237 - description: status of the condition, one of True, False, Unknown. 9238 - enum: 9239 - - "True" 9240 - - "False" 9241 - - Unknown 9242 - type: string 9243 - type: 9244 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 9245 - maxLength: 316 9246 - 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])$ 9247 - type: string 9248 - required: 9249 - - lastTransitionTime 9250 - - message 9251 - - reason 9252 - - status 9253 - - type 9254 - type: object 9255 - type: array 9256 - failures: 9257 - description: |- 9258 - Failures is the reconciliation failure count against the latest desired 9259 - state. It is reset after a successful reconciliation. 9260 - format: int64 9261 - type: integer 9262 - helmChart: 9263 - description: |- 9264 - HelmChart is the namespaced name of the HelmChart resource created by 9265 - the controller for the HelmRelease. 9266 - type: string 9267 - history: 9268 - description: |- 9269 - History holds the history of Helm releases performed for this HelmRelease 9270 - up to the last successfully completed release. 9271 - items: 9272 - description: |- 9273 - Snapshot captures a point-in-time copy of the status information for a Helm release, 9274 - as managed by the controller. 9275 - properties: 9276 - apiVersion: 9277 - description: |- 9278 - APIVersion is the API version of the Snapshot. 9279 - Provisional: when the calculation method of the Digest field is changed, 9280 - this field will be used to distinguish between the old and new methods. 9281 - type: string 9282 - appVersion: 9283 - description: AppVersion is the chart app version of the release object in storage. 9284 - type: string 9285 - chartName: 9286 - description: ChartName is the chart name of the release object in storage. 9287 - type: string 9288 - chartVersion: 9289 - description: |- 9290 - ChartVersion is the chart version of the release object in 9291 - storage. 9292 - type: string 9293 - configDigest: 9294 - description: |- 9295 - ConfigDigest is the checksum of the config (better known as 9296 - "values") of the release object in storage. 9297 - It has the format of `<algo>:<checksum>`. 9298 - type: string 9299 - deleted: 9300 - description: Deleted is when the release was deleted. 9301 - format: date-time 9302 - type: string 9303 - digest: 9304 - description: |- 9305 - Digest is the checksum of the release object in storage. 9306 - It has the format of `<algo>:<checksum>`. 9307 - type: string 9308 - firstDeployed: 9309 - description: FirstDeployed is when the release was first deployed. 9310 - format: date-time 9311 - type: string 9312 - lastDeployed: 9313 - description: LastDeployed is when the release was last deployed. 9314 - format: date-time 9315 - type: string 9316 - name: 9317 - description: Name is the name of the release. 9318 - type: string 9319 - namespace: 9320 - description: Namespace is the namespace the release is deployed to. 9321 - type: string 9322 - ociDigest: 9323 - description: OCIDigest is the digest of the OCI artifact associated with the release. 9324 - type: string 9325 - status: 9326 - description: Status is the current state of the release. 9327 - type: string 9328 - testHooks: 9329 - additionalProperties: 9330 - description: |- 9331 - TestHookStatus holds the status information for a test hook as observed 9332 - to be run by the controller. 9333 - properties: 9334 - lastCompleted: 9335 - description: LastCompleted is the time the test hook last completed. 9336 - format: date-time 9337 - type: string 9338 - lastStarted: 9339 - description: LastStarted is the time the test hook was last started. 9340 - format: date-time 9341 - type: string 9342 - phase: 9343 - description: Phase the test hook was observed to be in. 9344 - type: string 9345 - type: object 9346 - description: |- 9347 - TestHooks is the list of test hooks for the release as observed to be 9348 - run by the controller. 9349 - type: object 9350 - version: 9351 - description: Version is the version of the release object in storage. 9352 - type: integer 9353 - required: 9354 - - chartName 9355 - - chartVersion 9356 - - configDigest 9357 - - digest 9358 - - firstDeployed 9359 - - lastDeployed 9360 - - name 9361 - - namespace 9362 - - status 9363 - - version 9364 - type: object 9365 - type: array 9366 - installFailures: 9367 - description: |- 9368 - InstallFailures is the install failure count against the latest desired 9369 - state. It is reset after a successful reconciliation. 9370 - format: int64 9371 - type: integer 9372 - lastAttemptedConfigDigest: 9373 - description: |- 9374 - LastAttemptedConfigDigest is the digest for the config (better known as 9375 - "values") of the last reconciliation attempt. 9376 - type: string 9377 - lastAttemptedGeneration: 9378 - description: |- 9379 - LastAttemptedGeneration is the last generation the controller attempted 9380 - to reconcile. 9381 - format: int64 9382 - type: integer 9383 - lastAttemptedReleaseAction: 9384 - description: |- 9385 - LastAttemptedReleaseAction is the last release action performed for this 9386 - HelmRelease. It is used to determine the active retry or remediation 9387 - strategy. 9388 - enum: 9389 - - install 9390 - - upgrade 9391 - type: string 9392 - lastAttemptedReleaseActionDuration: 9393 - description: |- 9394 - LastAttemptedReleaseActionDuration is the duration of the last 9395 - release action performed for this HelmRelease. 9396 - type: string 9397 - lastAttemptedRevision: 9398 - description: |- 9399 - LastAttemptedRevision is the Source revision of the last reconciliation 9400 - attempt. For OCIRepository sources, the 12 first characters of the digest are 9401 - appended to the chart version e.g. "1.2.3+1234567890ab". 9402 - type: string 9403 - lastAttemptedRevisionDigest: 9404 - description: |- 9405 - LastAttemptedRevisionDigest is the digest of the last reconciliation attempt. 9406 - This is only set for OCIRepository sources. 9407 - type: string 9408 - lastAttemptedValuesChecksum: 9409 - description: |- 9410 - LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last 9411 - reconciliation attempt. 9412 - 9413 - Deprecated: Use LastAttemptedConfigDigest instead. 9414 - type: string 9415 - lastHandledForceAt: 9416 - description: |- 9417 - LastHandledForceAt holds the value of the most recent 9418 - force request value, so a change of the annotation value 9419 - can be detected. 9420 - type: string 9421 - lastHandledReconcileAt: 9422 - description: |- 9423 - LastHandledReconcileAt holds the value of the most recent 9424 - reconcile request value, so a change of the annotation value 9425 - can be detected. 9426 - type: string 9427 - lastHandledResetAt: 9428 - description: |- 9429 - LastHandledResetAt holds the value of the most recent reset request 9430 - value, so a change of the annotation value can be detected. 9431 - type: string 9432 - lastReleaseRevision: 9433 - description: |- 9434 - LastReleaseRevision is the revision of the last successful Helm release. 9435 - 9436 - Deprecated: Use History instead. 9437 - type: integer 9438 - observedCommonMetadataDigest: 9439 - description: |- 9440 - ObservedCommonMetadataDigest is the digest for the common metadata of 9441 - the last successful reconciliation attempt. 9442 - type: string 9443 - observedGeneration: 9444 - description: ObservedGeneration is the last observed generation. 9445 - format: int64 9446 - type: integer 9447 - observedPostRenderersDigest: 9448 - description: |- 9449 - ObservedPostRenderersDigest is the digest for the post-renderers of 9450 - the last successful reconciliation attempt. 9451 - type: string 9452 - storageNamespace: 9453 - description: |- 9454 - StorageNamespace is the namespace of the Helm release storage for the 9455 - current release. 9456 - maxLength: 63 9457 - minLength: 1 9458 - type: string 9459 - upgradeFailures: 9460 - description: |- 9461 - UpgradeFailures is the upgrade failure count against the latest desired 9462 - state. It is reset after a successful reconciliation. 9463 - format: int64 9464 - type: integer 9465 - type: object 9466 - type: object 9467 - served: true 9468 - storage: true 9469 - subresources: 9470 - status: {} 9471 - - additionalPrinterColumns: 9472 - - jsonPath: .metadata.creationTimestamp 9473 - name: Age 9474 - type: date 9475 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 9476 - name: Ready 9477 - type: string 9478 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 9479 - name: Status 9480 - type: string 9481 - deprecated: true 9482 - deprecationWarning: v2beta2 HelmRelease is deprecated, upgrade to v2 9483 - name: v2beta2 9484 - schema: 9485 - openAPIV3Schema: 9486 - description: HelmRelease is the Schema for the helmreleases API 9487 - properties: 9488 - apiVersion: 9489 - description: |- 9490 - APIVersion defines the versioned schema of this representation of an object. 9491 - Servers should convert recognized schemas to the latest internal value, and 9492 - may reject unrecognized values. 9493 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9494 - type: string 9495 - kind: 9496 - description: |- 9497 - Kind is a string value representing the REST resource this object represents. 9498 - Servers may infer this from the endpoint the client submits requests to. 9499 - Cannot be updated. 9500 - In CamelCase. 9501 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9502 - type: string 9503 - metadata: 9504 - type: object 9505 - spec: 9506 - description: HelmReleaseSpec defines the desired state of a Helm release. 9507 - properties: 9508 - chart: 9509 - description: |- 9510 - Chart defines the template of the v1beta2.HelmChart that should be created 9511 - for this HelmRelease. 9512 - properties: 9513 - metadata: 9514 - description: ObjectMeta holds the template for metadata like labels and annotations. 9515 - properties: 9516 - annotations: 9517 - additionalProperties: 9518 - type: string 9519 - description: |- 9520 - Annotations is an unstructured key value map stored with a resource that may be 9521 - set by external tools to store and retrieve arbitrary metadata. They are not 9522 - queryable and should be preserved when modifying objects. 9523 - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 9524 - type: object 9525 - labels: 9526 - additionalProperties: 9527 - type: string 9528 - description: |- 9529 - Map of string keys and values that can be used to organize and categorize 9530 - (scope and select) objects. 9531 - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 9532 - type: object 9533 - type: object 9534 - spec: 9535 - description: Spec holds the template for the v1beta2.HelmChartSpec for this HelmRelease. 9536 - properties: 9537 - chart: 9538 - description: The name or path the Helm chart is available at in the SourceRef. 9539 - maxLength: 2048 9540 - minLength: 1 9541 - type: string 9542 - ignoreMissingValuesFiles: 9543 - description: IgnoreMissingValuesFiles controls whether to silently ignore missing values files rather than failing. 9544 - type: boolean 9545 - interval: 9546 - description: |- 9547 - Interval at which to check the v1.Source for updates. Defaults to 9548 - 'HelmReleaseSpec.Interval'. 9549 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9550 - type: string 9551 - reconcileStrategy: 9552 - default: ChartVersion 9553 - description: |- 9554 - Determines what enables the creation of a new artifact. Valid values are 9555 - ('ChartVersion', 'Revision'). 9556 - See the documentation of the values for an explanation on their behavior. 9557 - Defaults to ChartVersion when omitted. 9558 - enum: 9559 - - ChartVersion 9560 - - Revision 9561 - type: string 9562 - sourceRef: 9563 - description: The name and namespace of the v1.Source the chart is available at. 9564 - properties: 9565 - apiVersion: 9566 - description: APIVersion of the referent. 9567 - type: string 9568 - kind: 9569 - description: Kind of the referent. 9570 - enum: 9571 - - HelmRepository 9572 - - GitRepository 9573 - - Bucket 9574 - type: string 9575 - name: 9576 - description: Name of the referent. 9577 - maxLength: 253 9578 - minLength: 1 9579 - type: string 9580 - namespace: 9581 - description: Namespace of the referent. 9582 - maxLength: 63 9583 - minLength: 1 9584 - type: string 9585 - required: 9586 - - kind 9587 - - name 9588 - type: object 9589 - valuesFile: 9590 - description: |- 9591 - Alternative values file to use as the default chart values, expected to 9592 - be a relative path in the SourceRef. Deprecated in favor of ValuesFiles, 9593 - for backwards compatibility the file defined here is merged before the 9594 - ValuesFiles items. Ignored when omitted. 9595 - type: string 9596 - valuesFiles: 9597 - description: |- 9598 - Alternative list of values files to use as the chart values (values.yaml 9599 - is not included by default), expected to be a relative path in the SourceRef. 9600 - Values files are merged in the order of this list with the last file overriding 9601 - the first. Ignored when omitted. 9602 - items: 9603 - type: string 9604 - type: array 9605 - verify: 9606 - description: |- 9607 - Verify contains the secret name containing the trusted public keys 9608 - used to verify the signature and specifies which provider to use to check 9609 - whether OCI image is authentic. 9610 - This field is only supported for OCI sources. 9611 - Chart dependencies, which are not bundled in the umbrella chart artifact, 9612 - are not verified. 9613 - properties: 9614 - provider: 9615 - default: cosign 9616 - description: Provider specifies the technology used to sign the OCI Helm chart. 9617 - enum: 9618 - - cosign 9619 - - notation 9620 - type: string 9621 - secretRef: 9622 - description: |- 9623 - SecretRef specifies the Kubernetes Secret containing the 9624 - trusted public keys. 9625 - properties: 9626 - name: 9627 - description: Name of the referent. 9628 - type: string 9629 - required: 9630 - - name 9631 - type: object 9632 - required: 9633 - - provider 9634 - type: object 9635 - version: 9636 - default: '*' 9637 - description: |- 9638 - Version semver expression, ignored for charts from v1beta2.GitRepository and 9639 - v1beta2.Bucket sources. Defaults to latest when omitted. 9640 - type: string 9641 - required: 9642 - - chart 9643 - - sourceRef 9644 - type: object 9645 - required: 9646 - - spec 9647 - type: object 9648 - chartRef: 9649 - description: |- 9650 - ChartRef holds a reference to a source controller resource containing the 9651 - Helm chart artifact. 9652 - 9653 - Note: this field is provisional to the v2 API, and not actively used 9654 - by v2beta2 HelmReleases. 9655 - properties: 9656 - apiVersion: 9657 - description: APIVersion of the referent. 9658 - type: string 9659 - kind: 9660 - description: Kind of the referent. 9661 - enum: 9662 - - OCIRepository 9663 - - HelmChart 9664 - type: string 9665 - name: 9666 - description: Name of the referent. 9667 - maxLength: 253 9668 - minLength: 1 9669 - type: string 9670 - namespace: 9671 - description: |- 9672 - Namespace of the referent, defaults to the namespace of the Kubernetes 9673 - resource object that contains the reference. 9674 - maxLength: 63 9675 - minLength: 1 9676 + - ks 9677 + singular: kustomization 9678 + scope: Namespaced 9679 + versions: 9680 + - additionalPrinterColumns: 9681 + - jsonPath: .metadata.creationTimestamp 9682 + name: Age 9683 + type: date 9684 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 9685 + name: Ready 9686 + type: string 9687 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 9688 + name: Status 9689 + type: string 9690 + name: v1 9691 + schema: 9692 + openAPIV3Schema: 9693 + description: Kustomization is the Schema for the kustomizations API. 9694 + properties: 9695 + apiVersion: 9696 + description: |- 9697 + APIVersion defines the versioned schema of this representation of an object. 9698 + Servers should convert recognized schemas to the latest internal value, and 9699 + may reject unrecognized values. 9700 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 9701 + type: string 9702 + kind: 9703 + description: |- 9704 + Kind is a string value representing the REST resource this object represents. 9705 + Servers may infer this from the endpoint the client submits requests to. 9706 + Cannot be updated. 9707 + In CamelCase. 9708 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 9709 + type: string 9710 + metadata: 9711 + type: object 9712 + spec: 9713 + description: |- 9714 + KustomizationSpec defines the configuration to calculate the desired state 9715 + from a Source using Kustomize. 9716 + properties: 9717 + commonMetadata: 9718 + description: |- 9719 + CommonMetadata specifies the common labels and annotations that are 9720 + applied to all resources. Any existing label or annotation will be 9721 + overridden if its key matches a common one. 9722 + properties: 9723 + annotations: 9724 + additionalProperties: 9725 + type: string 9726 + description: Annotations to be added to the object's metadata. 9727 + type: object 9728 + labels: 9729 + additionalProperties: 9730 type: string 9731 - required: 9732 - - kind 9733 - - name 9734 - type: object 9735 - dependsOn: 9736 - description: |- 9737 - DependsOn may contain a meta.NamespacedObjectReference slice with 9738 - references to HelmRelease resources that must be ready before this HelmRelease 9739 - can be reconciled. 9740 - items: 9741 + description: Labels to be added to the object's metadata. 9742 + type: object 9743 + type: object 9744 + components: 9745 + description: Components specifies relative paths to kustomize Components. 9746 + items: 9747 + type: string 9748 + type: array 9749 + decryption: 9750 + description: Decrypt Kubernetes secrets before applying them on the 9751 + cluster. 9752 + properties: 9753 + provider: 9754 + description: Provider is the name of the decryption engine. 9755 + enum: 9756 + - sops 9757 + type: string 9758 + secretRef: 9759 description: |- 9760 - NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any 9761 - namespace. 9762 + The secret name containing the private OpenPGP keys used for decryption. 9763 + A static credential for a cloud provider defined inside the Secret 9764 + takes priority to secret-less authentication with the ServiceAccountName 9765 + field. 9766 properties: 9767 name: 9768 description: Name of the referent. 9769 type: string 9770 - namespace: 9771 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 9772 - type: string 9773 required: 9774 - - name 9775 + - name 9776 type: object 9777 - type: array 9778 - driftDetection: 9779 - description: |- 9780 - DriftDetection holds the configuration for detecting and handling 9781 - differences between the manifest in the Helm storage and the resources 9782 - currently existing in the cluster. 9783 + serviceAccountName: 9784 + description: |- 9785 + ServiceAccountName is the name of the service account used to 9786 + authenticate with KMS services from cloud providers. If a 9787 + static credential for a given cloud provider is defined 9788 + inside the Secret referenced by SecretRef, that static 9789 + credential takes priority. 9790 + type: string 9791 + required: 9792 + - provider 9793 + type: object 9794 + deletionPolicy: 9795 + description: |- 9796 + DeletionPolicy can be used to control garbage collection when this 9797 + Kustomization is deleted. Valid values are ('MirrorPrune', 'Delete', 9798 + 'WaitForTermination', 'Orphan'). 'MirrorPrune' mirrors the Prune field 9799 + (orphan if false, delete if true). Defaults to 'MirrorPrune'. 9800 + enum: 9801 + - MirrorPrune 9802 + - Delete 9803 + - WaitForTermination 9804 + - Orphan 9805 + type: string 9806 + dependsOn: 9807 + description: |- 9808 + DependsOn may contain a DependencyReference slice 9809 + with references to Kustomization resources that must be ready before this 9810 + Kustomization can be reconciled. 9811 + items: 9812 + description: DependencyReference defines a Kustomization dependency 9813 + on another Kustomization resource. 9814 properties: 9815 - ignore: 9816 - description: |- 9817 - Ignore contains a list of rules for specifying which changes to ignore 9818 - during diffing. 9819 - items: 9820 - description: |- 9821 - IgnoreRule defines a rule to selectively disregard specific changes during 9822 - the drift detection process. 9823 - properties: 9824 - paths: 9825 - description: |- 9826 - Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from 9827 - consideration in a Kubernetes object. 9828 - items: 9829 - type: string 9830 - type: array 9831 - target: 9832 - description: |- 9833 - Target is a selector for specifying Kubernetes objects to which this 9834 - rule applies. 9835 - If Target is not set, the Paths will be ignored for all Kubernetes 9836 - objects within the manifest of the Helm release. 9837 - properties: 9838 - annotationSelector: 9839 - description: |- 9840 - AnnotationSelector is a string that follows the label selection expression 9841 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 9842 - It matches with the resource annotations. 9843 - type: string 9844 - group: 9845 - description: |- 9846 - Group is the API group to select resources from. 9847 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 9848 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 9849 - type: string 9850 - kind: 9851 - description: |- 9852 - Kind of the API Group to select resources from. 9853 - Together with Group and Version it is capable of unambiguously 9854 - identifying and/or selecting resources. 9855 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 9856 - type: string 9857 - labelSelector: 9858 - description: |- 9859 - LabelSelector is a string that follows the label selection expression 9860 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 9861 - It matches with the resource labels. 9862 - type: string 9863 - name: 9864 - description: Name to match resources with. 9865 - type: string 9866 - namespace: 9867 - description: Namespace to select resources from. 9868 - type: string 9869 - version: 9870 - description: |- 9871 - Version of the API Group to select resources from. 9872 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 9873 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 9874 - type: string 9875 - type: object 9876 - required: 9877 - - paths 9878 - type: object 9879 - type: array 9880 - mode: 9881 - description: |- 9882 - Mode defines how differences should be handled between the Helm manifest 9883 - and the manifest currently applied to the cluster. 9884 - If not explicitly set, it defaults to DiffModeDisabled. 9885 - enum: 9886 - - enabled 9887 - - warn 9888 - - disabled 9889 + name: 9890 + description: Name of the referent. 9891 type: string 9892 - type: object 9893 - install: 9894 - description: Install holds the configuration for Helm install actions for this HelmRelease. 9895 - properties: 9896 - crds: 9897 + namespace: 9898 description: |- 9899 - CRDs upgrade CRDs from the Helm Chart's crds directory according 9900 - to the CRD upgrade policy provided here. Valid values are `Skip`, 9901 - `Create` or `CreateReplace`. Default is `Create` and if omitted 9902 - CRDs are installed but not updated. 9903 - 9904 - Skip: do neither install nor replace (update) any CRDs. 9905 - 9906 - Create: new CRDs are created, existing CRDs are neither updated nor deleted. 9907 - 9908 - CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 9909 - but not deleted. 9910 - 9911 - By default, CRDs are applied (installed) during Helm install action. 9912 - With this option users can opt in to CRD replace existing CRDs on Helm 9913 - install actions, which is not (yet) natively supported by Helm. 9914 - https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 9915 - enum: 9916 - - Skip 9917 - - Create 9918 - - CreateReplace 9919 + Namespace of the referent, defaults to the namespace of the Kustomization 9920 + resource object that contains the reference. 9921 type: string 9922 - createNamespace: 9923 - description: |- 9924 - CreateNamespace tells the Helm install action to create the 9925 - HelmReleaseSpec.TargetNamespace if it does not exist yet. 9926 - On uninstall, the namespace will not be garbage collected. 9927 - type: boolean 9928 - disableHooks: 9929 - description: DisableHooks prevents hooks from running during the Helm install action. 9930 - type: boolean 9931 - disableOpenAPIValidation: 9932 - description: |- 9933 - DisableOpenAPIValidation prevents the Helm install action from validating 9934 - rendered templates against the Kubernetes OpenAPI Schema. 9935 - type: boolean 9936 - disableWait: 9937 - description: |- 9938 - DisableWait disables the waiting for resources to be ready after a Helm 9939 - install has been performed. 9940 - type: boolean 9941 - disableWaitForJobs: 9942 - description: |- 9943 - DisableWaitForJobs disables waiting for jobs to complete after a Helm 9944 - install has been performed. 9945 - type: boolean 9946 - remediation: 9947 - description: |- 9948 - Remediation holds the remediation configuration for when the Helm install 9949 - action for the HelmRelease fails. The default is to not perform any action. 9950 - properties: 9951 - ignoreTestFailures: 9952 - description: |- 9953 - IgnoreTestFailures tells the controller to skip remediation when the Helm 9954 - tests are run after an install action but fail. Defaults to 9955 - 'Test.IgnoreFailures'. 9956 - type: boolean 9957 - remediateLastFailure: 9958 - description: |- 9959 - RemediateLastFailure tells the controller to remediate the last failure, when 9960 - no retries remain. Defaults to 'false'. 9961 - type: boolean 9962 - retries: 9963 - description: |- 9964 - Retries is the number of retries that should be attempted on failures before 9965 - bailing. Remediation, using an uninstall, is performed between each attempt. 9966 - Defaults to '0', a negative integer equals to unlimited retries. 9967 - type: integer 9968 - type: object 9969 - replace: 9970 - description: |- 9971 - Replace tells the Helm install action to re-use the 'ReleaseName', but only 9972 - if that name is a deleted release which remains in the history. 9973 - type: boolean 9974 - skipCRDs: 9975 - description: |- 9976 - SkipCRDs tells the Helm install action to not install any CRDs. By default, 9977 - CRDs are installed if not already present. 9978 - 9979 - Deprecated use CRD policy (`crds`) attribute with value `Skip` instead. 9980 - type: boolean 9981 - timeout: 9982 + readyExpr: 9983 description: |- 9984 - Timeout is the time to wait for any individual Kubernetes operation (like 9985 - Jobs for hooks) during the performance of a Helm install action. Defaults to 9986 - 'HelmReleaseSpec.Timeout'. 9987 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 9988 + ReadyExpr is a CEL expression that can be used to assess the readiness 9989 + of a dependency. When specified, the built-in readiness check 9990 + is replaced by the logic defined in the CEL expression. 9991 + To make the CEL expression additive to the built-in readiness check, 9992 + the feature gate `AdditiveCELDependencyCheck` must be set to `true`. 9993 type: string 9994 + required: 9995 + - name 9996 type: object 9997 - interval: 9998 - description: Interval at which to reconcile the Helm release. 9999 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10000 - type: string 10001 - kubeConfig: 10002 - description: |- 10003 - KubeConfig for reconciling the HelmRelease on a remote cluster. 10004 - When used in combination with HelmReleaseSpec.ServiceAccountName, 10005 - forces the controller to act on behalf of that Service Account at the 10006 - target cluster. 10007 - If the --default-service-account flag is set, its value will be used as 10008 - a controller level fallback for when HelmReleaseSpec.ServiceAccountName 10009 - is empty. 10010 - properties: 10011 - configMapRef: 10012 - description: |- 10013 - ConfigMapRef holds an optional name of a ConfigMap that contains 10014 - the following keys: 10015 - 10016 - - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 10017 - `generic`. Required. 10018 - - `cluster`: the fully qualified resource name of the Kubernetes 10019 - cluster in the cloud provider API. Not used by the `generic` 10020 - provider. Required when one of `address` or `ca.crt` is not set. 10021 - - `address`: the address of the Kubernetes API server. Required 10022 - for `generic`. For the other providers, if not specified, the 10023 - first address in the cluster resource will be used, and if 10024 - specified, it must match one of the addresses in the cluster 10025 - resource. 10026 - If audiences is not set, will be used as the audience for the 10027 - `generic` provider. 10028 - - `ca.crt`: the optional PEM-encoded CA certificate for the 10029 - Kubernetes API server. If not set, the controller will use the 10030 - CA certificate from the cluster resource. 10031 - - `audiences`: the optional audiences as a list of 10032 - line-break-separated strings for the Kubernetes ServiceAccount 10033 - token. Defaults to the `address` for the `generic` provider, or 10034 - to specific values for the other providers depending on the 10035 - provider. 10036 - - `serviceAccountName`: the optional name of the Kubernetes 10037 - ServiceAccount in the same namespace that should be used 10038 - for authentication. If not specified, the controller 10039 - ServiceAccount will be used. 10040 - 10041 - Mutually exclusive with SecretRef. 10042 - properties: 10043 - name: 10044 - description: Name of the referent. 10045 - type: string 10046 - required: 10047 - - name 10048 - type: object 10049 - secretRef: 10050 - description: |- 10051 - SecretRef holds an optional name of a secret that contains a key with 10052 - the kubeconfig file as the value. If no key is set, the key will default 10053 - to 'value'. Mutually exclusive with ConfigMapRef. 10054 - It is recommended that the kubeconfig is self-contained, and the secret 10055 - is regularly updated if credentials such as a cloud-access-token expire. 10056 - Cloud specific `cmd-path` auth helpers will not function without adding 10057 - binaries and credentials to the Pod that is responsible for reconciling 10058 - Kubernetes resources. Supported only for the generic provider. 10059 - properties: 10060 - key: 10061 - description: Key in the Secret, when not specified an implementation-specific default key is used. 10062 - type: string 10063 - name: 10064 - description: Name of the Secret. 10065 - type: string 10066 - required: 10067 - - name 10068 - type: object 10069 - type: object 10070 - x-kubernetes-validations: 10071 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 10072 - rule: has(self.configMapRef) || has(self.secretRef) 10073 - - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef must be specified 10074 - rule: '!has(self.configMapRef) || !has(self.secretRef)' 10075 - maxHistory: 10076 - description: |- 10077 - MaxHistory is the number of revisions saved by Helm for this HelmRelease. 10078 - Use '0' for an unlimited number of revisions; defaults to '5'. 10079 - type: integer 10080 - persistentClient: 10081 - description: |- 10082 - PersistentClient tells the controller to use a persistent Kubernetes 10083 - client for this release. When enabled, the client will be reused for the 10084 - duration of the reconciliation, instead of being created and destroyed 10085 - for each (step of a) Helm action. 10086 - 10087 - This can improve performance, but may cause issues with some Helm charts 10088 - that for example do create Custom Resource Definitions during installation 10089 - outside Helm's CRD lifecycle hooks, which are then not observed to be 10090 - available by e.g. post-install hooks. 10091 - 10092 - If not set, it defaults to true. 10093 - type: boolean 10094 - postRenderers: 10095 - description: |- 10096 - PostRenderers holds an array of Helm PostRenderers, which will be applied in order 10097 - of their definition. 10098 - items: 10099 - description: PostRenderer contains a Helm PostRenderer specification. 10100 - properties: 10101 - kustomize: 10102 - description: Kustomization to apply as PostRenderer. 10103 - properties: 10104 - images: 10105 - description: |- 10106 - Images is a list of (image name, new name, new tag or digest) 10107 - for changing image names, tags or digests. This can also be achieved with a 10108 - patch, but this operator is simpler to specify. 10109 - items: 10110 - description: Image contains an image name, a new name, a new tag or digest, which will replace the original name and tag. 10111 - properties: 10112 - digest: 10113 - description: |- 10114 - Digest is the value used to replace the original image tag. 10115 - If digest is present NewTag value is ignored. 10116 - type: string 10117 - name: 10118 - description: Name is a tag-less image name. 10119 - type: string 10120 - newName: 10121 - description: NewName is the value used to replace the original name. 10122 - type: string 10123 - newTag: 10124 - description: NewTag is the value used to replace the original tag. 10125 - type: string 10126 - required: 10127 - - name 10128 - type: object 10129 - type: array 10130 - patches: 10131 - description: |- 10132 - Strategic merge and JSON patches, defined as inline YAML objects, 10133 - capable of targeting objects based on kind, label and annotation selectors. 10134 - items: 10135 - description: |- 10136 - Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 10137 - be applied to. 10138 - properties: 10139 - patch: 10140 - description: |- 10141 - Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 10142 - an array of operation objects. 10143 - type: string 10144 - target: 10145 - description: Target points to the resources that the patch document should be applied to. 10146 - properties: 10147 - annotationSelector: 10148 - description: |- 10149 - AnnotationSelector is a string that follows the label selection expression 10150 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 10151 - It matches with the resource annotations. 10152 - type: string 10153 - group: 10154 - description: |- 10155 - Group is the API group to select resources from. 10156 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 10157 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 10158 - type: string 10159 - kind: 10160 - description: |- 10161 - Kind of the API Group to select resources from. 10162 - Together with Group and Version it is capable of unambiguously 10163 - identifying and/or selecting resources. 10164 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 10165 - type: string 10166 - labelSelector: 10167 - description: |- 10168 - LabelSelector is a string that follows the label selection expression 10169 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 10170 - It matches with the resource labels. 10171 - type: string 10172 - name: 10173 - description: Name to match resources with. 10174 - type: string 10175 - namespace: 10176 - description: Namespace to select resources from. 10177 - type: string 10178 - version: 10179 - description: |- 10180 - Version of the API Group to select resources from. 10181 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 10182 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 10183 - type: string 10184 - type: object 10185 - required: 10186 - - patch 10187 - type: object 10188 - type: array 10189 - patchesJson6902: 10190 - description: |- 10191 - JSON 6902 patches, defined as inline YAML objects. 10192 - 10193 - Deprecated: use Patches instead. 10194 - items: 10195 - description: JSON6902Patch contains a JSON6902 patch and the target the patch should be applied to. 10196 - properties: 10197 - patch: 10198 - description: Patch contains the JSON6902 patch document with an array of operation objects. 10199 - items: 10200 - description: |- 10201 - JSON6902 is a JSON6902 operation object. 10202 - https://datatracker.ietf.org/doc/html/rfc6902#section-4 10203 - properties: 10204 - from: 10205 - description: |- 10206 - From contains a JSON-pointer value that references a location within the target document where the operation is 10207 - performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. 10208 - type: string 10209 - op: 10210 - description: |- 10211 - Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or 10212 - "test". 10213 - https://datatracker.ietf.org/doc/html/rfc6902#section-4 10214 - enum: 10215 - - test 10216 - - remove 10217 - - add 10218 - - replace 10219 - - move 10220 - - copy 10221 - type: string 10222 - path: 10223 - description: |- 10224 - Path contains the JSON-pointer value that references a location within the target document where the operation 10225 - is performed. The meaning of the value depends on the value of Op. 10226 - type: string 10227 - value: 10228 - description: |- 10229 - Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into 10230 - account by all operations. 10231 - x-kubernetes-preserve-unknown-fields: true 10232 - required: 10233 - - op 10234 - - path 10235 - type: object 10236 - type: array 10237 - target: 10238 - description: Target points to the resources that the patch document should be applied to. 10239 - properties: 10240 - annotationSelector: 10241 - description: |- 10242 - AnnotationSelector is a string that follows the label selection expression 10243 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 10244 - It matches with the resource annotations. 10245 - type: string 10246 - group: 10247 - description: |- 10248 - Group is the API group to select resources from. 10249 - Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 10250 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 10251 - type: string 10252 - kind: 10253 - description: |- 10254 - Kind of the API Group to select resources from. 10255 - Together with Group and Version it is capable of unambiguously 10256 - identifying and/or selecting resources. 10257 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 10258 - type: string 10259 - labelSelector: 10260 - description: |- 10261 - LabelSelector is a string that follows the label selection expression 10262 - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 10263 - It matches with the resource labels. 10264 - type: string 10265 - name: 10266 - description: Name to match resources with. 10267 - type: string 10268 - namespace: 10269 - description: Namespace to select resources from. 10270 - type: string 10271 - version: 10272 - description: |- 10273 - Version of the API Group to select resources from. 10274 - Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 10275 - https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 10276 - type: string 10277 - type: object 10278 - required: 10279 - - patch 10280 - - target 10281 - type: object 10282 - type: array 10283 - patchesStrategicMerge: 10284 - description: |- 10285 - Strategic merge patches, defined as inline YAML objects. 10286 - 10287 - Deprecated: use Patches instead. 10288 - items: 10289 - x-kubernetes-preserve-unknown-fields: true 10290 - type: array 10291 - type: object 10292 - type: object 10293 - type: array 10294 - releaseName: 10295 - description: |- 10296 - ReleaseName used for the Helm release. Defaults to a composition of 10297 - '[TargetNamespace-]Name'. 10298 - maxLength: 53 10299 - minLength: 1 10300 - type: string 10301 - rollback: 10302 - description: Rollback holds the configuration for Helm rollback actions for this HelmRelease. 10303 + type: array 10304 + force: 10305 + default: false 10306 + description: |- 10307 + Force instructs the controller to recreate resources 10308 + when patching fails due to an immutable field change. 10309 + type: boolean 10310 + healthCheckExprs: 10311 + description: |- 10312 + HealthCheckExprs is a list of healthcheck expressions for evaluating the 10313 + health of custom resources using Common Expression Language (CEL). 10314 + The expressions are evaluated only when Wait or HealthChecks are specified. 10315 + items: 10316 + description: CustomHealthCheck defines the health check for custom 10317 + resources. 10318 properties: 10319 - cleanupOnFail: 10320 - description: |- 10321 - CleanupOnFail allows deletion of new resources created during the Helm 10322 - rollback action when it fails. 10323 - type: boolean 10324 - disableHooks: 10325 - description: DisableHooks prevents hooks from running during the Helm rollback action. 10326 - type: boolean 10327 - disableWait: 10328 - description: |- 10329 - DisableWait disables the waiting for resources to be ready after a Helm 10330 - rollback has been performed. 10331 - type: boolean 10332 - disableWaitForJobs: 10333 - description: |- 10334 - DisableWaitForJobs disables waiting for jobs to complete after a Helm 10335 - rollback has been performed. 10336 - type: boolean 10337 - force: 10338 - description: Force forces resource updates through a replacement strategy. 10339 - type: boolean 10340 - recreate: 10341 - description: Recreate performs pod restarts for the resource if applicable. 10342 - type: boolean 10343 - timeout: 10344 - description: |- 10345 - Timeout is the time to wait for any individual Kubernetes operation (like 10346 - Jobs for hooks) during the performance of a Helm rollback action. Defaults to 10347 - 'HelmReleaseSpec.Timeout'. 10348 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10349 + apiVersion: 10350 + description: APIVersion of the custom resource under evaluation. 10351 type: string 10352 - type: object 10353 - serviceAccountName: 10354 - description: |- 10355 - The name of the Kubernetes service account to impersonate 10356 - when reconciling this HelmRelease. 10357 - maxLength: 253 10358 - minLength: 1 10359 - type: string 10360 - storageNamespace: 10361 - description: |- 10362 - StorageNamespace used for the Helm storage. 10363 - Defaults to the namespace of the HelmRelease. 10364 - maxLength: 63 10365 - minLength: 1 10366 - type: string 10367 - suspend: 10368 - description: |- 10369 - Suspend tells the controller to suspend reconciliation for this HelmRelease, 10370 - it does not apply to already started reconciliations. Defaults to false. 10371 - type: boolean 10372 - targetNamespace: 10373 - description: |- 10374 - TargetNamespace to target when performing operations for the HelmRelease. 10375 - Defaults to the namespace of the HelmRelease. 10376 - maxLength: 63 10377 - minLength: 1 10378 - type: string 10379 - test: 10380 - description: Test holds the configuration for Helm test actions for this HelmRelease. 10381 - properties: 10382 - enable: 10383 + current: 10384 description: |- 10385 - Enable enables Helm test actions for this HelmRelease after an Helm install 10386 - or upgrade action has been performed. 10387 - type: boolean 10388 - filters: 10389 - description: Filters is a list of tests to run or exclude from running. 10390 - items: 10391 - description: Filter holds the configuration for individual Helm test filters. 10392 - properties: 10393 - exclude: 10394 - description: Exclude specifies whether the named test should be excluded. 10395 - type: boolean 10396 - name: 10397 - description: Name is the name of the test. 10398 - maxLength: 253 10399 - minLength: 1 10400 - type: string 10401 - required: 10402 - - name 10403 - type: object 10404 - type: array 10405 - ignoreFailures: 10406 + Current is the CEL expression that determines if the status 10407 + of the custom resource has reached the desired state. 10408 + type: string 10409 + failed: 10410 description: |- 10411 - IgnoreFailures tells the controller to skip remediation when the Helm tests 10412 - are run but fail. Can be overwritten for tests run after install or upgrade 10413 - actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. 10414 - type: boolean 10415 - timeout: 10416 + Failed is the CEL expression that determines if the status 10417 + of the custom resource has failed to reach the desired state. 10418 + type: string 10419 + inProgress: 10420 description: |- 10421 - Timeout is the time to wait for any individual Kubernetes operation during 10422 - the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. 10423 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10424 + InProgress is the CEL expression that determines if the status 10425 + of the custom resource has not yet reached the desired state. 10426 + type: string 10427 + kind: 10428 + description: Kind of the custom resource under evaluation. 10429 type: string 10430 + required: 10431 + - apiVersion 10432 + - current 10433 + - kind 10434 type: object 10435 - timeout: 10436 + type: array 10437 + healthChecks: 10438 + description: A list of resources to be included in the health assessment. 10439 + items: 10440 description: |- 10441 - Timeout is the time to wait for any individual Kubernetes operation (like Jobs 10442 - for hooks) during the performance of a Helm action. Defaults to '5m0s'. 10443 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10444 - type: string 10445 - uninstall: 10446 - description: Uninstall holds the configuration for Helm uninstall actions for this HelmRelease. 10447 + NamespacedObjectKindReference contains enough information to locate the typed referenced Kubernetes resource object 10448 + in any namespace. 10449 properties: 10450 - deletionPropagation: 10451 - default: background 10452 - description: |- 10453 - DeletionPropagation specifies the deletion propagation policy when 10454 - a Helm uninstall is performed. 10455 - enum: 10456 - - background 10457 - - foreground 10458 - - orphan 10459 + apiVersion: 10460 + description: API version of the referent, if not specified the 10461 + Kubernetes preferred version will be used. 10462 type: string 10463 - disableHooks: 10464 - description: DisableHooks prevents hooks from running during the Helm rollback action. 10465 - type: boolean 10466 - disableWait: 10467 - description: |- 10468 - DisableWait disables waiting for all the resources to be deleted after 10469 - a Helm uninstall is performed. 10470 - type: boolean 10471 - keepHistory: 10472 - description: |- 10473 - KeepHistory tells Helm to remove all associated resources and mark the 10474 - release as deleted, but retain the release history. 10475 - type: boolean 10476 - timeout: 10477 - description: |- 10478 - Timeout is the time to wait for any individual Kubernetes operation (like 10479 - Jobs for hooks) during the performance of a Helm uninstall action. Defaults 10480 - to 'HelmReleaseSpec.Timeout'. 10481 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10482 + kind: 10483 + description: Kind of the referent. 10484 + type: string 10485 + name: 10486 + description: Name of the referent. 10487 + type: string 10488 + namespace: 10489 + description: Namespace of the referent, when not specified it 10490 + acts as LocalObjectReference. 10491 type: string 10492 + required: 10493 + - kind 10494 + - name 10495 type: object 10496 - upgrade: 10497 - description: Upgrade holds the configuration for Helm upgrade actions for this HelmRelease. 10498 + type: array 10499 + ignoreMissingComponents: 10500 + description: |- 10501 + IgnoreMissingComponents instructs the controller to ignore Components paths 10502 + not found in source by removing them from the generated kustomization.yaml 10503 + before running kustomize build. 10504 + type: boolean 10505 + images: 10506 + description: |- 10507 + Images is a list of (image name, new name, new tag or digest) 10508 + for changing image names, tags or digests. This can also be achieved with a 10509 + patch, but this operator is simpler to specify. 10510 + items: 10511 + description: Image contains an image name, a new name, a new tag 10512 + or digest, which will replace the original name and tag. 10513 properties: 10514 - cleanupOnFail: 10515 - description: |- 10516 - CleanupOnFail allows deletion of new resources created during the Helm 10517 - upgrade action when it fails. 10518 - type: boolean 10519 - crds: 10520 + digest: 10521 description: |- 10522 - CRDs upgrade CRDs from the Helm Chart's crds directory according 10523 - to the CRD upgrade policy provided here. Valid values are `Skip`, 10524 - `Create` or `CreateReplace`. Default is `Skip` and if omitted 10525 - CRDs are neither installed nor upgraded. 10526 - 10527 - Skip: do neither install nor replace (update) any CRDs. 10528 - 10529 - Create: new CRDs are created, existing CRDs are neither updated nor deleted. 10530 - 10531 - CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 10532 - but not deleted. 10533 - 10534 - By default, CRDs are not applied during Helm upgrade action. With this 10535 - option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. 10536 - https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 10537 - enum: 10538 - - Skip 10539 - - Create 10540 - - CreateReplace 10541 + Digest is the value used to replace the original image tag. 10542 + If digest is present NewTag value is ignored. 10543 type: string 10544 - disableHooks: 10545 - description: DisableHooks prevents hooks from running during the Helm upgrade action. 10546 - type: boolean 10547 - disableOpenAPIValidation: 10548 - description: |- 10549 - DisableOpenAPIValidation prevents the Helm upgrade action from validating 10550 - rendered templates against the Kubernetes OpenAPI Schema. 10551 - type: boolean 10552 - disableWait: 10553 - description: |- 10554 - DisableWait disables the waiting for resources to be ready after a Helm 10555 - upgrade has been performed. 10556 - type: boolean 10557 - disableWaitForJobs: 10558 - description: |- 10559 - DisableWaitForJobs disables waiting for jobs to complete after a Helm 10560 - upgrade has been performed. 10561 - type: boolean 10562 - force: 10563 - description: Force forces resource updates through a replacement strategy. 10564 - type: boolean 10565 - preserveValues: 10566 - description: |- 10567 - PreserveValues will make Helm reuse the last release's values and merge in 10568 - overrides from 'Values'. Setting this flag makes the HelmRelease 10569 - non-declarative. 10570 - type: boolean 10571 - remediation: 10572 - description: |- 10573 - Remediation holds the remediation configuration for when the Helm upgrade 10574 - action for the HelmRelease fails. The default is to not perform any action. 10575 - properties: 10576 - ignoreTestFailures: 10577 - description: |- 10578 - IgnoreTestFailures tells the controller to skip remediation when the Helm 10579 - tests are run after an upgrade action but fail. 10580 - Defaults to 'Test.IgnoreFailures'. 10581 - type: boolean 10582 - remediateLastFailure: 10583 - description: |- 10584 - RemediateLastFailure tells the controller to remediate the last failure, when 10585 - no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. 10586 - type: boolean 10587 - retries: 10588 - description: |- 10589 - Retries is the number of retries that should be attempted on failures before 10590 - bailing. Remediation, using 'Strategy', is performed between each attempt. 10591 - Defaults to '0', a negative integer equals to unlimited retries. 10592 - type: integer 10593 - strategy: 10594 - description: Strategy to use for failure remediation. Defaults to 'rollback'. 10595 - enum: 10596 - - rollback 10597 - - uninstall 10598 - type: string 10599 - type: object 10600 - timeout: 10601 - description: |- 10602 - Timeout is the time to wait for any individual Kubernetes operation (like 10603 - Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 10604 - 'HelmReleaseSpec.Timeout'. 10605 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10606 + name: 10607 + description: Name is a tag-less image name. 10608 + type: string 10609 + newName: 10610 + description: NewName is the value used to replace the original 10611 + name. 10612 + type: string 10613 + newTag: 10614 + description: NewTag is the value used to replace the original 10615 + tag. 10616 type: string 10617 + required: 10618 + - name 10619 type: object 10620 - values: 10621 - description: Values holds the values for this Helm release. 10622 - x-kubernetes-preserve-unknown-fields: true 10623 - valuesFrom: 10624 - description: |- 10625 - ValuesFrom holds references to resources containing Helm values for this HelmRelease, 10626 - and information about how they should be merged. 10627 - items: 10628 - description: |- 10629 - ValuesReference contains a reference to a resource containing Helm values, 10630 - and optionally the key they can be found at. 10631 - properties: 10632 - kind: 10633 - description: Kind of the values referent, valid values are ('Secret', 'ConfigMap'). 10634 - enum: 10635 - - Secret 10636 - - ConfigMap 10637 - type: string 10638 - name: 10639 - description: |- 10640 - Name of the values referent. Should reside in the same namespace as the 10641 - referring resource. 10642 - maxLength: 253 10643 - minLength: 1 10644 - type: string 10645 - optional: 10646 - description: |- 10647 - Optional marks this ValuesReference as optional. When set, a not found error 10648 - for the values reference is ignored, but any ValuesKey, TargetPath or 10649 - transient error will still result in a reconciliation failure. 10650 - type: boolean 10651 - targetPath: 10652 - description: |- 10653 - TargetPath is the YAML dot notation path the value should be merged at. When 10654 - set, the ValuesKey is expected to be a single flat value. Defaults to 'None', 10655 - which results in the values getting merged at the root. 10656 - maxLength: 250 10657 - pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$ 10658 - type: string 10659 - valuesKey: 10660 - description: |- 10661 - ValuesKey is the data key where the values.yaml or a specific value can be 10662 - found at. Defaults to 'values.yaml'. 10663 - maxLength: 253 10664 - pattern: ^[\-._a-zA-Z0-9]+$ 10665 - type: string 10666 - required: 10667 - - kind 10668 - - name 10669 - type: object 10670 - type: array 10671 - required: 10672 - - interval 10673 - type: object 10674 - x-kubernetes-validations: 10675 - - message: either chart or chartRef must be set 10676 - rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart) && has(self.chartRef)) 10677 - status: 10678 - default: 10679 - observedGeneration: -1 10680 - description: HelmReleaseStatus defines the observed state of a HelmRelease. 10681 - properties: 10682 - conditions: 10683 - description: Conditions holds the conditions for the HelmRelease. 10684 - items: 10685 - description: Condition contains details for one aspect of the current state of this API Resource. 10686 - properties: 10687 - lastTransitionTime: 10688 - description: |- 10689 - lastTransitionTime is the last time the condition transitioned from one status to another. 10690 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 10691 - format: date-time 10692 - type: string 10693 - message: 10694 - description: |- 10695 - message is a human readable message indicating details about the transition. 10696 - This may be an empty string. 10697 - maxLength: 32768 10698 - type: string 10699 - observedGeneration: 10700 - description: |- 10701 - observedGeneration represents the .metadata.generation that the condition was set based upon. 10702 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 10703 - with respect to the current state of the instance. 10704 - format: int64 10705 - minimum: 0 10706 - type: integer 10707 - reason: 10708 - description: |- 10709 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 10710 - Producers of specific condition types may define expected values and meanings for this field, 10711 - and whether the values are considered a guaranteed API. 10712 - The value should be a CamelCase string. 10713 - This field may not be empty. 10714 - maxLength: 1024 10715 - minLength: 1 10716 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 10717 - type: string 10718 - status: 10719 - description: status of the condition, one of True, False, Unknown. 10720 - enum: 10721 - - "True" 10722 - - "False" 10723 - - Unknown 10724 - type: string 10725 - type: 10726 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 10727 - maxLength: 316 10728 - 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])$ 10729 - type: string 10730 - required: 10731 - - lastTransitionTime 10732 - - message 10733 - - reason 10734 - - status 10735 - - type 10736 - type: object 10737 - type: array 10738 - failures: 10739 - description: |- 10740 - Failures is the reconciliation failure count against the latest desired 10741 - state. It is reset after a successful reconciliation. 10742 - format: int64 10743 - type: integer 10744 - helmChart: 10745 - description: |- 10746 - HelmChart is the namespaced name of the HelmChart resource created by 10747 - the controller for the HelmRelease. 10748 - type: string 10749 - history: 10750 - description: |- 10751 - History holds the history of Helm releases performed for this HelmRelease 10752 - up to the last successfully completed release. 10753 - items: 10754 - description: |- 10755 - Snapshot captures a point-in-time copy of the status information for a Helm release, 10756 - as managed by the controller. 10757 - properties: 10758 - apiVersion: 10759 - description: |- 10760 - APIVersion is the API version of the Snapshot. 10761 - Provisional: when the calculation method of the Digest field is changed, 10762 - this field will be used to distinguish between the old and new methods. 10763 - type: string 10764 - appVersion: 10765 - description: AppVersion is the chart app version of the release object in storage. 10766 - type: string 10767 - chartName: 10768 - description: ChartName is the chart name of the release object in storage. 10769 - type: string 10770 - chartVersion: 10771 - description: |- 10772 - ChartVersion is the chart version of the release object in 10773 - storage. 10774 - type: string 10775 - configDigest: 10776 - description: |- 10777 - ConfigDigest is the checksum of the config (better known as 10778 - "values") of the release object in storage. 10779 - It has the format of `<algo>:<checksum>`. 10780 - type: string 10781 - deleted: 10782 - description: Deleted is when the release was deleted. 10783 - format: date-time 10784 - type: string 10785 - digest: 10786 - description: |- 10787 - Digest is the checksum of the release object in storage. 10788 - It has the format of `<algo>:<checksum>`. 10789 - type: string 10790 - firstDeployed: 10791 - description: FirstDeployed is when the release was first deployed. 10792 - format: date-time 10793 - type: string 10794 - lastDeployed: 10795 - description: LastDeployed is when the release was last deployed. 10796 - format: date-time 10797 - type: string 10798 + type: array 10799 + interval: 10800 + description: |- 10801 + The interval at which to reconcile the Kustomization. 10802 + This interval is approximate and may be subject to jitter to ensure 10803 + efficient use of resources. 10804 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 10805 + type: string 10806 + kubeConfig: 10807 + description: |- 10808 + The KubeConfig for reconciling the Kustomization on a remote cluster. 10809 + When used in combination with KustomizationSpec.ServiceAccountName, 10810 + forces the controller to act on behalf of that Service Account at the 10811 + target cluster. 10812 + If the --default-service-account flag is set, its value will be used as 10813 + a controller level fallback for when KustomizationSpec.ServiceAccountName 10814 + is empty. 10815 + properties: 10816 + configMapRef: 10817 + description: |- 10818 + ConfigMapRef holds an optional name of a ConfigMap that contains 10819 + the following keys: 10820 + 10821 + - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 10822 + `generic`. Required. 10823 + - `cluster`: the fully qualified resource name of the Kubernetes 10824 + cluster in the cloud provider API. Not used by the `generic` 10825 + provider. Required when one of `address` or `ca.crt` is not set. 10826 + - `address`: the address of the Kubernetes API server. Required 10827 + for `generic`. For the other providers, if not specified, the 10828 + first address in the cluster resource will be used, and if 10829 + specified, it must match one of the addresses in the cluster 10830 + resource. 10831 + If audiences is not set, will be used as the audience for the 10832 + `generic` provider. 10833 + - `ca.crt`: the optional PEM-encoded CA certificate for the 10834 + Kubernetes API server. If not set, the controller will use the 10835 + CA certificate from the cluster resource. 10836 + - `audiences`: the optional audiences as a list of 10837 + line-break-separated strings for the Kubernetes ServiceAccount 10838 + token. Defaults to the `address` for the `generic` provider, or 10839 + to specific values for the other providers depending on the 10840 + provider. 10841 + - `serviceAccountName`: the optional name of the Kubernetes 10842 + ServiceAccount in the same namespace that should be used 10843 + for authentication. If not specified, the controller 10844 + ServiceAccount will be used. 10845 + 10846 + Mutually exclusive with SecretRef. 10847 + properties: 10848 name: 10849 - description: Name is the name of the release. 10850 - type: string 10851 - namespace: 10852 - description: Namespace is the namespace the release is deployed to. 10853 + description: Name of the referent. 10854 type: string 10855 - ociDigest: 10856 - description: OCIDigest is the digest of the OCI artifact associated with the release. 10857 + required: 10858 + - name 10859 + type: object 10860 + secretRef: 10861 + description: |- 10862 + SecretRef holds an optional name of a secret that contains a key with 10863 + the kubeconfig file as the value. If no key is set, the key will default 10864 + to 'value'. Mutually exclusive with ConfigMapRef. 10865 + It is recommended that the kubeconfig is self-contained, and the secret 10866 + is regularly updated if credentials such as a cloud-access-token expire. 10867 + Cloud specific `cmd-path` auth helpers will not function without adding 10868 + binaries and credentials to the Pod that is responsible for reconciling 10869 + Kubernetes resources. Supported only for the generic provider. 10870 + properties: 10871 + key: 10872 + description: Key in the Secret, when not specified an implementation-specific 10873 + default key is used. 10874 type: string 10875 - status: 10876 - description: Status is the current state of the release. 10877 + name: 10878 + description: Name of the Secret. 10879 type: string 10880 - testHooks: 10881 - additionalProperties: 10882 - description: |- 10883 - TestHookStatus holds the status information for a test hook as observed 10884 - to be run by the controller. 10885 - properties: 10886 - lastCompleted: 10887 - description: LastCompleted is the time the test hook last completed. 10888 - format: date-time 10889 - type: string 10890 - lastStarted: 10891 - description: LastStarted is the time the test hook was last started. 10892 - format: date-time 10893 - type: string 10894 - phase: 10895 - description: Phase the test hook was observed to be in. 10896 - type: string 10897 - type: object 10898 - description: |- 10899 - TestHooks is the list of test hooks for the release as observed to be 10900 - run by the controller. 10901 - type: object 10902 - version: 10903 - description: Version is the version of the release object in storage. 10904 - type: integer 10905 required: 10906 - - chartName 10907 - - chartVersion 10908 - - configDigest 10909 - - digest 10910 - - firstDeployed 10911 - - lastDeployed 10912 - - name 10913 - - namespace 10914 - - status 10915 - - version 10916 + - name 10917 type: object 10918 - type: array 10919 - installFailures: 10920 - description: |- 10921 - InstallFailures is the install failure count against the latest desired 10922 - state. It is reset after a successful reconciliation. 10923 - format: int64 10924 - type: integer 10925 - lastAppliedRevision: 10926 - description: |- 10927 - LastAppliedRevision is the revision of the last successfully applied 10928 - source. 10929 - 10930 - Deprecated: the revision can now be found in the History. 10931 - type: string 10932 - lastAttemptedConfigDigest: 10933 - description: |- 10934 - LastAttemptedConfigDigest is the digest for the config (better known as 10935 - "values") of the last reconciliation attempt. 10936 - type: string 10937 - lastAttemptedGeneration: 10938 - description: |- 10939 - LastAttemptedGeneration is the last generation the controller attempted 10940 - to reconcile. 10941 - format: int64 10942 - type: integer 10943 - lastAttemptedReleaseAction: 10944 - description: |- 10945 - LastAttemptedReleaseAction is the last release action performed for this 10946 - HelmRelease. It is used to determine the active remediation strategy. 10947 - enum: 10948 - - install 10949 - - upgrade 10950 - type: string 10951 - lastAttemptedRevision: 10952 - description: |- 10953 - LastAttemptedRevision is the Source revision of the last reconciliation 10954 - attempt. For OCIRepository sources, the 12 first characters of the digest are 10955 - appended to the chart version e.g. "1.2.3+1234567890ab". 10956 - type: string 10957 - lastAttemptedRevisionDigest: 10958 - description: |- 10959 - LastAttemptedRevisionDigest is the digest of the last reconciliation attempt. 10960 - This is only set for OCIRepository sources. 10961 - type: string 10962 - lastAttemptedValuesChecksum: 10963 - description: |- 10964 - LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last 10965 - reconciliation attempt. 10966 - 10967 - Deprecated: Use LastAttemptedConfigDigest instead. 10968 - type: string 10969 - lastHandledForceAt: 10970 - description: |- 10971 - LastHandledForceAt holds the value of the most recent force request 10972 - value, so a change of the annotation value can be detected. 10973 - type: string 10974 - lastHandledReconcileAt: 10975 - description: |- 10976 - LastHandledReconcileAt holds the value of the most recent 10977 - reconcile request value, so a change of the annotation value 10978 - can be detected. 10979 - type: string 10980 - lastHandledResetAt: 10981 - description: |- 10982 - LastHandledResetAt holds the value of the most recent reset request 10983 - value, so a change of the annotation value can be detected. 10984 - type: string 10985 - lastReleaseRevision: 10986 - description: |- 10987 - LastReleaseRevision is the revision of the last successful Helm release. 10988 - 10989 - Deprecated: Use History instead. 10990 - type: integer 10991 - observedGeneration: 10992 - description: ObservedGeneration is the last observed generation. 10993 - format: int64 10994 - type: integer 10995 - observedPostRenderersDigest: 10996 - description: |- 10997 - ObservedPostRenderersDigest is the digest for the post-renderers of 10998 - the last successful reconciliation attempt. 10999 - type: string 11000 - storageNamespace: 11001 - description: |- 11002 - StorageNamespace is the namespace of the Helm release storage for the 11003 - current release. 11004 - maxLength: 63 11005 - minLength: 1 11006 - type: string 11007 - upgradeFailures: 11008 - description: |- 11009 - UpgradeFailures is the upgrade failure count against the latest desired 11010 - state. It is reset after a successful reconciliation. 11011 - format: int64 11012 - type: integer 11013 - type: object 11014 - type: object 11015 - served: true 11016 - storage: false 11017 - subresources: 11018 - status: {} 11019 + type: object 11020 + x-kubernetes-validations: 11021 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 11022 + must be specified 11023 + rule: has(self.configMapRef) || has(self.secretRef) 11024 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 11025 + must be specified 11026 + rule: '!has(self.configMapRef) || !has(self.secretRef)' 11027 + namePrefix: 11028 + description: NamePrefix will prefix the names of all managed resources. 11029 + maxLength: 200 11030 + minLength: 1 11031 + type: string 11032 + nameSuffix: 11033 + description: NameSuffix will suffix the names of all managed resources. 11034 + maxLength: 200 11035 + minLength: 1 11036 + type: string 11037 + patches: 11038 + description: |- 11039 + Strategic merge and JSON patches, defined as inline YAML objects, 11040 + capable of targeting objects based on kind, label and annotation selectors. 11041 + items: 11042 + description: |- 11043 + Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 11044 + be applied to. 11045 + properties: 11046 + patch: 11047 + description: |- 11048 + Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 11049 + an array of operation objects. 11050 + type: string 11051 + target: 11052 + description: Target points to the resources that the patch document 11053 + should be applied to. 11054 + properties: 11055 + annotationSelector: 11056 + description: |- 11057 + AnnotationSelector is a string that follows the label selection expression 11058 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 11059 + It matches with the resource annotations. 11060 + type: string 11061 + group: 11062 + description: |- 11063 + Group is the API group to select resources from. 11064 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 11065 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 11066 + type: string 11067 + kind: 11068 + description: |- 11069 + Kind of the API Group to select resources from. 11070 + Together with Group and Version it is capable of unambiguously 11071 + identifying and/or selecting resources. 11072 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 11073 + type: string 11074 + labelSelector: 11075 + description: |- 11076 + LabelSelector is a string that follows the label selection expression 11077 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 11078 + It matches with the resource labels. 11079 + type: string 11080 + name: 11081 + description: Name to match resources with. 11082 + type: string 11083 + namespace: 11084 + description: Namespace to select resources from. 11085 + type: string 11086 + version: 11087 + description: |- 11088 + Version of the API Group to select resources from. 11089 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 11090 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 11091 + type: string 11092 + type: object 11093 + required: 11094 + - patch 11095 + type: object 11096 + type: array 11097 + path: 11098 + description: |- 11099 + Path to the directory containing the kustomization.yaml file, or the 11100 + set of plain YAMLs a kustomization.yaml should be generated for. 11101 + Defaults to 'None', which translates to the root path of the SourceRef. 11102 + type: string 11103 + postBuild: 11104 + description: |- 11105 + PostBuild describes which actions to perform on the YAML manifest 11106 + generated by building the kustomize overlay. 11107 + properties: 11108 + substitute: 11109 + additionalProperties: 11110 + type: string 11111 + description: |- 11112 + Substitute holds a map of key/value pairs. 11113 + The variables defined in your YAML manifests that match any of the keys 11114 + defined in the map will be substituted with the set value. 11115 + Includes support for bash string replacement functions 11116 + e.g. ${var:=default}, ${var:position} and ${var/substring/replacement}. 11117 + type: object 11118 + substituteFrom: 11119 + description: |- 11120 + SubstituteFrom holds references to ConfigMaps and Secrets containing 11121 + the variables and their values to be substituted in the YAML manifests. 11122 + The ConfigMap and the Secret data keys represent the var names, and they 11123 + must match the vars declared in the manifests for the substitution to 11124 + happen. 11125 + items: 11126 + description: |- 11127 + SubstituteReference contains a reference to a resource containing 11128 + the variables name and value. 11129 + properties: 11130 + kind: 11131 + description: Kind of the values referent, valid values are 11132 + ('Secret', 'ConfigMap'). 11133 + enum: 11134 + - Secret 11135 + - ConfigMap 11136 + type: string 11137 + name: 11138 + description: |- 11139 + Name of the values referent. Should reside in the same namespace as the 11140 + referring resource. 11141 + maxLength: 253 11142 + minLength: 1 11143 + type: string 11144 + optional: 11145 + default: false 11146 + description: |- 11147 + Optional indicates whether the referenced resource must exist, or whether to 11148 + tolerate its absence. If true and the referenced resource is absent, proceed 11149 + as if the resource was present but empty, without any variables defined. 11150 + type: boolean 11151 + required: 11152 + - kind 11153 + - name 11154 + type: object 11155 + type: array 11156 + type: object 11157 + prune: 11158 + description: Prune enables garbage collection. 11159 + type: boolean 11160 + retryInterval: 11161 + description: |- 11162 + The interval at which to retry a previously failed reconciliation. 11163 + When not specified, the controller uses the KustomizationSpec.Interval 11164 + value to retry failures. 11165 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 11166 + type: string 11167 + serviceAccountName: 11168 + description: |- 11169 + The name of the Kubernetes service account to impersonate 11170 + when reconciling this Kustomization. 11171 + type: string 11172 + sourceRef: 11173 + description: Reference of the source where the kustomization file 11174 + is. 11175 + properties: 11176 + apiVersion: 11177 + description: API version of the referent. 11178 + type: string 11179 + kind: 11180 + description: Kind of the referent. 11181 + enum: 11182 + - OCIRepository 11183 + - GitRepository 11184 + - Bucket 11185 + - ExternalArtifact 11186 + type: string 11187 + name: 11188 + description: Name of the referent. 11189 + type: string 11190 + namespace: 11191 + description: |- 11192 + Namespace of the referent, defaults to the namespace of the Kubernetes 11193 + resource object that contains the reference. 11194 + type: string 11195 + required: 11196 + - kind 11197 + - name 11198 + type: object 11199 + suspend: 11200 + description: |- 11201 + This flag tells the controller to suspend subsequent kustomize executions, 11202 + it does not apply to already started executions. Defaults to false. 11203 + type: boolean 11204 + targetNamespace: 11205 + description: |- 11206 + TargetNamespace sets or overrides the namespace in the 11207 + kustomization.yaml file. 11208 + maxLength: 63 11209 + minLength: 1 11210 + type: string 11211 + timeout: 11212 + description: |- 11213 + Timeout for validation, apply and health checking operations. 11214 + Defaults to 'Interval' duration. 11215 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 11216 + type: string 11217 + wait: 11218 + description: |- 11219 + Wait instructs the controller to check the health of all the reconciled 11220 + resources. When enabled, the HealthChecks are ignored. Defaults to false. 11221 + type: boolean 11222 + required: 11223 + - interval 11224 + - prune 11225 + - sourceRef 11226 + type: object 11227 + status: 11228 + default: 11229 + observedGeneration: -1 11230 + description: KustomizationStatus defines the observed state of a kustomization. 11231 + properties: 11232 + conditions: 11233 + items: 11234 + description: Condition contains details for one aspect of the current 11235 + state of this API Resource. 11236 + properties: 11237 + lastTransitionTime: 11238 + description: |- 11239 + lastTransitionTime is the last time the condition transitioned from one status to another. 11240 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 11241 + format: date-time 11242 + type: string 11243 + message: 11244 + description: |- 11245 + message is a human readable message indicating details about the transition. 11246 + This may be an empty string. 11247 + maxLength: 32768 11248 + type: string 11249 + observedGeneration: 11250 + description: |- 11251 + observedGeneration represents the .metadata.generation that the condition was set based upon. 11252 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 11253 + with respect to the current state of the instance. 11254 + format: int64 11255 + minimum: 0 11256 + type: integer 11257 + reason: 11258 + description: |- 11259 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 11260 + Producers of specific condition types may define expected values and meanings for this field, 11261 + and whether the values are considered a guaranteed API. 11262 + The value should be a CamelCase string. 11263 + This field may not be empty. 11264 + maxLength: 1024 11265 + minLength: 1 11266 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 11267 + type: string 11268 + status: 11269 + description: status of the condition, one of True, False, Unknown. 11270 + enum: 11271 + - "True" 11272 + - "False" 11273 + - Unknown 11274 + type: string 11275 + type: 11276 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 11277 + maxLength: 316 11278 + 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])$ 11279 + type: string 11280 + required: 11281 + - lastTransitionTime 11282 + - message 11283 + - reason 11284 + - status 11285 + - type 11286 + type: object 11287 + type: array 11288 + history: 11289 + description: |- 11290 + History contains a set of snapshots of the last reconciliation attempts 11291 + tracking the revision, the state and the duration of each attempt. 11292 + items: 11293 + description: |- 11294 + Snapshot represents a point-in-time record of a group of resources reconciliation, 11295 + including timing information, status, and a unique digest identifier. 11296 + properties: 11297 + digest: 11298 + description: Digest is the checksum in the format `<algo>:<hex>` 11299 + of the resources in this snapshot. 11300 + type: string 11301 + firstReconciled: 11302 + description: FirstReconciled is the time when this revision 11303 + was first reconciled to the cluster. 11304 + format: date-time 11305 + type: string 11306 + lastReconciled: 11307 + description: LastReconciled is the time when this revision was 11308 + last reconciled to the cluster. 11309 + format: date-time 11310 + type: string 11311 + lastReconciledDuration: 11312 + description: LastReconciledDuration is time it took to reconcile 11313 + the resources in this revision. 11314 + type: string 11315 + lastReconciledStatus: 11316 + description: LastReconciledStatus is the status of the last 11317 + reconciliation. 11318 + type: string 11319 + metadata: 11320 + additionalProperties: 11321 + type: string 11322 + description: Metadata contains additional information about 11323 + the snapshot. 11324 + type: object 11325 + totalReconciliations: 11326 + description: TotalReconciliations is the total number of reconciliations 11327 + that have occurred for this snapshot. 11328 + format: int64 11329 + type: integer 11330 + required: 11331 + - digest 11332 + - firstReconciled 11333 + - lastReconciled 11334 + - lastReconciledDuration 11335 + - lastReconciledStatus 11336 + - totalReconciliations 11337 + type: object 11338 + type: array 11339 + inventory: 11340 + description: |- 11341 + Inventory contains the list of Kubernetes resource object references that 11342 + have been successfully applied. 11343 + properties: 11344 + entries: 11345 + description: Entries of Kubernetes resource object references. 11346 + items: 11347 + description: ResourceRef contains the information necessary 11348 + to locate a resource within a cluster. 11349 + properties: 11350 + id: 11351 + description: |- 11352 + ID is the string representation of the Kubernetes resource object's metadata, 11353 + in the format '<namespace>_<name>_<group>_<kind>'. 11354 + type: string 11355 + v: 11356 + description: Version is the API version of the Kubernetes 11357 + resource object's kind. 11358 + type: string 11359 + required: 11360 + - id 11361 + - v 11362 + type: object 11363 + type: array 11364 + required: 11365 + - entries 11366 + type: object 11367 + lastAppliedOriginRevision: 11368 + description: |- 11369 + The last successfully applied origin revision. 11370 + Equals the origin revision of the applied Artifact from the referenced Source. 11371 + Usually present on the Metadata of the applied Artifact and depends on the 11372 + Source type, e.g. for OCI it's the value associated with the key 11373 + "org.opencontainers.image.revision". 11374 + type: string 11375 + lastAppliedRevision: 11376 + description: |- 11377 + The last successfully applied revision. 11378 + Equals the Revision of the applied Artifact from the referenced Source. 11379 + type: string 11380 + lastAttemptedRevision: 11381 + description: LastAttemptedRevision is the revision of the last reconciliation 11382 + attempt. 11383 + type: string 11384 + lastHandledReconcileAt: 11385 + description: |- 11386 + LastHandledReconcileAt holds the value of the most recent 11387 + reconcile request value, so a change of the annotation value 11388 + can be detected. 11389 + type: string 11390 + observedGeneration: 11391 + description: ObservedGeneration is the last reconciled generation. 11392 + format: int64 11393 + type: integer 11394 + type: object 11395 + type: object 11396 + served: true 11397 + storage: true 11398 + subresources: 11399 + status: {} 11400 --- 11401 apiVersion: v1 11402 kind: ServiceAccount 11403 metadata: 11404 labels: 11405 - app.kubernetes.io/component: helm-controller 11406 + app.kubernetes.io/component: kustomize-controller 11407 app.kubernetes.io/instance: flux-system 11408 app.kubernetes.io/part-of: flux 11409 - app.kubernetes.io/version: v2.7.5 11410 - name: helm-controller 11411 + app.kubernetes.io/version: v2.8.0 11412 + name: kustomize-controller 11413 namespace: flux-system 11414 --- 11415 apiVersion: apps/v1 11416 kind: Deployment 11417 metadata: 11418 labels: 11419 - app.kubernetes.io/component: helm-controller 11420 + app.kubernetes.io/component: kustomize-controller 11421 app.kubernetes.io/instance: flux-system 11422 app.kubernetes.io/part-of: flux 11423 - app.kubernetes.io/version: v2.7.5 11424 + app.kubernetes.io/version: v2.8.0 11425 control-plane: controller 11426 - name: helm-controller 11427 + name: kustomize-controller 11428 namespace: flux-system 11429 spec: 11430 replicas: 1 11431 selector: 11432 matchLabels: 11433 - app: helm-controller 11434 + app: kustomize-controller 11435 template: 11436 metadata: 11437 annotations: 11438 prometheus.io/port: "8080" 11439 prometheus.io/scrape: "true" 11440 labels: 11441 - app: helm-controller 11442 - app.kubernetes.io/component: helm-controller 11443 + app: kustomize-controller 11444 + app.kubernetes.io/component: kustomize-controller 11445 app.kubernetes.io/instance: flux-system 11446 app.kubernetes.io/part-of: flux 11447 - app.kubernetes.io/version: v2.7.5 11448 + app.kubernetes.io/version: v2.8.0 11449 spec: 11450 containers: 11451 - - args: 11452 - - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 11453 - - --watch-all-namespaces=true 11454 - - --log-level=info 11455 - - --log-encoding=json 11456 - - --enable-leader-election 11457 - env: 11458 - - name: RUNTIME_NAMESPACE 11459 - valueFrom: 11460 - fieldRef: 11461 - fieldPath: metadata.namespace 11462 - - name: GOMEMLIMIT 11463 - valueFrom: 11464 - resourceFieldRef: 11465 - containerName: manager 11466 - resource: limits.memory 11467 - image: ghcr.io/fluxcd/helm-controller:v1.4.5 11468 - imagePullPolicy: IfNotPresent 11469 - livenessProbe: 11470 - httpGet: 11471 - path: /healthz 11472 - port: healthz 11473 - name: manager 11474 - ports: 11475 - - containerPort: 8080 11476 - name: http-prom 11477 - protocol: TCP 11478 - - containerPort: 9440 11479 - name: healthz 11480 - protocol: TCP 11481 - readinessProbe: 11482 - httpGet: 11483 - path: /readyz 11484 - port: healthz 11485 - resources: 11486 - limits: 11487 - cpu: 1000m 11488 - memory: 1Gi 11489 - requests: 11490 - cpu: 100m 11491 - memory: 64Mi 11492 - securityContext: 11493 - allowPrivilegeEscalation: false 11494 - capabilities: 11495 - drop: 11496 - - ALL 11497 - readOnlyRootFilesystem: true 11498 - runAsNonRoot: true 11499 - seccompProfile: 11500 - type: RuntimeDefault 11501 - volumeMounts: 11502 - - mountPath: /tmp 11503 - name: temp 11504 + - args: 11505 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 11506 + - --watch-all-namespaces=true 11507 + - --log-level=info 11508 + - --log-encoding=json 11509 + - --enable-leader-election 11510 + env: 11511 + - name: RUNTIME_NAMESPACE 11512 + valueFrom: 11513 + fieldRef: 11514 + fieldPath: metadata.namespace 11515 + - name: GOMEMLIMIT 11516 + valueFrom: 11517 + resourceFieldRef: 11518 + containerName: manager 11519 + resource: limits.memory 11520 + image: ghcr.io/fluxcd/kustomize-controller:v1.8.0 11521 + imagePullPolicy: IfNotPresent 11522 + livenessProbe: 11523 + httpGet: 11524 + path: /healthz 11525 + port: healthz 11526 + name: manager 11527 + ports: 11528 + - containerPort: 8080 11529 + name: http-prom 11530 + protocol: TCP 11531 + - containerPort: 9440 11532 + name: healthz 11533 + protocol: TCP 11534 + readinessProbe: 11535 + httpGet: 11536 + path: /readyz 11537 + port: healthz 11538 + resources: 11539 + limits: 11540 + cpu: 1000m 11541 + memory: 1Gi 11542 + requests: 11543 + cpu: 100m 11544 + memory: 64Mi 11545 + securityContext: 11546 + allowPrivilegeEscalation: false 11547 + capabilities: 11548 + drop: 11549 + - ALL 11550 + readOnlyRootFilesystem: true 11551 + runAsNonRoot: true 11552 + seccompProfile: 11553 + type: RuntimeDefault 11554 + volumeMounts: 11555 + - mountPath: /tmp 11556 + name: temp 11557 nodeSelector: 11558 kubernetes.io/os: linux 11559 priorityClassName: system-cluster-critical 11560 securityContext: 11561 fsGroup: 1337 11562 - serviceAccountName: helm-controller 11563 - terminationGracePeriodSeconds: 600 11564 + serviceAccountName: kustomize-controller 11565 + terminationGracePeriodSeconds: 60 11566 volumes: 11567 - - emptyDir: {} 11568 - name: temp 11569 + - emptyDir: {} 11570 + name: temp 11571 --- 11572 apiVersion: apiextensions.k8s.io/v1 11573 kind: CustomResourceDefinition 11574 @@ -8562,1411 +3441,1547 @@ metadata: 11575 annotations: 11576 controller-gen.kubebuilder.io/version: v0.19.0 11577 labels: 11578 - app.kubernetes.io/component: notification-controller 11579 + app.kubernetes.io/component: helm-controller 11580 app.kubernetes.io/instance: flux-system 11581 app.kubernetes.io/part-of: flux 11582 - app.kubernetes.io/version: v2.7.5 11583 - name: alerts.notification.toolkit.fluxcd.io 11584 + app.kubernetes.io/version: v2.8.0 11585 + name: helmreleases.helm.toolkit.fluxcd.io 11586 spec: 11587 - group: notification.toolkit.fluxcd.io 11588 + group: helm.toolkit.fluxcd.io 11589 names: 11590 - kind: Alert 11591 - listKind: AlertList 11592 - plural: alerts 11593 - singular: alert 11594 + kind: HelmRelease 11595 + listKind: HelmReleaseList 11596 + plural: helmreleases 11597 + shortNames: 11598 + - hr 11599 + singular: helmrelease 11600 scope: Namespaced 11601 versions: 11602 - - additionalPrinterColumns: 11603 - - jsonPath: .metadata.creationTimestamp 11604 - name: Age 11605 - type: date 11606 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 11607 - name: Ready 11608 - type: string 11609 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 11610 - name: Status 11611 - type: string 11612 - deprecated: true 11613 - deprecationWarning: v1beta2 Alert is deprecated, upgrade to v1beta3 11614 - name: v1beta2 11615 - schema: 11616 - openAPIV3Schema: 11617 - description: Alert is the Schema for the alerts API 11618 - properties: 11619 - apiVersion: 11620 - description: |- 11621 - APIVersion defines the versioned schema of this representation of an object. 11622 - Servers should convert recognized schemas to the latest internal value, and 11623 - may reject unrecognized values. 11624 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 11625 - type: string 11626 - kind: 11627 - description: |- 11628 - Kind is a string value representing the REST resource this object represents. 11629 - Servers may infer this from the endpoint the client submits requests to. 11630 - Cannot be updated. 11631 - In CamelCase. 11632 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 11633 - type: string 11634 - metadata: 11635 - type: object 11636 - spec: 11637 - description: AlertSpec defines an alerting rule for events involving a list of objects. 11638 - properties: 11639 - eventMetadata: 11640 - additionalProperties: 11641 - type: string 11642 - description: |- 11643 - EventMetadata is an optional field for adding metadata to events dispatched by the 11644 - controller. This can be used for enhancing the context of the event. If a field 11645 - would override one already present on the original event as generated by the emitter, 11646 - then the override doesn't happen, i.e. the original value is preserved, and an info 11647 - log is printed. 11648 - type: object 11649 - eventSeverity: 11650 - default: info 11651 - description: |- 11652 - EventSeverity specifies how to filter events based on severity. 11653 - If set to 'info' no events will be filtered. 11654 - enum: 11655 - - info 11656 - - error 11657 - type: string 11658 - eventSources: 11659 - description: |- 11660 - EventSources specifies how to filter events based 11661 - on the involved object kind, name and namespace. 11662 - items: 11663 - description: |- 11664 - CrossNamespaceObjectReference contains enough information to let you locate the 11665 - typed referenced object at cluster level 11666 + - additionalPrinterColumns: 11667 + - jsonPath: .metadata.creationTimestamp 11668 + name: Age 11669 + type: date 11670 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 11671 + name: Ready 11672 + type: string 11673 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 11674 + name: Status 11675 + type: string 11676 + name: v2 11677 + schema: 11678 + openAPIV3Schema: 11679 + description: HelmRelease is the Schema for the helmreleases API 11680 + properties: 11681 + apiVersion: 11682 + description: |- 11683 + APIVersion defines the versioned schema of this representation of an object. 11684 + Servers should convert recognized schemas to the latest internal value, and 11685 + may reject unrecognized values. 11686 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 11687 + type: string 11688 + kind: 11689 + description: |- 11690 + Kind is a string value representing the REST resource this object represents. 11691 + Servers may infer this from the endpoint the client submits requests to. 11692 + Cannot be updated. 11693 + In CamelCase. 11694 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 11695 + type: string 11696 + metadata: 11697 + type: object 11698 + spec: 11699 + description: HelmReleaseSpec defines the desired state of a Helm release. 11700 + properties: 11701 + chart: 11702 + description: |- 11703 + Chart defines the template of the v1.HelmChart that should be created 11704 + for this HelmRelease. 11705 + properties: 11706 + metadata: 11707 + description: ObjectMeta holds the template for metadata like labels 11708 + and annotations. 11709 properties: 11710 - apiVersion: 11711 - description: API version of the referent 11712 - type: string 11713 - kind: 11714 - description: Kind of the referent 11715 - enum: 11716 - - Bucket 11717 - - GitRepository 11718 - - Kustomization 11719 - - HelmRelease 11720 - - HelmChart 11721 - - HelmRepository 11722 - - ImageRepository 11723 - - ImagePolicy 11724 - - ImageUpdateAutomation 11725 - - OCIRepository 11726 - type: string 11727 - matchLabels: 11728 + annotations: 11729 additionalProperties: 11730 type: string 11731 description: |- 11732 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 11733 - map is equivalent to an element of matchExpressions, whose key field is "key", the 11734 - operator is "In", and the values array contains only "value". The requirements are ANDed. 11735 - MatchLabels requires the name to be set to `*`. 11736 + Annotations is an unstructured key value map stored with a resource that may be 11737 + set by external tools to store and retrieve arbitrary metadata. They are not 11738 + queryable and should be preserved when modifying objects. 11739 + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 11740 type: object 11741 - name: 11742 + labels: 11743 + additionalProperties: 11744 + type: string 11745 description: |- 11746 - Name of the referent 11747 - If multiple resources are targeted `*` may be set. 11748 - maxLength: 253 11749 - minLength: 1 11750 - type: string 11751 - namespace: 11752 - description: Namespace of the referent 11753 - maxLength: 253 11754 - minLength: 1 11755 - type: string 11756 - required: 11757 - - kind 11758 - - name 11759 + Map of string keys and values that can be used to organize and categorize 11760 + (scope and select) objects. 11761 + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 11762 + type: object 11763 type: object 11764 - type: array 11765 - exclusionList: 11766 - description: |- 11767 - ExclusionList specifies a list of Golang regular expressions 11768 - to be used for excluding messages. 11769 - items: 11770 - type: string 11771 - type: array 11772 - inclusionList: 11773 - description: |- 11774 - InclusionList specifies a list of Golang regular expressions 11775 - to be used for including messages. 11776 - items: 11777 - type: string 11778 - type: array 11779 - providerRef: 11780 - description: ProviderRef specifies which Provider this Alert should use. 11781 - properties: 11782 - name: 11783 - description: Name of the referent. 11784 - type: string 11785 - required: 11786 - - name 11787 - type: object 11788 - summary: 11789 - description: Summary holds a short description of the impact and affected cluster. 11790 - maxLength: 255 11791 - type: string 11792 - suspend: 11793 - description: |- 11794 - Suspend tells the controller to suspend subsequent 11795 - events handling for this Alert. 11796 - type: boolean 11797 - required: 11798 - - eventSources 11799 - - providerRef 11800 - type: object 11801 - status: 11802 - default: 11803 - observedGeneration: -1 11804 - description: AlertStatus defines the observed state of the Alert. 11805 - properties: 11806 - conditions: 11807 - description: Conditions holds the conditions for the Alert. 11808 - items: 11809 - description: Condition contains details for one aspect of the current state of this API Resource. 11810 + spec: 11811 + description: Spec holds the template for the v1.HelmChartSpec 11812 + for this HelmRelease. 11813 properties: 11814 - lastTransitionTime: 11815 - description: |- 11816 - lastTransitionTime is the last time the condition transitioned from one status to another. 11817 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 11818 - format: date-time 11819 + chart: 11820 + description: The name or path the Helm chart is available 11821 + at in the SourceRef. 11822 + maxLength: 2048 11823 + minLength: 1 11824 type: string 11825 - message: 11826 + ignoreMissingValuesFiles: 11827 + description: IgnoreMissingValuesFiles controls whether to 11828 + silently ignore missing values files rather than failing. 11829 + type: boolean 11830 + interval: 11831 description: |- 11832 - message is a human readable message indicating details about the transition. 11833 - This may be an empty string. 11834 - maxLength: 32768 11835 + Interval at which to check the v1.Source for updates. Defaults to 11836 + 'HelmReleaseSpec.Interval'. 11837 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 11838 type: string 11839 - observedGeneration: 11840 + reconcileStrategy: 11841 + default: ChartVersion 11842 description: |- 11843 - observedGeneration represents the .metadata.generation that the condition was set based upon. 11844 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 11845 - with respect to the current state of the instance. 11846 - format: int64 11847 - minimum: 0 11848 - type: integer 11849 - reason: 11850 - description: |- 11851 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 11852 - Producers of specific condition types may define expected values and meanings for this field, 11853 - and whether the values are considered a guaranteed API. 11854 - The value should be a CamelCase string. 11855 - This field may not be empty. 11856 - maxLength: 1024 11857 - minLength: 1 11858 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 11859 - type: string 11860 - status: 11861 - description: status of the condition, one of True, False, Unknown. 11862 - enum: 11863 - - "True" 11864 - - "False" 11865 - - Unknown 11866 - type: string 11867 - type: 11868 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 11869 - maxLength: 316 11870 - 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])$ 11871 - type: string 11872 - required: 11873 - - lastTransitionTime 11874 - - message 11875 - - reason 11876 - - status 11877 - - type 11878 - type: object 11879 - type: array 11880 - lastHandledReconcileAt: 11881 - description: |- 11882 - LastHandledReconcileAt holds the value of the most recent 11883 - reconcile request value, so a change of the annotation value 11884 - can be detected. 11885 - type: string 11886 - observedGeneration: 11887 - description: ObservedGeneration is the last observed generation. 11888 - format: int64 11889 - type: integer 11890 - type: object 11891 - type: object 11892 - served: true 11893 - storage: false 11894 - subresources: 11895 - status: {} 11896 - - additionalPrinterColumns: 11897 - - jsonPath: .metadata.creationTimestamp 11898 - name: Age 11899 - type: date 11900 - name: v1beta3 11901 - schema: 11902 - openAPIV3Schema: 11903 - description: Alert is the Schema for the alerts API 11904 - properties: 11905 - apiVersion: 11906 - description: |- 11907 - APIVersion defines the versioned schema of this representation of an object. 11908 - Servers should convert recognized schemas to the latest internal value, and 11909 - may reject unrecognized values. 11910 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 11911 - type: string 11912 - kind: 11913 - description: |- 11914 - Kind is a string value representing the REST resource this object represents. 11915 - Servers may infer this from the endpoint the client submits requests to. 11916 - Cannot be updated. 11917 - In CamelCase. 11918 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 11919 - type: string 11920 - metadata: 11921 - type: object 11922 - spec: 11923 - description: AlertSpec defines an alerting rule for events involving a list of objects. 11924 - properties: 11925 - eventMetadata: 11926 - additionalProperties: 11927 - type: string 11928 - description: |- 11929 - EventMetadata is an optional field for adding metadata to events dispatched by the 11930 - controller. This can be used for enhancing the context of the event. If a field 11931 - would override one already present on the original event as generated by the emitter, 11932 - then the override doesn't happen, i.e. the original value is preserved, and an info 11933 - log is printed. 11934 - type: object 11935 - eventSeverity: 11936 - default: info 11937 - description: |- 11938 - EventSeverity specifies how to filter events based on severity. 11939 - If set to 'info' no events will be filtered. 11940 - enum: 11941 - - info 11942 - - error 11943 - type: string 11944 - eventSources: 11945 - description: |- 11946 - EventSources specifies how to filter events based 11947 - on the involved object kind, name and namespace. 11948 - items: 11949 - description: |- 11950 - CrossNamespaceObjectReference contains enough information to let you locate the 11951 - typed referenced object at cluster level 11952 - properties: 11953 - apiVersion: 11954 - description: API version of the referent 11955 - type: string 11956 - kind: 11957 - description: Kind of the referent 11958 + Determines what enables the creation of a new artifact. Valid values are 11959 + ('ChartVersion', 'Revision'). 11960 + See the documentation of the values for an explanation on their behavior. 11961 + Defaults to ChartVersion when omitted. 11962 enum: 11963 - - Bucket 11964 - - GitRepository 11965 - - Kustomization 11966 - - HelmRelease 11967 - - HelmChart 11968 - - HelmRepository 11969 - - ImageRepository 11970 - - ImagePolicy 11971 - - ImageUpdateAutomation 11972 - - OCIRepository 11973 + - ChartVersion 11974 + - Revision 11975 type: string 11976 - matchLabels: 11977 - additionalProperties: 11978 - type: string 11979 + sourceRef: 11980 + description: The name and namespace of the v1.Source the chart 11981 + is available at. 11982 + properties: 11983 + apiVersion: 11984 + description: APIVersion of the referent. 11985 + type: string 11986 + kind: 11987 + description: Kind of the referent. 11988 + enum: 11989 + - HelmRepository 11990 + - GitRepository 11991 + - Bucket 11992 + type: string 11993 + name: 11994 + description: Name of the referent. 11995 + maxLength: 253 11996 + minLength: 1 11997 + type: string 11998 + namespace: 11999 + description: Namespace of the referent. 12000 + maxLength: 63 12001 + minLength: 1 12002 + type: string 12003 + required: 12004 + - kind 12005 + - name 12006 + type: object 12007 + valuesFiles: 12008 description: |- 12009 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 12010 - map is equivalent to an element of matchExpressions, whose key field is "key", the 12011 - operator is "In", and the values array contains only "value". The requirements are ANDed. 12012 - MatchLabels requires the name to be set to `*`. 12013 + Alternative list of values files to use as the chart values (values.yaml 12014 + is not included by default), expected to be a relative path in the SourceRef. 12015 + Values files are merged in the order of this list with the last file overriding 12016 + the first. Ignored when omitted. 12017 + items: 12018 + type: string 12019 + type: array 12020 + verify: 12021 + description: |- 12022 + Verify contains the secret name containing the trusted public keys 12023 + used to verify the signature and specifies which provider to use to check 12024 + whether OCI image is authentic. 12025 + This field is only supported for OCI sources. 12026 + Chart dependencies, which are not bundled in the umbrella chart artifact, 12027 + are not verified. 12028 + properties: 12029 + provider: 12030 + default: cosign 12031 + description: Provider specifies the technology used to 12032 + sign the OCI Helm chart. 12033 + enum: 12034 + - cosign 12035 + - notation 12036 + type: string 12037 + secretRef: 12038 + description: |- 12039 + SecretRef specifies the Kubernetes Secret containing the 12040 + trusted public keys. 12041 + properties: 12042 + name: 12043 + description: Name of the referent. 12044 + type: string 12045 + required: 12046 + - name 12047 + type: object 12048 + required: 12049 + - provider 12050 type: object 12051 - name: 12052 + version: 12053 + default: '*' 12054 description: |- 12055 - Name of the referent 12056 - If multiple resources are targeted `*` may be set. 12057 - maxLength: 253 12058 - minLength: 1 12059 - type: string 12060 - namespace: 12061 - description: Namespace of the referent 12062 - maxLength: 253 12063 - minLength: 1 12064 + Version semver expression, ignored for charts from v1.GitRepository and 12065 + v1beta2.Bucket sources. Defaults to latest when omitted. 12066 type: string 12067 required: 12068 - - kind 12069 - - name 12070 + - chart 12071 + - sourceRef 12072 type: object 12073 - type: array 12074 - exclusionList: 12075 - description: |- 12076 - ExclusionList specifies a list of Golang regular expressions 12077 - to be used for excluding messages. 12078 - items: 12079 + required: 12080 + - spec 12081 + type: object 12082 + chartRef: 12083 + description: |- 12084 + ChartRef holds a reference to a source controller resource containing the 12085 + Helm chart artifact. 12086 + properties: 12087 + apiVersion: 12088 + description: APIVersion of the referent. 12089 type: string 12090 - type: array 12091 - inclusionList: 12092 - description: |- 12093 - InclusionList specifies a list of Golang regular expressions 12094 - to be used for including messages. 12095 - items: 12096 + kind: 12097 + description: Kind of the referent. 12098 + enum: 12099 + - OCIRepository 12100 + - HelmChart 12101 + - ExternalArtifact 12102 type: string 12103 - type: array 12104 - providerRef: 12105 - description: ProviderRef specifies which Provider this Alert should use. 12106 - properties: 12107 - name: 12108 - description: Name of the referent. 12109 + name: 12110 + description: Name of the referent. 12111 + maxLength: 253 12112 + minLength: 1 12113 + type: string 12114 + namespace: 12115 + description: |- 12116 + Namespace of the referent, defaults to the namespace of the Kubernetes 12117 + resource object that contains the reference. 12118 + maxLength: 63 12119 + minLength: 1 12120 + type: string 12121 + required: 12122 + - kind 12123 + - name 12124 + type: object 12125 + commonMetadata: 12126 + description: |- 12127 + CommonMetadata specifies the common labels and annotations that are 12128 + applied to all resources. Any existing label or annotation will be 12129 + overridden if its key matches a common one. 12130 + properties: 12131 + annotations: 12132 + additionalProperties: 12133 + type: string 12134 + description: Annotations to be added to the object's metadata. 12135 + type: object 12136 + labels: 12137 + additionalProperties: 12138 type: string 12139 - required: 12140 - - name 12141 - type: object 12142 - summary: 12143 - description: |- 12144 - Summary holds a short description of the impact and affected cluster. 12145 - Deprecated: Use EventMetadata instead. 12146 - maxLength: 255 12147 - type: string 12148 - suspend: 12149 - description: |- 12150 - Suspend tells the controller to suspend subsequent 12151 - events handling for this Alert. 12152 - type: boolean 12153 - required: 12154 - - eventSources 12155 - - providerRef 12156 - type: object 12157 - type: object 12158 - served: true 12159 - storage: true 12160 - subresources: {} 12161 ---- 12162 -apiVersion: apiextensions.k8s.io/v1 12163 -kind: CustomResourceDefinition 12164 -metadata: 12165 - annotations: 12166 - controller-gen.kubebuilder.io/version: v0.19.0 12167 - labels: 12168 - app.kubernetes.io/component: notification-controller 12169 - app.kubernetes.io/instance: flux-system 12170 - app.kubernetes.io/part-of: flux 12171 - app.kubernetes.io/version: v2.7.5 12172 - name: providers.notification.toolkit.fluxcd.io 12173 -spec: 12174 - group: notification.toolkit.fluxcd.io 12175 - names: 12176 - kind: Provider 12177 - listKind: ProviderList 12178 - plural: providers 12179 - singular: provider 12180 - scope: Namespaced 12181 - versions: 12182 - - additionalPrinterColumns: 12183 - - jsonPath: .metadata.creationTimestamp 12184 - name: Age 12185 - type: date 12186 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 12187 - name: Ready 12188 - type: string 12189 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 12190 - name: Status 12191 - type: string 12192 - deprecated: true 12193 - deprecationWarning: v1beta2 Provider is deprecated, upgrade to v1beta3 12194 - name: v1beta2 12195 - schema: 12196 - openAPIV3Schema: 12197 - description: Provider is the Schema for the providers API. 12198 - properties: 12199 - apiVersion: 12200 - description: |- 12201 - APIVersion defines the versioned schema of this representation of an object. 12202 - Servers should convert recognized schemas to the latest internal value, and 12203 - may reject unrecognized values. 12204 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 12205 - type: string 12206 - kind: 12207 - description: |- 12208 - Kind is a string value representing the REST resource this object represents. 12209 - Servers may infer this from the endpoint the client submits requests to. 12210 - Cannot be updated. 12211 - In CamelCase. 12212 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 12213 - type: string 12214 - metadata: 12215 - type: object 12216 - spec: 12217 - description: ProviderSpec defines the desired state of the Provider. 12218 - properties: 12219 - address: 12220 - description: |- 12221 - Address specifies the endpoint, in a generic sense, to where alerts are sent. 12222 - What kind of endpoint depends on the specific Provider type being used. 12223 - For the generic Provider, for example, this is an HTTP/S address. 12224 - For other Provider types this could be a project ID or a namespace. 12225 - maxLength: 2048 12226 - type: string 12227 - certSecretRef: 12228 - description: |- 12229 - CertSecretRef specifies the Secret containing 12230 - a PEM-encoded CA certificate (in the `ca.crt` key). 12231 - 12232 - Note: Support for the `caFile` key has 12233 - been deprecated. 12234 + description: Labels to be added to the object's metadata. 12235 + type: object 12236 + type: object 12237 + dependsOn: 12238 + description: |- 12239 + DependsOn may contain a DependencyReference slice with 12240 + references to HelmRelease resources that must be ready before this HelmRelease 12241 + can be reconciled. 12242 + items: 12243 + description: DependencyReference defines a HelmRelease dependency 12244 + on another HelmRelease resource. 12245 properties: 12246 name: 12247 description: Name of the referent. 12248 type: string 12249 + namespace: 12250 + description: |- 12251 + Namespace of the referent, defaults to the namespace of the HelmRelease 12252 + resource object that contains the reference. 12253 + type: string 12254 + readyExpr: 12255 + description: |- 12256 + ReadyExpr is a CEL expression that can be used to assess the readiness 12257 + of a dependency. When specified, the built-in readiness check 12258 + is replaced by the logic defined in the CEL expression. 12259 + To make the CEL expression additive to the built-in readiness check, 12260 + the feature gate `AdditiveCELDependencyCheck` must be set to `true`. 12261 + type: string 12262 required: 12263 - - name 12264 + - name 12265 type: object 12266 - channel: 12267 - description: Channel specifies the destination channel where events should be posted. 12268 - maxLength: 2048 12269 - type: string 12270 - interval: 12271 - description: Interval at which to reconcile the Provider with its Secret references. 12272 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 12273 - type: string 12274 - proxy: 12275 - description: Proxy the HTTP/S address of the proxy server. 12276 - maxLength: 2048 12277 - pattern: ^(http|https)://.*$ 12278 - type: string 12279 - secretRef: 12280 - description: |- 12281 - SecretRef specifies the Secret containing the authentication 12282 - credentials for this Provider. 12283 + type: array 12284 + driftDetection: 12285 + description: |- 12286 + DriftDetection holds the configuration for detecting and handling 12287 + differences between the manifest in the Helm storage and the resources 12288 + currently existing in the cluster. 12289 + properties: 12290 + ignore: 12291 + description: |- 12292 + Ignore contains a list of rules for specifying which changes to ignore 12293 + during diffing. 12294 + items: 12295 + description: |- 12296 + IgnoreRule defines a rule to selectively disregard specific changes during 12297 + the drift detection process. 12298 + properties: 12299 + paths: 12300 + description: |- 12301 + Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from 12302 + consideration in a Kubernetes object. 12303 + items: 12304 + type: string 12305 + type: array 12306 + target: 12307 + description: |- 12308 + Target is a selector for specifying Kubernetes objects to which this 12309 + rule applies. 12310 + If Target is not set, the Paths will be ignored for all Kubernetes 12311 + objects within the manifest of the Helm release. 12312 + properties: 12313 + annotationSelector: 12314 + description: |- 12315 + AnnotationSelector is a string that follows the label selection expression 12316 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 12317 + It matches with the resource annotations. 12318 + type: string 12319 + group: 12320 + description: |- 12321 + Group is the API group to select resources from. 12322 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 12323 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 12324 + type: string 12325 + kind: 12326 + description: |- 12327 + Kind of the API Group to select resources from. 12328 + Together with Group and Version it is capable of unambiguously 12329 + identifying and/or selecting resources. 12330 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 12331 + type: string 12332 + labelSelector: 12333 + description: |- 12334 + LabelSelector is a string that follows the label selection expression 12335 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 12336 + It matches with the resource labels. 12337 + type: string 12338 + name: 12339 + description: Name to match resources with. 12340 + type: string 12341 + namespace: 12342 + description: Namespace to select resources from. 12343 + type: string 12344 + version: 12345 + description: |- 12346 + Version of the API Group to select resources from. 12347 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 12348 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 12349 + type: string 12350 + type: object 12351 + required: 12352 + - paths 12353 + type: object 12354 + type: array 12355 + mode: 12356 + description: |- 12357 + Mode defines how differences should be handled between the Helm manifest 12358 + and the manifest currently applied to the cluster. 12359 + If not explicitly set, it defaults to DiffModeDisabled. 12360 + enum: 12361 + - enabled 12362 + - warn 12363 + - disabled 12364 + type: string 12365 + type: object 12366 + healthCheckExprs: 12367 + description: |- 12368 + HealthCheckExprs is a list of healthcheck expressions for evaluating the 12369 + health of custom resources using Common Expression Language (CEL). 12370 + The expressions are evaluated only when the specific Helm action 12371 + taking place has wait enabled, i.e. DisableWait is false, and the 12372 + 'poller' WaitStrategy is used. 12373 + items: 12374 + description: CustomHealthCheck defines the health check for custom 12375 + resources. 12376 properties: 12377 - name: 12378 - description: Name of the referent. 12379 + apiVersion: 12380 + description: APIVersion of the custom resource under evaluation. 12381 + type: string 12382 + current: 12383 + description: |- 12384 + Current is the CEL expression that determines if the status 12385 + of the custom resource has reached the desired state. 12386 + type: string 12387 + failed: 12388 + description: |- 12389 + Failed is the CEL expression that determines if the status 12390 + of the custom resource has failed to reach the desired state. 12391 + type: string 12392 + inProgress: 12393 + description: |- 12394 + InProgress is the CEL expression that determines if the status 12395 + of the custom resource has not yet reached the desired state. 12396 + type: string 12397 + kind: 12398 + description: Kind of the custom resource under evaluation. 12399 type: string 12400 required: 12401 - - name 12402 + - apiVersion 12403 + - current 12404 + - kind 12405 type: object 12406 - suspend: 12407 - description: |- 12408 - Suspend tells the controller to suspend subsequent 12409 - events handling for this Provider. 12410 - type: boolean 12411 - timeout: 12412 - description: Timeout for sending alerts to the Provider. 12413 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 12414 - type: string 12415 - type: 12416 - description: Type specifies which Provider implementation to use. 12417 - enum: 12418 - - slack 12419 - - discord 12420 - - msteams 12421 - - rocket 12422 - - generic 12423 - - generic-hmac 12424 - - github 12425 - - gitlab 12426 - - gitea 12427 - - bitbucketserver 12428 - - bitbucket 12429 - - azuredevops 12430 - - googlechat 12431 - - googlepubsub 12432 - - webex 12433 - - sentry 12434 - - azureeventhub 12435 - - telegram 12436 - - lark 12437 - - matrix 12438 - - opsgenie 12439 - - alertmanager 12440 - - grafana 12441 - - githubdispatch 12442 - - pagerduty 12443 - - datadog 12444 - type: string 12445 - username: 12446 - description: Username specifies the name under which events are posted. 12447 - maxLength: 2048 12448 - type: string 12449 - required: 12450 - - type 12451 - type: object 12452 - status: 12453 - default: 12454 - observedGeneration: -1 12455 - description: ProviderStatus defines the observed state of the Provider. 12456 - properties: 12457 - conditions: 12458 - description: Conditions holds the conditions for the Provider. 12459 - items: 12460 - description: Condition contains details for one aspect of the current state of this API Resource. 12461 + type: array 12462 + install: 12463 + description: Install holds the configuration for Helm install actions 12464 + for this HelmRelease. 12465 + properties: 12466 + crds: 12467 + description: |- 12468 + CRDs upgrade CRDs from the Helm Chart's crds directory according 12469 + to the CRD upgrade policy provided here. Valid values are `Skip`, 12470 + `Create` or `CreateReplace`. Default is `Create` and if omitted 12471 + CRDs are installed but not updated. 12472 + 12473 + Skip: do neither install nor replace (update) any CRDs. 12474 + 12475 + Create: new CRDs are created, existing CRDs are neither updated nor deleted. 12476 + 12477 + CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 12478 + but not deleted. 12479 + 12480 + By default, CRDs are applied (installed) during Helm install action. 12481 + With this option users can opt in to CRD replace existing CRDs on Helm 12482 + install actions, which is not (yet) natively supported by Helm. 12483 + https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 12484 + enum: 12485 + - Skip 12486 + - Create 12487 + - CreateReplace 12488 + type: string 12489 + createNamespace: 12490 + description: |- 12491 + CreateNamespace tells the Helm install action to create the 12492 + HelmReleaseSpec.TargetNamespace if it does not exist yet. 12493 + On uninstall, the namespace will not be garbage collected. 12494 + type: boolean 12495 + disableHooks: 12496 + description: DisableHooks prevents hooks from running during the 12497 + Helm install action. 12498 + type: boolean 12499 + disableOpenAPIValidation: 12500 + description: |- 12501 + DisableOpenAPIValidation prevents the Helm install action from validating 12502 + rendered templates against the Kubernetes OpenAPI Schema. 12503 + type: boolean 12504 + disableSchemaValidation: 12505 + description: |- 12506 + DisableSchemaValidation prevents the Helm install action from validating 12507 + the values against the JSON Schema. 12508 + type: boolean 12509 + disableTakeOwnership: 12510 + description: |- 12511 + DisableTakeOwnership disables taking ownership of existing resources 12512 + during the Helm install action. Defaults to false. 12513 + type: boolean 12514 + disableWait: 12515 + description: |- 12516 + DisableWait disables the waiting for resources to be ready after a Helm 12517 + install has been performed. 12518 + type: boolean 12519 + disableWaitForJobs: 12520 + description: |- 12521 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 12522 + install has been performed. 12523 + type: boolean 12524 + remediation: 12525 + description: |- 12526 + Remediation holds the remediation configuration for when the Helm install 12527 + action for the HelmRelease fails. The default is to not perform any action. 12528 properties: 12529 - lastTransitionTime: 12530 + ignoreTestFailures: 12531 description: |- 12532 - lastTransitionTime is the last time the condition transitioned from one status to another. 12533 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 12534 - format: date-time 12535 - type: string 12536 - message: 12537 + IgnoreTestFailures tells the controller to skip remediation when the Helm 12538 + tests are run after an install action but fail. Defaults to 12539 + 'Test.IgnoreFailures'. 12540 + type: boolean 12541 + remediateLastFailure: 12542 description: |- 12543 - message is a human readable message indicating details about the transition. 12544 - This may be an empty string. 12545 - maxLength: 32768 12546 - type: string 12547 - observedGeneration: 12548 + RemediateLastFailure tells the controller to remediate the last failure, when 12549 + no retries remain. Defaults to 'false'. 12550 + type: boolean 12551 + retries: 12552 description: |- 12553 - observedGeneration represents the .metadata.generation that the condition was set based upon. 12554 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 12555 - with respect to the current state of the instance. 12556 - format: int64 12557 - minimum: 0 12558 + Retries is the number of retries that should be attempted on failures before 12559 + bailing. Remediation, using an uninstall, is performed between each attempt. 12560 + Defaults to '0', a negative integer equals to unlimited retries. 12561 type: integer 12562 - reason: 12563 - description: |- 12564 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 12565 - Producers of specific condition types may define expected values and meanings for this field, 12566 - and whether the values are considered a guaranteed API. 12567 - The value should be a CamelCase string. 12568 - This field may not be empty. 12569 - maxLength: 1024 12570 - minLength: 1 12571 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 12572 - type: string 12573 - status: 12574 - description: status of the condition, one of True, False, Unknown. 12575 + type: object 12576 + replace: 12577 + description: |- 12578 + Replace tells the Helm install action to re-use the 'ReleaseName', but only 12579 + if that name is a deleted release which remains in the history. 12580 + type: boolean 12581 + serverSideApply: 12582 + description: |- 12583 + ServerSideApply enables server-side apply for resources during install. 12584 + Defaults to true (or false when UseHelm3Defaults feature gate is enabled). 12585 + type: boolean 12586 + skipCRDs: 12587 + description: |- 12588 + SkipCRDs tells the Helm install action to not install any CRDs. By default, 12589 + CRDs are installed if not already present. 12590 + 12591 + Deprecated use CRD policy (`crds`) attribute with value `Skip` instead. 12592 + type: boolean 12593 + strategy: 12594 + description: |- 12595 + Strategy defines the install strategy to use for this HelmRelease. 12596 + Defaults to 'RemediateOnFailure'. 12597 + properties: 12598 + name: 12599 + description: Name of the install strategy. 12600 enum: 12601 - - "True" 12602 - - "False" 12603 - - Unknown 12604 + - RemediateOnFailure 12605 + - RetryOnFailure 12606 type: string 12607 - type: 12608 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 12609 - maxLength: 316 12610 - 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])$ 12611 + retryInterval: 12612 + description: |- 12613 + RetryInterval is the interval at which to retry a failed install. 12614 + Can be used only when Name is set to RetryOnFailure. 12615 + Defaults to '5m'. 12616 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 12617 type: string 12618 required: 12619 - - lastTransitionTime 12620 - - message 12621 - - reason 12622 - - status 12623 - - type 12624 + - name 12625 type: object 12626 - type: array 12627 - lastHandledReconcileAt: 12628 - description: |- 12629 - LastHandledReconcileAt holds the value of the most recent 12630 - reconcile request value, so a change of the annotation value 12631 - can be detected. 12632 - type: string 12633 - observedGeneration: 12634 - description: ObservedGeneration is the last reconciled generation. 12635 - format: int64 12636 - type: integer 12637 - type: object 12638 - type: object 12639 - served: true 12640 - storage: false 12641 - subresources: 12642 - status: {} 12643 - - additionalPrinterColumns: 12644 - - jsonPath: .metadata.creationTimestamp 12645 - name: Age 12646 - type: date 12647 - name: v1beta3 12648 - schema: 12649 - openAPIV3Schema: 12650 - description: Provider is the Schema for the providers API 12651 - properties: 12652 - apiVersion: 12653 - description: |- 12654 - APIVersion defines the versioned schema of this representation of an object. 12655 - Servers should convert recognized schemas to the latest internal value, and 12656 - may reject unrecognized values. 12657 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 12658 - type: string 12659 - kind: 12660 - description: |- 12661 - Kind is a string value representing the REST resource this object represents. 12662 - Servers may infer this from the endpoint the client submits requests to. 12663 - Cannot be updated. 12664 - In CamelCase. 12665 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 12666 - type: string 12667 - metadata: 12668 - type: object 12669 - spec: 12670 - description: ProviderSpec defines the desired state of the Provider. 12671 - properties: 12672 - address: 12673 - description: |- 12674 - Address specifies the endpoint, in a generic sense, to where alerts are sent. 12675 - What kind of endpoint depends on the specific Provider type being used. 12676 - For the generic Provider, for example, this is an HTTP/S address. 12677 - For other Provider types this could be a project ID or a namespace. 12678 - maxLength: 2048 12679 - type: string 12680 - certSecretRef: 12681 - description: |- 12682 - CertSecretRef specifies the Secret containing TLS certificates 12683 - for secure communication. 12684 + x-kubernetes-validations: 12685 + - message: .retryInterval cannot be set when .name is 'RemediateOnFailure' 12686 + rule: '!has(self.retryInterval) || self.name != ''RemediateOnFailure''' 12687 + timeout: 12688 + description: |- 12689 + Timeout is the time to wait for any individual Kubernetes operation (like 12690 + Jobs for hooks) during the performance of a Helm install action. Defaults to 12691 + 'HelmReleaseSpec.Timeout'. 12692 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 12693 + type: string 12694 + type: object 12695 + interval: 12696 + description: Interval at which to reconcile the Helm release. 12697 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 12698 + type: string 12699 + kubeConfig: 12700 + description: |- 12701 + KubeConfig for reconciling the HelmRelease on a remote cluster. 12702 + When used in combination with HelmReleaseSpec.ServiceAccountName, 12703 + forces the controller to act on behalf of that Service Account at the 12704 + target cluster. 12705 + If the --default-service-account flag is set, its value will be used as 12706 + a controller level fallback for when HelmReleaseSpec.ServiceAccountName 12707 + is empty. 12708 + properties: 12709 + configMapRef: 12710 + description: |- 12711 + ConfigMapRef holds an optional name of a ConfigMap that contains 12712 + the following keys: 12713 12714 - Supported configurations: 12715 - - CA-only: Server authentication (provide ca.crt only) 12716 - - mTLS: Mutual authentication (provide ca.crt + tls.crt + tls.key) 12717 - - Client-only: Client authentication with system CA (provide tls.crt + tls.key only) 12718 + - `provider`: the provider to use. One of `aws`, `azure`, `gcp`, or 12719 + `generic`. Required. 12720 + - `cluster`: the fully qualified resource name of the Kubernetes 12721 + cluster in the cloud provider API. Not used by the `generic` 12722 + provider. Required when one of `address` or `ca.crt` is not set. 12723 + - `address`: the address of the Kubernetes API server. Required 12724 + for `generic`. For the other providers, if not specified, the 12725 + first address in the cluster resource will be used, and if 12726 + specified, it must match one of the addresses in the cluster 12727 + resource. 12728 + If audiences is not set, will be used as the audience for the 12729 + `generic` provider. 12730 + - `ca.crt`: the optional PEM-encoded CA certificate for the 12731 + Kubernetes API server. If not set, the controller will use the 12732 + CA certificate from the cluster resource. 12733 + - `audiences`: the optional audiences as a list of 12734 + line-break-separated strings for the Kubernetes ServiceAccount 12735 + token. Defaults to the `address` for the `generic` provider, or 12736 + to specific values for the other providers depending on the 12737 + provider. 12738 + - `serviceAccountName`: the optional name of the Kubernetes 12739 + ServiceAccount in the same namespace that should be used 12740 + for authentication. If not specified, the controller 12741 + ServiceAccount will be used. 12742 12743 - Legacy keys "caFile", "certFile", "keyFile" are supported but deprecated. Use "ca.crt", "tls.crt", "tls.key" instead. 12744 - properties: 12745 - name: 12746 - description: Name of the referent. 12747 - type: string 12748 - required: 12749 - - name 12750 - type: object 12751 - channel: 12752 - description: Channel specifies the destination channel where events should be posted. 12753 - maxLength: 2048 12754 - type: string 12755 - commitStatusExpr: 12756 - description: |- 12757 - CommitStatusExpr is a CEL expression that evaluates to a string value 12758 - that can be used to generate a custom commit status message for use 12759 - with eligible Provider types (github, gitlab, gitea, bitbucketserver, 12760 - bitbucket, azuredevops). Supported variables are: event, provider, 12761 - and alert. 12762 - type: string 12763 - interval: 12764 - description: |- 12765 - Interval at which to reconcile the Provider with its Secret references. 12766 - Deprecated and not used in v1beta3. 12767 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 12768 - type: string 12769 - proxy: 12770 - description: |- 12771 - Proxy the HTTP/S address of the proxy server. 12772 - Deprecated: Use ProxySecretRef instead. Will be removed in v1. 12773 - maxLength: 2048 12774 - pattern: ^(http|https)://.*$ 12775 - type: string 12776 - proxySecretRef: 12777 - description: |- 12778 - ProxySecretRef specifies the Secret containing the proxy configuration 12779 - for this Provider. The Secret should contain an 'address' key with the 12780 - HTTP/S address of the proxy server. Optional 'username' and 'password' 12781 - keys can be provided for proxy authentication. 12782 - properties: 12783 - name: 12784 - description: Name of the referent. 12785 - type: string 12786 - required: 12787 + Mutually exclusive with SecretRef. 12788 + properties: 12789 + name: 12790 + description: Name of the referent. 12791 + type: string 12792 + required: 12793 - name 12794 - type: object 12795 - secretRef: 12796 - description: |- 12797 - SecretRef specifies the Secret containing the authentication 12798 - credentials for this Provider. 12799 - properties: 12800 - name: 12801 - description: Name of the referent. 12802 - type: string 12803 - required: 12804 + type: object 12805 + secretRef: 12806 + description: |- 12807 + SecretRef holds an optional name of a secret that contains a key with 12808 + the kubeconfig file as the value. If no key is set, the key will default 12809 + to 'value'. Mutually exclusive with ConfigMapRef. 12810 + It is recommended that the kubeconfig is self-contained, and the secret 12811 + is regularly updated if credentials such as a cloud-access-token expire. 12812 + Cloud specific `cmd-path` auth helpers will not function without adding 12813 + binaries and credentials to the Pod that is responsible for reconciling 12814 + Kubernetes resources. Supported only for the generic provider. 12815 + properties: 12816 + key: 12817 + description: Key in the Secret, when not specified an implementation-specific 12818 + default key is used. 12819 + type: string 12820 + name: 12821 + description: Name of the Secret. 12822 + type: string 12823 + required: 12824 - name 12825 - type: object 12826 - serviceAccountName: 12827 - description: |- 12828 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to 12829 - authenticate with cloud provider services through workload identity. 12830 - This enables multi-tenant authentication without storing static credentials. 12831 - 12832 - Supported provider types: azureeventhub, azuredevops, googlepubsub 12833 + type: object 12834 + type: object 12835 + x-kubernetes-validations: 12836 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 12837 + must be specified 12838 + rule: has(self.configMapRef) || has(self.secretRef) 12839 + - message: exactly one of spec.kubeConfig.configMapRef or spec.kubeConfig.secretRef 12840 + must be specified 12841 + rule: '!has(self.configMapRef) || !has(self.secretRef)' 12842 + maxHistory: 12843 + description: |- 12844 + MaxHistory is the number of revisions saved by Helm for this HelmRelease. 12845 + Use '0' for an unlimited number of revisions; defaults to '5'. 12846 + type: integer 12847 + persistentClient: 12848 + description: |- 12849 + PersistentClient tells the controller to use a persistent Kubernetes 12850 + client for this release. When enabled, the client will be reused for the 12851 + duration of the reconciliation, instead of being created and destroyed 12852 + for each (step of a) Helm action. 12853 12854 - When specified, the controller will: 12855 - 1. Create an OIDC token for the specified ServiceAccount 12856 - 2. Exchange it for cloud provider credentials via STS 12857 - 3. Use the obtained credentials for API authentication 12858 + This can improve performance, but may cause issues with some Helm charts 12859 + that for example do create Custom Resource Definitions during installation 12860 + outside Helm's CRD lifecycle hooks, which are then not observed to be 12861 + available by e.g. post-install hooks. 12862 12863 - When unspecified, controller-level authentication is used (single-tenant). 12864 + If not set, it defaults to true. 12865 + type: boolean 12866 + postRenderers: 12867 + description: |- 12868 + PostRenderers holds an array of Helm PostRenderers, which will be applied in order 12869 + of their definition. 12870 + items: 12871 + description: PostRenderer contains a Helm PostRenderer specification. 12872 + properties: 12873 + kustomize: 12874 + description: Kustomization to apply as PostRenderer. 12875 + properties: 12876 + images: 12877 + description: |- 12878 + Images is a list of (image name, new name, new tag or digest) 12879 + for changing image names, tags or digests. This can also be achieved with a 12880 + patch, but this operator is simpler to specify. 12881 + items: 12882 + description: Image contains an image name, a new name, 12883 + a new tag or digest, which will replace the original 12884 + name and tag. 12885 + properties: 12886 + digest: 12887 + description: |- 12888 + Digest is the value used to replace the original image tag. 12889 + If digest is present NewTag value is ignored. 12890 + type: string 12891 + name: 12892 + description: Name is a tag-less image name. 12893 + type: string 12894 + newName: 12895 + description: NewName is the value used to replace 12896 + the original name. 12897 + type: string 12898 + newTag: 12899 + description: NewTag is the value used to replace the 12900 + original tag. 12901 + type: string 12902 + required: 12903 + - name 12904 + type: object 12905 + type: array 12906 + patches: 12907 + description: |- 12908 + Strategic merge and JSON patches, defined as inline YAML objects, 12909 + capable of targeting objects based on kind, label and annotation selectors. 12910 + items: 12911 + description: |- 12912 + Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should 12913 + be applied to. 12914 + properties: 12915 + patch: 12916 + description: |- 12917 + Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with 12918 + an array of operation objects. 12919 + type: string 12920 + target: 12921 + description: Target points to the resources that the 12922 + patch document should be applied to. 12923 + properties: 12924 + annotationSelector: 12925 + description: |- 12926 + AnnotationSelector is a string that follows the label selection expression 12927 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 12928 + It matches with the resource annotations. 12929 + type: string 12930 + group: 12931 + description: |- 12932 + Group is the API group to select resources from. 12933 + Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. 12934 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 12935 + type: string 12936 + kind: 12937 + description: |- 12938 + Kind of the API Group to select resources from. 12939 + Together with Group and Version it is capable of unambiguously 12940 + identifying and/or selecting resources. 12941 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 12942 + type: string 12943 + labelSelector: 12944 + description: |- 12945 + LabelSelector is a string that follows the label selection expression 12946 + https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api 12947 + It matches with the resource labels. 12948 + type: string 12949 + name: 12950 + description: Name to match resources with. 12951 + type: string 12952 + namespace: 12953 + description: Namespace to select resources from. 12954 + type: string 12955 + version: 12956 + description: |- 12957 + Version of the API Group to select resources from. 12958 + Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. 12959 + https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md 12960 + type: string 12961 + type: object 12962 + required: 12963 + - patch 12964 + type: object 12965 + type: array 12966 + type: object 12967 + type: object 12968 + type: array 12969 + releaseName: 12970 + description: |- 12971 + ReleaseName used for the Helm release. Defaults to a composition of 12972 + '[TargetNamespace-]Name'. 12973 + maxLength: 53 12974 + minLength: 1 12975 + type: string 12976 + rollback: 12977 + description: Rollback holds the configuration for Helm rollback actions 12978 + for this HelmRelease. 12979 + properties: 12980 + cleanupOnFail: 12981 + description: |- 12982 + CleanupOnFail allows deletion of new resources created during the Helm 12983 + rollback action when it fails. 12984 + type: boolean 12985 + disableHooks: 12986 + description: DisableHooks prevents hooks from running during the 12987 + Helm rollback action. 12988 + type: boolean 12989 + disableWait: 12990 + description: |- 12991 + DisableWait disables the waiting for resources to be ready after a Helm 12992 + rollback has been performed. 12993 + type: boolean 12994 + disableWaitForJobs: 12995 + description: |- 12996 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 12997 + rollback has been performed. 12998 + type: boolean 12999 + force: 13000 + description: Force forces resource updates through a replacement 13001 + strategy. 13002 + type: boolean 13003 + recreate: 13004 + description: |- 13005 + Recreate performs pod restarts for any managed workloads. 13006 13007 - An error is thrown if static credentials are also defined in SecretRef. 13008 - This field requires the ObjectLevelWorkloadIdentity feature gate to be enabled. 13009 - type: string 13010 - suspend: 13011 - description: |- 13012 - Suspend tells the controller to suspend subsequent 13013 - events handling for this Provider. 13014 - type: boolean 13015 - timeout: 13016 - description: Timeout for sending alerts to the Provider. 13017 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 13018 - type: string 13019 - type: 13020 - description: Type specifies which Provider implementation to use. 13021 - enum: 13022 - - slack 13023 - - discord 13024 - - msteams 13025 - - rocket 13026 - - generic 13027 - - generic-hmac 13028 - - github 13029 - - gitlab 13030 - - gitea 13031 - - bitbucketserver 13032 - - bitbucket 13033 - - azuredevops 13034 - - googlechat 13035 - - googlepubsub 13036 - - webex 13037 - - sentry 13038 - - azureeventhub 13039 - - telegram 13040 - - lark 13041 - - matrix 13042 - - opsgenie 13043 - - alertmanager 13044 - - grafana 13045 - - githubdispatch 13046 - - pagerduty 13047 - - datadog 13048 - - nats 13049 - - zulip 13050 - - otel 13051 - type: string 13052 - username: 13053 - description: Username specifies the name under which events are posted. 13054 - maxLength: 2048 13055 - type: string 13056 - required: 13057 - - type 13058 - type: object 13059 - x-kubernetes-validations: 13060 - - message: spec.commitStatusExpr is only supported for the 'github', 'gitlab', 'gitea', 'bitbucketserver', 'bitbucket', 'azuredevops' provider types 13061 - rule: self.type == 'github' || self.type == 'gitlab' || self.type == 'gitea' || self.type == 'bitbucketserver' || self.type == 'bitbucket' || self.type == 'azuredevops' || !has(self.commitStatusExpr) 13062 - type: object 13063 - served: true 13064 - storage: true 13065 - subresources: {} 13066 ---- 13067 -apiVersion: apiextensions.k8s.io/v1 13068 -kind: CustomResourceDefinition 13069 -metadata: 13070 - annotations: 13071 - controller-gen.kubebuilder.io/version: v0.19.0 13072 - labels: 13073 - app.kubernetes.io/component: notification-controller 13074 - app.kubernetes.io/instance: flux-system 13075 - app.kubernetes.io/part-of: flux 13076 - app.kubernetes.io/version: v2.7.5 13077 - name: receivers.notification.toolkit.fluxcd.io 13078 -spec: 13079 - group: notification.toolkit.fluxcd.io 13080 - names: 13081 - kind: Receiver 13082 - listKind: ReceiverList 13083 - plural: receivers 13084 - singular: receiver 13085 - scope: Namespaced 13086 - versions: 13087 - - additionalPrinterColumns: 13088 - - jsonPath: .metadata.creationTimestamp 13089 - name: Age 13090 - type: date 13091 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 13092 - name: Ready 13093 - type: string 13094 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 13095 - name: Status 13096 - type: string 13097 - name: v1 13098 - schema: 13099 - openAPIV3Schema: 13100 - description: Receiver is the Schema for the receivers API. 13101 - properties: 13102 - apiVersion: 13103 - description: |- 13104 - APIVersion defines the versioned schema of this representation of an object. 13105 - Servers should convert recognized schemas to the latest internal value, and 13106 - may reject unrecognized values. 13107 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 13108 - type: string 13109 - kind: 13110 - description: |- 13111 - Kind is a string value representing the REST resource this object represents. 13112 - Servers may infer this from the endpoint the client submits requests to. 13113 - Cannot be updated. 13114 - In CamelCase. 13115 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 13116 - type: string 13117 - metadata: 13118 - type: object 13119 - spec: 13120 - description: ReceiverSpec defines the desired state of the Receiver. 13121 - properties: 13122 - events: 13123 - description: |- 13124 - Events specifies the list of event types to handle, 13125 - e.g. 'push' for GitHub or 'Push Hook' for GitLab. 13126 - items: 13127 - type: string 13128 - type: array 13129 - interval: 13130 - default: 10m 13131 - description: Interval at which to reconcile the Receiver with its Secret references. 13132 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13133 - type: string 13134 - resourceFilter: 13135 - description: |- 13136 - ResourceFilter is a CEL expression expected to return a boolean that is 13137 - evaluated for each resource referenced in the Resources field when a 13138 - webhook is received. If the expression returns false then the controller 13139 - will not request a reconciliation for the resource. 13140 - When the expression is specified the controller will parse it and mark 13141 - the object as terminally failed if the expression is invalid or does not 13142 - return a boolean. 13143 - type: string 13144 - resources: 13145 - description: A list of resources to be notified about changes. 13146 - items: 13147 + Deprecated: This behavior was deprecated in Helm 3: 13148 + - Deprecation: https://github.com/helm/helm/pull/6463 13149 + - Removal: https://github.com/helm/helm/pull/31023 13150 + After helm-controller was upgraded to the Helm 4 SDK, 13151 + this field is no longer functional and will print a 13152 + warning if set to true. It will also be removed in a 13153 + future release. 13154 + type: boolean 13155 + serverSideApply: 13156 + description: |- 13157 + ServerSideApply enables server-side apply for resources during rollback. 13158 + Can be "enabled", "disabled", or "auto". 13159 + When "auto", server-side apply usage will be based on the release's previous usage. 13160 + Defaults to "auto". 13161 + enum: 13162 + - enabled 13163 + - disabled 13164 + - auto 13165 + type: string 13166 + timeout: 13167 + description: |- 13168 + Timeout is the time to wait for any individual Kubernetes operation (like 13169 + Jobs for hooks) during the performance of a Helm rollback action. Defaults to 13170 + 'HelmReleaseSpec.Timeout'. 13171 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13172 + type: string 13173 + type: object 13174 + serviceAccountName: 13175 + description: |- 13176 + The name of the Kubernetes service account to impersonate 13177 + when reconciling this HelmRelease. 13178 + maxLength: 253 13179 + minLength: 1 13180 + type: string 13181 + storageNamespace: 13182 + description: |- 13183 + StorageNamespace used for the Helm storage. 13184 + Defaults to the namespace of the HelmRelease. 13185 + maxLength: 63 13186 + minLength: 1 13187 + type: string 13188 + suspend: 13189 + description: |- 13190 + Suspend tells the controller to suspend reconciliation for this HelmRelease, 13191 + it does not apply to already started reconciliations. Defaults to false. 13192 + type: boolean 13193 + targetNamespace: 13194 + description: |- 13195 + TargetNamespace to target when performing operations for the HelmRelease. 13196 + Defaults to the namespace of the HelmRelease. 13197 + maxLength: 63 13198 + minLength: 1 13199 + type: string 13200 + test: 13201 + description: Test holds the configuration for Helm test actions for 13202 + this HelmRelease. 13203 + properties: 13204 + enable: 13205 description: |- 13206 - CrossNamespaceObjectReference contains enough information to let you locate the 13207 - typed referenced object at cluster level 13208 - properties: 13209 - apiVersion: 13210 - description: API version of the referent 13211 - type: string 13212 - kind: 13213 - description: Kind of the referent 13214 - enum: 13215 - - Bucket 13216 - - GitRepository 13217 - - Kustomization 13218 - - HelmRelease 13219 - - HelmChart 13220 - - HelmRepository 13221 - - ImageRepository 13222 - - ImagePolicy 13223 - - ImageUpdateAutomation 13224 - - OCIRepository 13225 - type: string 13226 - matchLabels: 13227 - additionalProperties: 13228 + Enable enables Helm test actions for this HelmRelease after an Helm install 13229 + or upgrade action has been performed. 13230 + type: boolean 13231 + filters: 13232 + description: Filters is a list of tests to run or exclude from 13233 + running. 13234 + items: 13235 + description: Filter holds the configuration for individual Helm 13236 + test filters. 13237 + properties: 13238 + exclude: 13239 + description: Exclude specifies whether the named test should 13240 + be excluded. 13241 + type: boolean 13242 + name: 13243 + description: Name is the name of the test. 13244 + maxLength: 253 13245 + minLength: 1 13246 type: string 13247 - description: |- 13248 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 13249 - map is equivalent to an element of matchExpressions, whose key field is "key", the 13250 - operator is "In", and the values array contains only "value". The requirements are ANDed. 13251 - MatchLabels requires the name to be set to `*`. 13252 - type: object 13253 - name: 13254 - description: |- 13255 - Name of the referent 13256 - If multiple resources are targeted `*` may be set. 13257 - maxLength: 253 13258 - minLength: 1 13259 - type: string 13260 - namespace: 13261 - description: Namespace of the referent 13262 - maxLength: 253 13263 - minLength: 1 13264 - type: string 13265 - required: 13266 - - kind 13267 + required: 13268 - name 13269 - type: object 13270 - type: array 13271 - secretRef: 13272 - description: |- 13273 - SecretRef specifies the Secret containing the token used 13274 - to validate the payload authenticity. 13275 - properties: 13276 - name: 13277 - description: Name of the referent. 13278 - type: string 13279 - required: 13280 - - name 13281 - type: object 13282 - suspend: 13283 - description: |- 13284 - Suspend tells the controller to suspend subsequent 13285 - events handling for this receiver. 13286 - type: boolean 13287 - type: 13288 - description: |- 13289 - Type of webhook sender, used to determine 13290 - the validation procedure and payload deserialization. 13291 - enum: 13292 - - generic 13293 - - generic-hmac 13294 - - github 13295 - - gitlab 13296 - - bitbucket 13297 - - harbor 13298 - - dockerhub 13299 - - quay 13300 - - gcr 13301 - - nexus 13302 - - acr 13303 - - cdevents 13304 - type: string 13305 - required: 13306 - - resources 13307 - - secretRef 13308 - - type 13309 - type: object 13310 - status: 13311 - default: 13312 - observedGeneration: -1 13313 - description: ReceiverStatus defines the observed state of the Receiver. 13314 - properties: 13315 - conditions: 13316 - description: Conditions holds the conditions for the Receiver. 13317 - items: 13318 - description: Condition contains details for one aspect of the current state of this API Resource. 13319 + type: object 13320 + type: array 13321 + ignoreFailures: 13322 + description: |- 13323 + IgnoreFailures tells the controller to skip remediation when the Helm tests 13324 + are run but fail. Can be overwritten for tests run after install or upgrade 13325 + actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. 13326 + type: boolean 13327 + timeout: 13328 + description: |- 13329 + Timeout is the time to wait for any individual Kubernetes operation during 13330 + the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. 13331 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13332 + type: string 13333 + type: object 13334 + timeout: 13335 + description: |- 13336 + Timeout is the time to wait for any individual Kubernetes operation (like Jobs 13337 + for hooks) during the performance of a Helm action. Defaults to '5m0s'. 13338 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13339 + type: string 13340 + uninstall: 13341 + description: Uninstall holds the configuration for Helm uninstall 13342 + actions for this HelmRelease. 13343 + properties: 13344 + deletionPropagation: 13345 + default: background 13346 + description: |- 13347 + DeletionPropagation specifies the deletion propagation policy when 13348 + a Helm uninstall is performed. 13349 + enum: 13350 + - background 13351 + - foreground 13352 + - orphan 13353 + type: string 13354 + disableHooks: 13355 + description: DisableHooks prevents hooks from running during the 13356 + Helm rollback action. 13357 + type: boolean 13358 + disableWait: 13359 + description: |- 13360 + DisableWait disables waiting for all the resources to be deleted after 13361 + a Helm uninstall is performed. 13362 + type: boolean 13363 + keepHistory: 13364 + description: |- 13365 + KeepHistory tells Helm to remove all associated resources and mark the 13366 + release as deleted, but retain the release history. 13367 + type: boolean 13368 + timeout: 13369 + description: |- 13370 + Timeout is the time to wait for any individual Kubernetes operation (like 13371 + Jobs for hooks) during the performance of a Helm uninstall action. Defaults 13372 + to 'HelmReleaseSpec.Timeout'. 13373 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13374 + type: string 13375 + type: object 13376 + upgrade: 13377 + description: Upgrade holds the configuration for Helm upgrade actions 13378 + for this HelmRelease. 13379 + properties: 13380 + cleanupOnFail: 13381 + description: |- 13382 + CleanupOnFail allows deletion of new resources created during the Helm 13383 + upgrade action when it fails. 13384 + type: boolean 13385 + crds: 13386 + description: |- 13387 + CRDs upgrade CRDs from the Helm Chart's crds directory according 13388 + to the CRD upgrade policy provided here. Valid values are `Skip`, 13389 + `Create` or `CreateReplace`. Default is `Skip` and if omitted 13390 + CRDs are neither installed nor upgraded. 13391 + 13392 + Skip: do neither install nor replace (update) any CRDs. 13393 + 13394 + Create: new CRDs are created, existing CRDs are neither updated nor deleted. 13395 + 13396 + CreateReplace: new CRDs are created, existing CRDs are updated (replaced) 13397 + but not deleted. 13398 + 13399 + By default, CRDs are not applied during Helm upgrade action. With this 13400 + option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. 13401 + https://helm.sh/docs/chart_best_practices/custom_resource_definitions. 13402 + enum: 13403 + - Skip 13404 + - Create 13405 + - CreateReplace 13406 + type: string 13407 + disableHooks: 13408 + description: DisableHooks prevents hooks from running during the 13409 + Helm upgrade action. 13410 + type: boolean 13411 + disableOpenAPIValidation: 13412 + description: |- 13413 + DisableOpenAPIValidation prevents the Helm upgrade action from validating 13414 + rendered templates against the Kubernetes OpenAPI Schema. 13415 + type: boolean 13416 + disableSchemaValidation: 13417 + description: |- 13418 + DisableSchemaValidation prevents the Helm upgrade action from validating 13419 + the values against the JSON Schema. 13420 + type: boolean 13421 + disableTakeOwnership: 13422 + description: |- 13423 + DisableTakeOwnership disables taking ownership of existing resources 13424 + during the Helm upgrade action. Defaults to false. 13425 + type: boolean 13426 + disableWait: 13427 + description: |- 13428 + DisableWait disables the waiting for resources to be ready after a Helm 13429 + upgrade has been performed. 13430 + type: boolean 13431 + disableWaitForJobs: 13432 + description: |- 13433 + DisableWaitForJobs disables waiting for jobs to complete after a Helm 13434 + upgrade has been performed. 13435 + type: boolean 13436 + force: 13437 + description: Force forces resource updates through a replacement 13438 + strategy. 13439 + type: boolean 13440 + preserveValues: 13441 + description: |- 13442 + PreserveValues will make Helm reuse the last release's values and merge in 13443 + overrides from 'Values'. Setting this flag makes the HelmRelease 13444 + non-declarative. 13445 + type: boolean 13446 + remediation: 13447 + description: |- 13448 + Remediation holds the remediation configuration for when the Helm upgrade 13449 + action for the HelmRelease fails. The default is to not perform any action. 13450 properties: 13451 - lastTransitionTime: 13452 + ignoreTestFailures: 13453 description: |- 13454 - lastTransitionTime is the last time the condition transitioned from one status to another. 13455 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 13456 - format: date-time 13457 - type: string 13458 - message: 13459 + IgnoreTestFailures tells the controller to skip remediation when the Helm 13460 + tests are run after an upgrade action but fail. 13461 + Defaults to 'Test.IgnoreFailures'. 13462 + type: boolean 13463 + remediateLastFailure: 13464 description: |- 13465 - message is a human readable message indicating details about the transition. 13466 - This may be an empty string. 13467 - maxLength: 32768 13468 - type: string 13469 - observedGeneration: 13470 + RemediateLastFailure tells the controller to remediate the last failure, when 13471 + no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. 13472 + type: boolean 13473 + retries: 13474 description: |- 13475 - observedGeneration represents the .metadata.generation that the condition was set based upon. 13476 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 13477 - with respect to the current state of the instance. 13478 - format: int64 13479 - minimum: 0 13480 + Retries is the number of retries that should be attempted on failures before 13481 + bailing. Remediation, using 'Strategy', is performed between each attempt. 13482 + Defaults to '0', a negative integer equals to unlimited retries. 13483 type: integer 13484 - reason: 13485 - description: |- 13486 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 13487 - Producers of specific condition types may define expected values and meanings for this field, 13488 - and whether the values are considered a guaranteed API. 13489 - The value should be a CamelCase string. 13490 - This field may not be empty. 13491 - maxLength: 1024 13492 - minLength: 1 13493 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 13494 - type: string 13495 - status: 13496 - description: status of the condition, one of True, False, Unknown. 13497 + strategy: 13498 + description: Strategy to use for failure remediation. Defaults 13499 + to 'rollback'. 13500 enum: 13501 - - "True" 13502 - - "False" 13503 - - Unknown 13504 - type: string 13505 - type: 13506 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 13507 - maxLength: 316 13508 - 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])$ 13509 + - rollback 13510 + - uninstall 13511 type: string 13512 - required: 13513 - - lastTransitionTime 13514 - - message 13515 - - reason 13516 - - status 13517 - - type 13518 type: object 13519 - type: array 13520 - lastHandledReconcileAt: 13521 - description: |- 13522 - LastHandledReconcileAt holds the value of the most recent 13523 - reconcile request value, so a change of the annotation value 13524 - can be detected. 13525 - type: string 13526 - observedGeneration: 13527 - description: ObservedGeneration is the last observed generation of the Receiver object. 13528 - format: int64 13529 - type: integer 13530 - webhookPath: 13531 - description: |- 13532 - WebhookPath is the generated incoming webhook address in the format 13533 - of '/hook/sha256sum(token+name+namespace)'. 13534 - type: string 13535 - type: object 13536 - type: object 13537 - served: true 13538 - storage: true 13539 - subresources: 13540 - status: {} 13541 - - additionalPrinterColumns: 13542 - - jsonPath: .metadata.creationTimestamp 13543 - name: Age 13544 - type: date 13545 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 13546 - name: Ready 13547 - type: string 13548 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 13549 - name: Status 13550 - type: string 13551 - deprecated: true 13552 - deprecationWarning: v1beta2 Receiver is deprecated, upgrade to v1 13553 - name: v1beta2 13554 - schema: 13555 - openAPIV3Schema: 13556 - description: Receiver is the Schema for the receivers API. 13557 - properties: 13558 - apiVersion: 13559 - description: |- 13560 - APIVersion defines the versioned schema of this representation of an object. 13561 - Servers should convert recognized schemas to the latest internal value, and 13562 - may reject unrecognized values. 13563 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 13564 - type: string 13565 - kind: 13566 - description: |- 13567 - Kind is a string value representing the REST resource this object represents. 13568 - Servers may infer this from the endpoint the client submits requests to. 13569 - Cannot be updated. 13570 - In CamelCase. 13571 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 13572 - type: string 13573 - metadata: 13574 - type: object 13575 - spec: 13576 - description: ReceiverSpec defines the desired state of the Receiver. 13577 - properties: 13578 - events: 13579 - description: |- 13580 - Events specifies the list of event types to handle, 13581 - e.g. 'push' for GitHub or 'Push Hook' for GitLab. 13582 - items: 13583 - type: string 13584 - type: array 13585 - interval: 13586 - description: Interval at which to reconcile the Receiver with its Secret references. 13587 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13588 - type: string 13589 - resources: 13590 - description: A list of resources to be notified about changes. 13591 - items: 13592 + serverSideApply: 13593 + description: |- 13594 + ServerSideApply enables server-side apply for resources during upgrade. 13595 + Can be "enabled", "disabled", or "auto". 13596 + When "auto", server-side apply usage will be based on the release's previous usage. 13597 + Defaults to "auto". 13598 + enum: 13599 + - enabled 13600 + - disabled 13601 + - auto 13602 + type: string 13603 + strategy: 13604 description: |- 13605 - CrossNamespaceObjectReference contains enough information to let you locate the 13606 - typed referenced object at cluster level 13607 + Strategy defines the upgrade strategy to use for this HelmRelease. 13608 + Defaults to 'RemediateOnFailure'. 13609 properties: 13610 - apiVersion: 13611 - description: API version of the referent 13612 - type: string 13613 - kind: 13614 - description: Kind of the referent 13615 + name: 13616 + description: Name of the upgrade strategy. 13617 enum: 13618 - - Bucket 13619 - - GitRepository 13620 - - Kustomization 13621 - - HelmRelease 13622 - - HelmChart 13623 - - HelmRepository 13624 - - ImageRepository 13625 - - ImagePolicy 13626 - - ImageUpdateAutomation 13627 - - OCIRepository 13628 + - RemediateOnFailure 13629 + - RetryOnFailure 13630 type: string 13631 - matchLabels: 13632 - additionalProperties: 13633 - type: string 13634 - description: |- 13635 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 13636 - map is equivalent to an element of matchExpressions, whose key field is "key", the 13637 - operator is "In", and the values array contains only "value". The requirements are ANDed. 13638 - MatchLabels requires the name to be set to `*`. 13639 - type: object 13640 - name: 13641 + retryInterval: 13642 description: |- 13643 - Name of the referent 13644 - If multiple resources are targeted `*` may be set. 13645 - maxLength: 253 13646 - minLength: 1 13647 - type: string 13648 - namespace: 13649 - description: Namespace of the referent 13650 - maxLength: 253 13651 - minLength: 1 13652 + RetryInterval is the interval at which to retry a failed upgrade. 13653 + Can be used only when Name is set to RetryOnFailure. 13654 + Defaults to '5m'. 13655 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13656 type: string 13657 required: 13658 - - kind 13659 - - name 13660 + - name 13661 type: object 13662 - type: array 13663 - secretRef: 13664 - description: |- 13665 - SecretRef specifies the Secret containing the token used 13666 - to validate the payload authenticity. 13667 + x-kubernetes-validations: 13668 + - message: .retryInterval can only be set when .name is 'RetryOnFailure' 13669 + rule: '!has(self.retryInterval) || self.name == ''RetryOnFailure''' 13670 + timeout: 13671 + description: |- 13672 + Timeout is the time to wait for any individual Kubernetes operation (like 13673 + Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 13674 + 'HelmReleaseSpec.Timeout'. 13675 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 13676 + type: string 13677 + type: object 13678 + values: 13679 + description: Values holds the values for this Helm release. 13680 + x-kubernetes-preserve-unknown-fields: true 13681 + valuesFrom: 13682 + description: |- 13683 + ValuesFrom holds references to resources containing Helm values for this HelmRelease, 13684 + and information about how they should be merged. 13685 + items: 13686 + description: |- 13687 + ValuesReference contains a reference to a resource containing Helm values, 13688 + and optionally the key they can be found at. 13689 properties: 13690 + kind: 13691 + description: Kind of the values referent, valid values are ('Secret', 13692 + 'ConfigMap'). 13693 + enum: 13694 + - Secret 13695 + - ConfigMap 13696 + type: string 13697 name: 13698 - description: Name of the referent. 13699 + description: |- 13700 + Name of the values referent. Should reside in the same namespace as the 13701 + referring resource. 13702 + maxLength: 253 13703 + minLength: 1 13704 + type: string 13705 + optional: 13706 + description: |- 13707 + Optional marks this ValuesReference as optional. When set, a not found error 13708 + for the values reference is ignored, but any ValuesKey, TargetPath or 13709 + transient error will still result in a reconciliation failure. 13710 + type: boolean 13711 + targetPath: 13712 + description: |- 13713 + TargetPath is the YAML dot notation path the value should be merged at. When 13714 + set, the ValuesKey is expected to be a single flat value. Defaults to 'None', 13715 + which results in the values getting merged at the root. 13716 + maxLength: 250 13717 + pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$ 13718 + type: string 13719 + valuesKey: 13720 + description: |- 13721 + ValuesKey is the data key where the values.yaml or a specific value can be 13722 + found at. Defaults to 'values.yaml'. 13723 + maxLength: 253 13724 + pattern: ^[\-._a-zA-Z0-9]+$ 13725 type: string 13726 required: 13727 - - name 13728 + - kind 13729 + - name 13730 type: object 13731 - suspend: 13732 - description: |- 13733 - Suspend tells the controller to suspend subsequent 13734 - events handling for this receiver. 13735 - type: boolean 13736 - type: 13737 - description: |- 13738 - Type of webhook sender, used to determine 13739 - the validation procedure and payload deserialization. 13740 - enum: 13741 - - generic 13742 - - generic-hmac 13743 - - github 13744 - - gitlab 13745 - - bitbucket 13746 - - harbor 13747 - - dockerhub 13748 - - quay 13749 - - gcr 13750 - - nexus 13751 - - acr 13752 - type: string 13753 - required: 13754 - - resources 13755 - - secretRef 13756 - - type 13757 - type: object 13758 - status: 13759 - default: 13760 - observedGeneration: -1 13761 - description: ReceiverStatus defines the observed state of the Receiver. 13762 - properties: 13763 - conditions: 13764 - description: Conditions holds the conditions for the Receiver. 13765 - items: 13766 - description: Condition contains details for one aspect of the current state of this API Resource. 13767 - properties: 13768 - lastTransitionTime: 13769 - description: |- 13770 - lastTransitionTime is the last time the condition transitioned from one status to another. 13771 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 13772 - format: date-time 13773 - type: string 13774 - message: 13775 - description: |- 13776 - message is a human readable message indicating details about the transition. 13777 - This may be an empty string. 13778 - maxLength: 32768 13779 - type: string 13780 - observedGeneration: 13781 - description: |- 13782 - observedGeneration represents the .metadata.generation that the condition was set based upon. 13783 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 13784 - with respect to the current state of the instance. 13785 - format: int64 13786 - minimum: 0 13787 - type: integer 13788 - reason: 13789 + type: array 13790 + waitStrategy: 13791 + description: |- 13792 + WaitStrategy defines Helm's wait strategy for waiting for applied 13793 + resources to become ready. 13794 + properties: 13795 + name: 13796 + description: |- 13797 + Name is Helm's wait strategy for waiting for applied resources to 13798 + become ready. One of 'poller' or 'legacy'. The 'poller' strategy uses 13799 + kstatus to poll resource statuses, while the 'legacy' strategy uses 13800 + Helm v3's waiting logic. 13801 + Defaults to 'poller', or to 'legacy' when UseHelm3Defaults feature 13802 + gate is enabled. 13803 + enum: 13804 + - poller 13805 + - legacy 13806 + type: string 13807 + required: 13808 + - name 13809 + type: object 13810 + required: 13811 + - interval 13812 + type: object 13813 + x-kubernetes-validations: 13814 + - message: either chart or chartRef must be set 13815 + rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart) 13816 + && has(self.chartRef)) 13817 + status: 13818 + default: 13819 + observedGeneration: -1 13820 + description: HelmReleaseStatus defines the observed state of a HelmRelease. 13821 + properties: 13822 + conditions: 13823 + description: Conditions holds the conditions for the HelmRelease. 13824 + items: 13825 + description: Condition contains details for one aspect of the current 13826 + state of this API Resource. 13827 + properties: 13828 + lastTransitionTime: 13829 + description: |- 13830 + lastTransitionTime is the last time the condition transitioned from one status to another. 13831 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 13832 + format: date-time 13833 + type: string 13834 + message: 13835 + description: |- 13836 + message is a human readable message indicating details about the transition. 13837 + This may be an empty string. 13838 + maxLength: 32768 13839 + type: string 13840 + observedGeneration: 13841 + description: |- 13842 + observedGeneration represents the .metadata.generation that the condition was set based upon. 13843 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 13844 + with respect to the current state of the instance. 13845 + format: int64 13846 + minimum: 0 13847 + type: integer 13848 + reason: 13849 + description: |- 13850 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 13851 + Producers of specific condition types may define expected values and meanings for this field, 13852 + and whether the values are considered a guaranteed API. 13853 + The value should be a CamelCase string. 13854 + This field may not be empty. 13855 + maxLength: 1024 13856 + minLength: 1 13857 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 13858 + type: string 13859 + status: 13860 + description: status of the condition, one of True, False, Unknown. 13861 + enum: 13862 + - "True" 13863 + - "False" 13864 + - Unknown 13865 + type: string 13866 + type: 13867 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 13868 + maxLength: 316 13869 + 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])$ 13870 + type: string 13871 + required: 13872 + - lastTransitionTime 13873 + - message 13874 + - reason 13875 + - status 13876 + - type 13877 + type: object 13878 + type: array 13879 + failures: 13880 + description: |- 13881 + Failures is the reconciliation failure count against the latest desired 13882 + state. It is reset after a successful reconciliation. 13883 + format: int64 13884 + type: integer 13885 + helmChart: 13886 + description: |- 13887 + HelmChart is the namespaced name of the HelmChart resource created by 13888 + the controller for the HelmRelease. 13889 + type: string 13890 + history: 13891 + description: |- 13892 + History holds the history of Helm releases performed for this HelmRelease 13893 + up to the last successfully completed release. 13894 + items: 13895 + description: |- 13896 + Snapshot captures a point-in-time copy of the status information for a Helm release, 13897 + as managed by the controller. 13898 + properties: 13899 + action: 13900 + description: Action is the action that resulted in this snapshot 13901 + being created. 13902 + type: string 13903 + apiVersion: 13904 + description: |- 13905 + APIVersion is the API version of the Snapshot. 13906 + When the calculation method of the Digest field is changed, this 13907 + field will be used to distinguish between the old and new methods. 13908 + type: string 13909 + appVersion: 13910 + description: AppVersion is the chart app version of the release 13911 + object in storage. 13912 + type: string 13913 + chartName: 13914 + description: ChartName is the chart name of the release object 13915 + in storage. 13916 + type: string 13917 + chartVersion: 13918 + description: |- 13919 + ChartVersion is the chart version of the release object in 13920 + storage. 13921 + type: string 13922 + configDigest: 13923 + description: |- 13924 + ConfigDigest is the checksum of the config (better known as 13925 + "values") of the release object in storage. 13926 + It has the format of `<algo>:<checksum>`. 13927 + type: string 13928 + deleted: 13929 + description: Deleted is when the release was deleted. 13930 + format: date-time 13931 + type: string 13932 + digest: 13933 + description: |- 13934 + Digest is the checksum of the release object in storage. 13935 + It has the format of `<algo>:<checksum>`. 13936 + type: string 13937 + firstDeployed: 13938 + description: FirstDeployed is when the release was first deployed. 13939 + format: date-time 13940 + type: string 13941 + lastDeployed: 13942 + description: LastDeployed is when the release was last deployed. 13943 + format: date-time 13944 + type: string 13945 + name: 13946 + description: Name is the name of the release. 13947 + type: string 13948 + namespace: 13949 + description: Namespace is the namespace the release is deployed 13950 + to. 13951 + type: string 13952 + ociDigest: 13953 + description: OCIDigest is the digest of the OCI artifact associated 13954 + with the release. 13955 + type: string 13956 + status: 13957 + description: Status is the current state of the release. 13958 + type: string 13959 + testHooks: 13960 + additionalProperties: 13961 description: |- 13962 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 13963 - Producers of specific condition types may define expected values and meanings for this field, 13964 - and whether the values are considered a guaranteed API. 13965 - The value should be a CamelCase string. 13966 - This field may not be empty. 13967 - maxLength: 1024 13968 - minLength: 1 13969 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 13970 - type: string 13971 - status: 13972 - description: status of the condition, one of True, False, Unknown. 13973 - enum: 13974 - - "True" 13975 - - "False" 13976 - - Unknown 13977 - type: string 13978 - type: 13979 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 13980 - maxLength: 316 13981 - 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])$ 13982 - type: string 13983 - required: 13984 - - lastTransitionTime 13985 - - message 13986 - - reason 13987 - - status 13988 - - type 13989 - type: object 13990 - type: array 13991 - lastHandledReconcileAt: 13992 - description: |- 13993 - LastHandledReconcileAt holds the value of the most recent 13994 - reconcile request value, so a change of the annotation value 13995 - can be detected. 13996 - type: string 13997 - observedGeneration: 13998 - description: ObservedGeneration is the last observed generation of the Receiver object. 13999 - format: int64 14000 - type: integer 14001 - url: 14002 - description: |- 14003 - URL is the generated incoming webhook address in the format 14004 - of '/hook/sha256sum(token+name+namespace)'. 14005 - Deprecated: Replaced by WebhookPath. 14006 - type: string 14007 - webhookPath: 14008 - description: |- 14009 - WebhookPath is the generated incoming webhook address in the format 14010 - of '/hook/sha256sum(token+name+namespace)'. 14011 - type: string 14012 - type: object 14013 - type: object 14014 - served: true 14015 - storage: false 14016 - subresources: 14017 - status: {} 14018 + TestHookStatus holds the status information for a test hook as observed 14019 + to be run by the controller. 14020 + properties: 14021 + lastCompleted: 14022 + description: LastCompleted is the time the test hook last 14023 + completed. 14024 + format: date-time 14025 + type: string 14026 + lastStarted: 14027 + description: LastStarted is the time the test hook was 14028 + last started. 14029 + format: date-time 14030 + type: string 14031 + phase: 14032 + description: Phase the test hook was observed to be in. 14033 + type: string 14034 + type: object 14035 + description: |- 14036 + TestHooks is the list of test hooks for the release as observed to be 14037 + run by the controller. 14038 + type: object 14039 + version: 14040 + description: Version is the version of the release object in 14041 + storage. 14042 + type: integer 14043 + required: 14044 + - chartName 14045 + - chartVersion 14046 + - configDigest 14047 + - digest 14048 + - firstDeployed 14049 + - lastDeployed 14050 + - name 14051 + - namespace 14052 + - status 14053 + - version 14054 + type: object 14055 + type: array 14056 + installFailures: 14057 + description: |- 14058 + InstallFailures is the install failure count against the latest desired 14059 + state. It is reset after a successful reconciliation. 14060 + format: int64 14061 + type: integer 14062 + inventory: 14063 + description: |- 14064 + Inventory contains the list of Kubernetes resource object references 14065 + that have been applied for this release. 14066 + properties: 14067 + entries: 14068 + description: Entries of Kubernetes resource object references. 14069 + items: 14070 + description: ResourceRef contains the information necessary 14071 + to locate a resource within a cluster. 14072 + properties: 14073 + id: 14074 + description: |- 14075 + ID is the string representation of the Kubernetes resource object's metadata, 14076 + in the format '<namespace>_<name>_<group>_<kind>'. 14077 + type: string 14078 + v: 14079 + description: Version is the API version of the Kubernetes 14080 + resource object's kind. 14081 + type: string 14082 + required: 14083 + - id 14084 + - v 14085 + type: object 14086 + type: array 14087 + required: 14088 + - entries 14089 + type: object 14090 + lastAttemptedConfigDigest: 14091 + description: |- 14092 + LastAttemptedConfigDigest is the digest for the config (better known as 14093 + "values") of the last reconciliation attempt. 14094 + type: string 14095 + lastAttemptedGeneration: 14096 + description: |- 14097 + LastAttemptedGeneration is the last generation the controller attempted 14098 + to reconcile. 14099 + format: int64 14100 + type: integer 14101 + lastAttemptedReleaseAction: 14102 + description: |- 14103 + LastAttemptedReleaseAction is the last release action performed for this 14104 + HelmRelease. It is used to determine the active retry or remediation 14105 + strategy. 14106 + enum: 14107 + - install 14108 + - upgrade 14109 + type: string 14110 + lastAttemptedReleaseActionDuration: 14111 + description: |- 14112 + LastAttemptedReleaseActionDuration is the duration of the last 14113 + release action performed for this HelmRelease. 14114 + type: string 14115 + lastAttemptedRevision: 14116 + description: |- 14117 + LastAttemptedRevision is the Source revision of the last reconciliation 14118 + attempt. For OCIRepository sources, the 12 first characters of the digest are 14119 + appended to the chart version e.g. "1.2.3+1234567890ab". 14120 + type: string 14121 + lastAttemptedRevisionDigest: 14122 + description: |- 14123 + LastAttemptedRevisionDigest is the digest of the last reconciliation attempt. 14124 + This is only set for OCIRepository sources. 14125 + type: string 14126 + lastAttemptedValuesChecksum: 14127 + description: |- 14128 + LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last 14129 + reconciliation attempt. 14130 + 14131 + Deprecated: Use LastAttemptedConfigDigest instead. 14132 + type: string 14133 + lastHandledForceAt: 14134 + description: |- 14135 + LastHandledForceAt holds the value of the most recent 14136 + force request value, so a change of the annotation value 14137 + can be detected. 14138 + type: string 14139 + lastHandledReconcileAt: 14140 + description: |- 14141 + LastHandledReconcileAt holds the value of the most recent 14142 + reconcile request value, so a change of the annotation value 14143 + can be detected. 14144 + type: string 14145 + lastHandledResetAt: 14146 + description: |- 14147 + LastHandledResetAt holds the value of the most recent reset request 14148 + value, so a change of the annotation value can be detected. 14149 + type: string 14150 + lastReleaseRevision: 14151 + description: |- 14152 + LastReleaseRevision is the revision of the last successful Helm release. 14153 + 14154 + Deprecated: Use History instead. 14155 + type: integer 14156 + observedCommonMetadataDigest: 14157 + description: |- 14158 + ObservedCommonMetadataDigest is the digest for the common metadata of 14159 + the last successful reconciliation attempt. 14160 + type: string 14161 + observedGeneration: 14162 + description: ObservedGeneration is the last observed generation. 14163 + format: int64 14164 + type: integer 14165 + observedPostRenderersDigest: 14166 + description: |- 14167 + ObservedPostRenderersDigest is the digest for the post-renderers of 14168 + the last successful reconciliation attempt. 14169 + type: string 14170 + storageNamespace: 14171 + description: |- 14172 + StorageNamespace is the namespace of the Helm release storage for the 14173 + current release. 14174 + maxLength: 63 14175 + minLength: 1 14176 + type: string 14177 + upgradeFailures: 14178 + description: |- 14179 + UpgradeFailures is the upgrade failure count against the latest desired 14180 + state. It is reset after a successful reconciliation. 14181 + format: int64 14182 + type: integer 14183 + type: object 14184 + type: object 14185 + served: true 14186 + storage: true 14187 + subresources: 14188 + status: {} 14189 --- 14190 apiVersion: v1 14191 kind: ServiceAccount 14192 metadata: 14193 labels: 14194 - app.kubernetes.io/component: notification-controller 14195 - app.kubernetes.io/instance: flux-system 14196 - app.kubernetes.io/part-of: flux 14197 - app.kubernetes.io/version: v2.7.5 14198 - name: notification-controller 14199 - namespace: flux-system 14200 ---- 14201 -apiVersion: v1 14202 -kind: Service 14203 -metadata: 14204 - labels: 14205 - app.kubernetes.io/component: notification-controller 14206 - app.kubernetes.io/instance: flux-system 14207 - app.kubernetes.io/part-of: flux 14208 - app.kubernetes.io/version: v2.7.5 14209 - control-plane: controller 14210 - name: notification-controller 14211 - namespace: flux-system 14212 -spec: 14213 - ports: 14214 - - name: http 14215 - port: 80 14216 - protocol: TCP 14217 - targetPort: http 14218 - selector: 14219 - app: notification-controller 14220 - type: ClusterIP 14221 ---- 14222 -apiVersion: v1 14223 -kind: Service 14224 -metadata: 14225 - labels: 14226 - app.kubernetes.io/component: notification-controller 14227 + app.kubernetes.io/component: helm-controller 14228 app.kubernetes.io/instance: flux-system 14229 app.kubernetes.io/part-of: flux 14230 - app.kubernetes.io/version: v2.7.5 14231 - control-plane: controller 14232 - name: webhook-receiver 14233 + app.kubernetes.io/version: v2.8.0 14234 + name: helm-controller 14235 namespace: flux-system 14236 -spec: 14237 - ports: 14238 - - name: http 14239 - port: 80 14240 - protocol: TCP 14241 - targetPort: http-webhook 14242 - selector: 14243 - app: notification-controller 14244 - type: ClusterIP 14245 --- 14246 apiVersion: apps/v1 14247 kind: Deployment 14248 metadata: 14249 labels: 14250 - app.kubernetes.io/component: notification-controller 14251 + app.kubernetes.io/component: helm-controller 14252 app.kubernetes.io/instance: flux-system 14253 app.kubernetes.io/part-of: flux 14254 - app.kubernetes.io/version: v2.7.5 14255 + app.kubernetes.io/version: v2.8.0 14256 control-plane: controller 14257 - name: notification-controller 14258 + name: helm-controller 14259 namespace: flux-system 14260 spec: 14261 replicas: 1 14262 selector: 14263 matchLabels: 14264 - app: notification-controller 14265 + app: helm-controller 14266 template: 14267 metadata: 14268 annotations: 14269 prometheus.io/port: "8080" 14270 prometheus.io/scrape: "true" 14271 labels: 14272 - app: notification-controller 14273 - app.kubernetes.io/component: notification-controller 14274 + app: helm-controller 14275 + app.kubernetes.io/component: helm-controller 14276 app.kubernetes.io/instance: flux-system 14277 app.kubernetes.io/part-of: flux 14278 - app.kubernetes.io/version: v2.7.5 14279 + app.kubernetes.io/version: v2.8.0 14280 spec: 14281 containers: 14282 - - args: 14283 - - --watch-all-namespaces=true 14284 - - --log-level=info 14285 - - --log-encoding=json 14286 - - --enable-leader-election 14287 - env: 14288 - - name: RUNTIME_NAMESPACE 14289 - valueFrom: 14290 - fieldRef: 14291 - fieldPath: metadata.namespace 14292 - - name: GOMEMLIMIT 14293 - valueFrom: 14294 - resourceFieldRef: 14295 - containerName: manager 14296 - resource: limits.memory 14297 - image: ghcr.io/fluxcd/notification-controller:v1.7.5 14298 - imagePullPolicy: IfNotPresent 14299 - livenessProbe: 14300 - httpGet: 14301 - path: /healthz 14302 - port: healthz 14303 - name: manager 14304 - ports: 14305 - - containerPort: 9090 14306 - name: http 14307 - protocol: TCP 14308 - - containerPort: 9292 14309 - name: http-webhook 14310 - protocol: TCP 14311 - - containerPort: 8080 14312 - name: http-prom 14313 - protocol: TCP 14314 - - containerPort: 9440 14315 - name: healthz 14316 - protocol: TCP 14317 - readinessProbe: 14318 - httpGet: 14319 - path: /readyz 14320 - port: healthz 14321 - resources: 14322 - limits: 14323 - cpu: 1000m 14324 - memory: 1Gi 14325 - requests: 14326 - cpu: 100m 14327 - memory: 64Mi 14328 - securityContext: 14329 - allowPrivilegeEscalation: false 14330 - capabilities: 14331 - drop: 14332 - - ALL 14333 - readOnlyRootFilesystem: true 14334 - runAsNonRoot: true 14335 - seccompProfile: 14336 - type: RuntimeDefault 14337 - volumeMounts: 14338 - - mountPath: /tmp 14339 - name: temp 14340 + - args: 14341 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 14342 + - --watch-all-namespaces=true 14343 + - --log-level=info 14344 + - --log-encoding=json 14345 + - --enable-leader-election 14346 + env: 14347 + - name: RUNTIME_NAMESPACE 14348 + valueFrom: 14349 + fieldRef: 14350 + fieldPath: metadata.namespace 14351 + - name: GOMEMLIMIT 14352 + valueFrom: 14353 + resourceFieldRef: 14354 + containerName: manager 14355 + resource: limits.memory 14356 + image: ghcr.io/fluxcd/helm-controller:v1.5.0 14357 + imagePullPolicy: IfNotPresent 14358 + livenessProbe: 14359 + httpGet: 14360 + path: /healthz 14361 + port: healthz 14362 + name: manager 14363 + ports: 14364 + - containerPort: 8080 14365 + name: http-prom 14366 + protocol: TCP 14367 + - containerPort: 9440 14368 + name: healthz 14369 + protocol: TCP 14370 + readinessProbe: 14371 + httpGet: 14372 + path: /readyz 14373 + port: healthz 14374 + resources: 14375 + limits: 14376 + cpu: 1000m 14377 + memory: 1Gi 14378 + requests: 14379 + cpu: 100m 14380 + memory: 64Mi 14381 + securityContext: 14382 + allowPrivilegeEscalation: false 14383 + capabilities: 14384 + drop: 14385 + - ALL 14386 + readOnlyRootFilesystem: true 14387 + runAsNonRoot: true 14388 + seccompProfile: 14389 + type: RuntimeDefault 14390 + volumeMounts: 14391 + - mountPath: /tmp 14392 + name: temp 14393 nodeSelector: 14394 kubernetes.io/os: linux 14395 + priorityClassName: system-cluster-critical 14396 securityContext: 14397 fsGroup: 1337 14398 - serviceAccountName: notification-controller 14399 - terminationGracePeriodSeconds: 10 14400 + serviceAccountName: helm-controller 14401 + terminationGracePeriodSeconds: 600 14402 volumes: 14403 - - emptyDir: {} 14404 - name: temp 14405 + - emptyDir: {} 14406 + name: temp 14407 --- 14408 apiVersion: apiextensions.k8s.io/v1 14409 kind: CustomResourceDefinition 14410 @@ -9974,575 +4989,1441 @@ metadata: 14411 annotations: 14412 controller-gen.kubebuilder.io/version: v0.19.0 14413 labels: 14414 - app.kubernetes.io/component: image-reflector-controller 14415 + app.kubernetes.io/component: notification-controller 14416 app.kubernetes.io/instance: flux-system 14417 app.kubernetes.io/part-of: flux 14418 - app.kubernetes.io/version: v2.7.5 14419 - name: imagepolicies.image.toolkit.fluxcd.io 14420 + app.kubernetes.io/version: v2.8.0 14421 + name: alerts.notification.toolkit.fluxcd.io 14422 spec: 14423 - group: image.toolkit.fluxcd.io 14424 + group: notification.toolkit.fluxcd.io 14425 names: 14426 - kind: ImagePolicy 14427 - listKind: ImagePolicyList 14428 - plural: imagepolicies 14429 - shortNames: 14430 - - imgpol 14431 - - imagepol 14432 - singular: imagepolicy 14433 + kind: Alert 14434 + listKind: AlertList 14435 + plural: alerts 14436 + singular: alert 14437 scope: Namespaced 14438 versions: 14439 - - additionalPrinterColumns: 14440 - - jsonPath: .status.latestRef.name 14441 - name: Image 14442 - type: string 14443 - - jsonPath: .status.latestRef.tag 14444 - name: Tag 14445 - type: string 14446 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 14447 - name: Ready 14448 - type: string 14449 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 14450 - name: Status 14451 - type: string 14452 - - jsonPath: .metadata.creationTimestamp 14453 - name: Age 14454 - type: date 14455 - name: v1 14456 - schema: 14457 - openAPIV3Schema: 14458 - description: ImagePolicy is the Schema for the imagepolicies API 14459 - properties: 14460 - apiVersion: 14461 - description: |- 14462 - APIVersion defines the versioned schema of this representation of an object. 14463 - Servers should convert recognized schemas to the latest internal value, and 14464 - may reject unrecognized values. 14465 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 14466 - type: string 14467 - kind: 14468 - description: |- 14469 - Kind is a string value representing the REST resource this object represents. 14470 - Servers may infer this from the endpoint the client submits requests to. 14471 - Cannot be updated. 14472 - In CamelCase. 14473 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 14474 - type: string 14475 - metadata: 14476 - type: object 14477 - spec: 14478 - description: |- 14479 - ImagePolicySpec defines the parameters for calculating the 14480 - ImagePolicy. 14481 - properties: 14482 - digestReflectionPolicy: 14483 - default: Never 14484 - description: |- 14485 - DigestReflectionPolicy governs the setting of the `.status.latestRef.digest` field. 14486 - 14487 - Never: The digest field will always be set to the empty string. 14488 - 14489 - IfNotPresent: The digest field will be set to the digest of the elected 14490 - latest image if the field is empty and the image did not change. 14491 - 14492 - Always: The digest field will always be set to the digest of the elected 14493 - latest image. 14494 - 14495 - Default: Never. 14496 - enum: 14497 - - Always 14498 - - IfNotPresent 14499 - - Never 14500 - type: string 14501 - filterTags: 14502 - description: |- 14503 - FilterTags enables filtering for only a subset of tags based on a set of 14504 - rules. If no rules are provided, all the tags from the repository will be 14505 - ordered and compared. 14506 + - additionalPrinterColumns: 14507 + - jsonPath: .metadata.creationTimestamp 14508 + name: Age 14509 + type: date 14510 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 14511 + name: Ready 14512 + type: string 14513 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 14514 + name: Status 14515 + type: string 14516 + deprecated: true 14517 + deprecationWarning: v1beta2 Alert is deprecated, upgrade to v1beta3 14518 + name: v1beta2 14519 + schema: 14520 + openAPIV3Schema: 14521 + description: Alert is the Schema for the alerts API 14522 + properties: 14523 + apiVersion: 14524 + description: |- 14525 + APIVersion defines the versioned schema of this representation of an object. 14526 + Servers should convert recognized schemas to the latest internal value, and 14527 + may reject unrecognized values. 14528 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 14529 + type: string 14530 + kind: 14531 + description: |- 14532 + Kind is a string value representing the REST resource this object represents. 14533 + Servers may infer this from the endpoint the client submits requests to. 14534 + Cannot be updated. 14535 + In CamelCase. 14536 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 14537 + type: string 14538 + metadata: 14539 + type: object 14540 + spec: 14541 + description: AlertSpec defines an alerting rule for events involving a 14542 + list of objects. 14543 + properties: 14544 + eventMetadata: 14545 + additionalProperties: 14546 + type: string 14547 + description: |- 14548 + EventMetadata is an optional field for adding metadata to events dispatched by the 14549 + controller. This can be used for enhancing the context of the event. If a field 14550 + would override one already present on the original event as generated by the emitter, 14551 + then the override doesn't happen, i.e. the original value is preserved, and an info 14552 + log is printed. 14553 + type: object 14554 + eventSeverity: 14555 + default: info 14556 + description: |- 14557 + EventSeverity specifies how to filter events based on severity. 14558 + If set to 'info' no events will be filtered. 14559 + enum: 14560 + - info 14561 + - error 14562 + type: string 14563 + eventSources: 14564 + description: |- 14565 + EventSources specifies how to filter events based 14566 + on the involved object kind, name and namespace. 14567 + items: 14568 + description: |- 14569 + CrossNamespaceObjectReference contains enough information to let you locate the 14570 + typed referenced object at cluster level 14571 properties: 14572 - extract: 14573 - description: |- 14574 - Extract allows a capture group to be extracted from the specified regular 14575 - expression pattern, useful before tag evaluation. 14576 + apiVersion: 14577 + description: API version of the referent 14578 type: string 14579 - pattern: 14580 - description: |- 14581 - Pattern specifies a regular expression pattern used to filter for image 14582 - tags. 14583 + kind: 14584 + description: Kind of the referent 14585 + enum: 14586 + - Bucket 14587 + - GitRepository 14588 + - Kustomization 14589 + - HelmRelease 14590 + - HelmChart 14591 + - HelmRepository 14592 + - ImageRepository 14593 + - ImagePolicy 14594 + - ImageUpdateAutomation 14595 + - OCIRepository 14596 + - ArtifactGenerator 14597 + - ExternalArtifact 14598 type: string 14599 - type: object 14600 - imageRepositoryRef: 14601 - description: |- 14602 - ImageRepositoryRef points at the object specifying the image 14603 - being scanned 14604 - properties: 14605 + matchLabels: 14606 + additionalProperties: 14607 + type: string 14608 + description: |- 14609 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 14610 + map is equivalent to an element of matchExpressions, whose key field is "key", the 14611 + operator is "In", and the values array contains only "value". The requirements are ANDed. 14612 + MatchLabels requires the name to be set to `*`. 14613 + type: object 14614 name: 14615 - description: Name of the referent. 14616 + description: |- 14617 + Name of the referent 14618 + If multiple resources are targeted `*` may be set. 14619 + maxLength: 253 14620 + minLength: 1 14621 type: string 14622 namespace: 14623 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 14624 + description: Namespace of the referent 14625 + maxLength: 253 14626 + minLength: 1 14627 type: string 14628 required: 14629 - - name 14630 + - kind 14631 + - name 14632 type: object 14633 - interval: 14634 - description: |- 14635 - Interval is the length of time to wait between 14636 - refreshing the digest of the latest tag when the 14637 - reflection policy is set to "Always". 14638 - 14639 - Defaults to 10m. 14640 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 14641 - type: string 14642 - policy: 14643 - description: |- 14644 - Policy gives the particulars of the policy to be followed in 14645 - selecting the most recent image 14646 + type: array 14647 + exclusionList: 14648 + description: |- 14649 + ExclusionList specifies a list of Golang regular expressions 14650 + to be used for excluding messages. 14651 + items: 14652 + type: string 14653 + type: array 14654 + inclusionList: 14655 + description: |- 14656 + InclusionList specifies a list of Golang regular expressions 14657 + to be used for including messages. 14658 + items: 14659 + type: string 14660 + type: array 14661 + providerRef: 14662 + description: ProviderRef specifies which Provider this Alert should 14663 + use. 14664 + properties: 14665 + name: 14666 + description: Name of the referent. 14667 + type: string 14668 + required: 14669 + - name 14670 + type: object 14671 + summary: 14672 + description: Summary holds a short description of the impact and affected 14673 + cluster. 14674 + maxLength: 255 14675 + type: string 14676 + suspend: 14677 + description: |- 14678 + Suspend tells the controller to suspend subsequent 14679 + events handling for this Alert. 14680 + type: boolean 14681 + required: 14682 + - eventSources 14683 + - providerRef 14684 + type: object 14685 + status: 14686 + default: 14687 + observedGeneration: -1 14688 + description: AlertStatus defines the observed state of the Alert. 14689 + properties: 14690 + conditions: 14691 + description: Conditions holds the conditions for the Alert. 14692 + items: 14693 + description: Condition contains details for one aspect of the current 14694 + state of this API Resource. 14695 properties: 14696 - alphabetical: 14697 - description: Alphabetical set of rules to use for alphabetical ordering of the tags. 14698 - properties: 14699 - order: 14700 - default: asc 14701 - description: |- 14702 - Order specifies the sorting order of the tags. Given the letters of the 14703 - alphabet as tags, ascending order would select Z, and descending order 14704 - would select A. 14705 - enum: 14706 - - asc 14707 - - desc 14708 - type: string 14709 - type: object 14710 - numerical: 14711 - description: Numerical set of rules to use for numerical ordering of the tags. 14712 - properties: 14713 - order: 14714 - default: asc 14715 - description: |- 14716 - Order specifies the sorting order of the tags. Given the integer values 14717 - from 0 to 9 as tags, ascending order would select 9, and descending order 14718 - would select 0. 14719 - enum: 14720 - - asc 14721 - - desc 14722 - type: string 14723 - type: object 14724 - semver: 14725 + lastTransitionTime: 14726 description: |- 14727 - SemVer gives a semantic version range to check against the tags 14728 - available. 14729 - properties: 14730 - range: 14731 - description: |- 14732 - Range gives a semver range for the image tag; the highest 14733 - version within the range that's a tag yields the latest image. 14734 - type: string 14735 - required: 14736 - - range 14737 - type: object 14738 + lastTransitionTime is the last time the condition transitioned from one status to another. 14739 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 14740 + format: date-time 14741 + type: string 14742 + message: 14743 + description: |- 14744 + message is a human readable message indicating details about the transition. 14745 + This may be an empty string. 14746 + maxLength: 32768 14747 + type: string 14748 + observedGeneration: 14749 + description: |- 14750 + observedGeneration represents the .metadata.generation that the condition was set based upon. 14751 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 14752 + with respect to the current state of the instance. 14753 + format: int64 14754 + minimum: 0 14755 + type: integer 14756 + reason: 14757 + description: |- 14758 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 14759 + Producers of specific condition types may define expected values and meanings for this field, 14760 + and whether the values are considered a guaranteed API. 14761 + The value should be a CamelCase string. 14762 + This field may not be empty. 14763 + maxLength: 1024 14764 + minLength: 1 14765 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 14766 + type: string 14767 + status: 14768 + description: status of the condition, one of True, False, Unknown. 14769 + enum: 14770 + - "True" 14771 + - "False" 14772 + - Unknown 14773 + type: string 14774 + type: 14775 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 14776 + maxLength: 316 14777 + 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])$ 14778 + type: string 14779 + required: 14780 + - lastTransitionTime 14781 + - message 14782 + - reason 14783 + - status 14784 + - type 14785 type: object 14786 - suspend: 14787 - description: |- 14788 - This flag tells the controller to suspend subsequent policy reconciliations. 14789 - It does not apply to already started reconciliations. Defaults to false. 14790 - type: boolean 14791 - required: 14792 - - imageRepositoryRef 14793 - - policy 14794 - type: object 14795 - x-kubernetes-validations: 14796 - - message: spec.interval is only accepted when spec.digestReflectionPolicy is set to 'Always' 14797 - rule: '!has(self.interval) || (has(self.digestReflectionPolicy) && self.digestReflectionPolicy == ''Always'')' 14798 - - message: spec.interval must be set when spec.digestReflectionPolicy is set to 'Always' 14799 - rule: has(self.interval) || !has(self.digestReflectionPolicy) || self.digestReflectionPolicy != 'Always' 14800 - status: 14801 - default: 14802 - observedGeneration: -1 14803 - description: ImagePolicyStatus defines the observed state of ImagePolicy 14804 - properties: 14805 - conditions: 14806 - items: 14807 - description: Condition contains details for one aspect of the current state of this API Resource. 14808 - properties: 14809 - lastTransitionTime: 14810 - description: |- 14811 - lastTransitionTime is the last time the condition transitioned from one status to another. 14812 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 14813 - format: date-time 14814 - type: string 14815 - message: 14816 - description: |- 14817 - message is a human readable message indicating details about the transition. 14818 - This may be an empty string. 14819 - maxLength: 32768 14820 - type: string 14821 - observedGeneration: 14822 - description: |- 14823 - observedGeneration represents the .metadata.generation that the condition was set based upon. 14824 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 14825 - with respect to the current state of the instance. 14826 - format: int64 14827 - minimum: 0 14828 - type: integer 14829 - reason: 14830 - description: |- 14831 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 14832 - Producers of specific condition types may define expected values and meanings for this field, 14833 - and whether the values are considered a guaranteed API. 14834 - The value should be a CamelCase string. 14835 - This field may not be empty. 14836 - maxLength: 1024 14837 - minLength: 1 14838 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 14839 - type: string 14840 - status: 14841 - description: status of the condition, one of True, False, Unknown. 14842 - enum: 14843 - - "True" 14844 - - "False" 14845 - - Unknown 14846 - type: string 14847 - type: 14848 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 14849 - maxLength: 316 14850 - 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])$ 14851 - type: string 14852 - required: 14853 - - lastTransitionTime 14854 - - message 14855 - - reason 14856 - - status 14857 - - type 14858 - type: object 14859 - type: array 14860 - lastHandledReconcileAt: 14861 - description: |- 14862 - LastHandledReconcileAt holds the value of the most recent 14863 - reconcile request value, so a change of the annotation value 14864 - can be detected. 14865 - type: string 14866 - latestRef: 14867 - description: |- 14868 - LatestRef gives the first in the list of images scanned by 14869 - the image repository, when filtered and ordered according 14870 - to the policy. 14871 + type: array 14872 + lastHandledReconcileAt: 14873 + description: |- 14874 + LastHandledReconcileAt holds the value of the most recent 14875 + reconcile request value, so a change of the annotation value 14876 + can be detected. 14877 + type: string 14878 + observedGeneration: 14879 + description: ObservedGeneration is the last observed generation. 14880 + format: int64 14881 + type: integer 14882 + type: object 14883 + type: object 14884 + served: true 14885 + storage: false 14886 + subresources: 14887 + status: {} 14888 + - additionalPrinterColumns: 14889 + - jsonPath: .metadata.creationTimestamp 14890 + name: Age 14891 + type: date 14892 + name: v1beta3 14893 + schema: 14894 + openAPIV3Schema: 14895 + description: Alert is the Schema for the alerts API 14896 + properties: 14897 + apiVersion: 14898 + description: |- 14899 + APIVersion defines the versioned schema of this representation of an object. 14900 + Servers should convert recognized schemas to the latest internal value, and 14901 + may reject unrecognized values. 14902 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 14903 + type: string 14904 + kind: 14905 + description: |- 14906 + Kind is a string value representing the REST resource this object represents. 14907 + Servers may infer this from the endpoint the client submits requests to. 14908 + Cannot be updated. 14909 + In CamelCase. 14910 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 14911 + type: string 14912 + metadata: 14913 + type: object 14914 + spec: 14915 + description: AlertSpec defines an alerting rule for events involving a 14916 + list of objects. 14917 + properties: 14918 + eventMetadata: 14919 + additionalProperties: 14920 + type: string 14921 + description: |- 14922 + EventMetadata is an optional field for adding metadata to events dispatched by the 14923 + controller. This can be used for enhancing the context of the event. If a field 14924 + would override one already present on the original event as generated by the emitter, 14925 + then the override doesn't happen, i.e. the original value is preserved, and an info 14926 + log is printed. 14927 + type: object 14928 + eventSeverity: 14929 + default: info 14930 + description: |- 14931 + EventSeverity specifies how to filter events based on severity. 14932 + If set to 'info' no events will be filtered. 14933 + enum: 14934 + - info 14935 + - error 14936 + type: string 14937 + eventSources: 14938 + description: |- 14939 + EventSources specifies how to filter events based 14940 + on the involved object kind, name and namespace. 14941 + items: 14942 + description: |- 14943 + CrossNamespaceObjectReference contains enough information to let you locate the 14944 + typed referenced object at cluster level 14945 properties: 14946 - digest: 14947 - description: Digest is the image's digest. 14948 + apiVersion: 14949 + description: API version of the referent 14950 + type: string 14951 + kind: 14952 + description: Kind of the referent 14953 + enum: 14954 + - Bucket 14955 + - GitRepository 14956 + - Kustomization 14957 + - HelmRelease 14958 + - HelmChart 14959 + - HelmRepository 14960 + - ImageRepository 14961 + - ImagePolicy 14962 + - ImageUpdateAutomation 14963 + - OCIRepository 14964 + - ArtifactGenerator 14965 + - ExternalArtifact 14966 type: string 14967 + matchLabels: 14968 + additionalProperties: 14969 + type: string 14970 + description: |- 14971 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 14972 + map is equivalent to an element of matchExpressions, whose key field is "key", the 14973 + operator is "In", and the values array contains only "value". The requirements are ANDed. 14974 + MatchLabels requires the name to be set to `*`. 14975 + type: object 14976 name: 14977 - description: Name is the bare image's name. 14978 + description: |- 14979 + Name of the referent 14980 + If multiple resources are targeted `*` may be set. 14981 + maxLength: 253 14982 + minLength: 1 14983 type: string 14984 - tag: 14985 - description: Tag is the image's tag. 14986 + namespace: 14987 + description: Namespace of the referent 14988 + maxLength: 253 14989 + minLength: 1 14990 type: string 14991 required: 14992 - - name 14993 - - tag 14994 + - kind 14995 + - name 14996 type: object 14997 - observedGeneration: 14998 - format: int64 14999 - type: integer 15000 - observedPreviousRef: 15001 - description: |- 15002 - ObservedPreviousRef is the observed previous LatestRef. It is used 15003 - to keep track of the previous and current images. 15004 + type: array 15005 + exclusionList: 15006 + description: |- 15007 + ExclusionList specifies a list of Golang regular expressions 15008 + to be used for excluding messages. 15009 + items: 15010 + type: string 15011 + type: array 15012 + inclusionList: 15013 + description: |- 15014 + InclusionList specifies a list of Golang regular expressions 15015 + to be used for including messages. 15016 + items: 15017 + type: string 15018 + type: array 15019 + providerRef: 15020 + description: ProviderRef specifies which Provider this Alert should 15021 + use. 15022 + properties: 15023 + name: 15024 + description: Name of the referent. 15025 + type: string 15026 + required: 15027 + - name 15028 + type: object 15029 + summary: 15030 + description: |- 15031 + Summary holds a short description of the impact and affected cluster. 15032 + Deprecated: Use EventMetadata instead. 15033 + maxLength: 255 15034 + type: string 15035 + suspend: 15036 + description: |- 15037 + Suspend tells the controller to suspend subsequent 15038 + events handling for this Alert. 15039 + type: boolean 15040 + required: 15041 + - eventSources 15042 + - providerRef 15043 + type: object 15044 + type: object 15045 + served: true 15046 + storage: true 15047 + subresources: {} 15048 +--- 15049 +apiVersion: apiextensions.k8s.io/v1 15050 +kind: CustomResourceDefinition 15051 +metadata: 15052 + annotations: 15053 + controller-gen.kubebuilder.io/version: v0.19.0 15054 + labels: 15055 + app.kubernetes.io/component: notification-controller 15056 + app.kubernetes.io/instance: flux-system 15057 + app.kubernetes.io/part-of: flux 15058 + app.kubernetes.io/version: v2.8.0 15059 + name: providers.notification.toolkit.fluxcd.io 15060 +spec: 15061 + group: notification.toolkit.fluxcd.io 15062 + names: 15063 + kind: Provider 15064 + listKind: ProviderList 15065 + plural: providers 15066 + singular: provider 15067 + scope: Namespaced 15068 + versions: 15069 + - additionalPrinterColumns: 15070 + - jsonPath: .metadata.creationTimestamp 15071 + name: Age 15072 + type: date 15073 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 15074 + name: Ready 15075 + type: string 15076 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 15077 + name: Status 15078 + type: string 15079 + deprecated: true 15080 + deprecationWarning: v1beta2 Provider is deprecated, upgrade to v1beta3 15081 + name: v1beta2 15082 + schema: 15083 + openAPIV3Schema: 15084 + description: Provider is the Schema for the providers API. 15085 + properties: 15086 + apiVersion: 15087 + description: |- 15088 + APIVersion defines the versioned schema of this representation of an object. 15089 + Servers should convert recognized schemas to the latest internal value, and 15090 + may reject unrecognized values. 15091 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 15092 + type: string 15093 + kind: 15094 + description: |- 15095 + Kind is a string value representing the REST resource this object represents. 15096 + Servers may infer this from the endpoint the client submits requests to. 15097 + Cannot be updated. 15098 + In CamelCase. 15099 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 15100 + type: string 15101 + metadata: 15102 + type: object 15103 + spec: 15104 + description: ProviderSpec defines the desired state of the Provider. 15105 + properties: 15106 + address: 15107 + description: |- 15108 + Address specifies the endpoint, in a generic sense, to where alerts are sent. 15109 + What kind of endpoint depends on the specific Provider type being used. 15110 + For the generic Provider, for example, this is an HTTP/S address. 15111 + For other Provider types this could be a project ID or a namespace. 15112 + maxLength: 2048 15113 + type: string 15114 + certSecretRef: 15115 + description: |- 15116 + CertSecretRef specifies the Secret containing 15117 + a PEM-encoded CA certificate (in the `ca.crt` key). 15118 + 15119 + Note: Support for the `caFile` key has 15120 + been deprecated. 15121 + properties: 15122 + name: 15123 + description: Name of the referent. 15124 + type: string 15125 + required: 15126 + - name 15127 + type: object 15128 + channel: 15129 + description: Channel specifies the destination channel where events 15130 + should be posted. 15131 + maxLength: 2048 15132 + type: string 15133 + interval: 15134 + description: Interval at which to reconcile the Provider with its 15135 + Secret references. 15136 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 15137 + type: string 15138 + proxy: 15139 + description: Proxy the HTTP/S address of the proxy server. 15140 + maxLength: 2048 15141 + pattern: ^(http|https)://.*$ 15142 + type: string 15143 + secretRef: 15144 + description: |- 15145 + SecretRef specifies the Secret containing the authentication 15146 + credentials for this Provider. 15147 + properties: 15148 + name: 15149 + description: Name of the referent. 15150 + type: string 15151 + required: 15152 + - name 15153 + type: object 15154 + suspend: 15155 + description: |- 15156 + Suspend tells the controller to suspend subsequent 15157 + events handling for this Provider. 15158 + type: boolean 15159 + timeout: 15160 + description: Timeout for sending alerts to the Provider. 15161 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 15162 + type: string 15163 + type: 15164 + description: Type specifies which Provider implementation to use. 15165 + enum: 15166 + - slack 15167 + - discord 15168 + - msteams 15169 + - rocket 15170 + - generic 15171 + - generic-hmac 15172 + - github 15173 + - gitlab 15174 + - gitea 15175 + - bitbucketserver 15176 + - bitbucket 15177 + - azuredevops 15178 + - googlechat 15179 + - googlepubsub 15180 + - webex 15181 + - sentry 15182 + - azureeventhub 15183 + - telegram 15184 + - lark 15185 + - matrix 15186 + - opsgenie 15187 + - alertmanager 15188 + - grafana 15189 + - githubdispatch 15190 + - pagerduty 15191 + - datadog 15192 + type: string 15193 + username: 15194 + description: Username specifies the name under which events are posted. 15195 + maxLength: 2048 15196 + type: string 15197 + required: 15198 + - type 15199 + type: object 15200 + status: 15201 + default: 15202 + observedGeneration: -1 15203 + description: ProviderStatus defines the observed state of the Provider. 15204 + properties: 15205 + conditions: 15206 + description: Conditions holds the conditions for the Provider. 15207 + items: 15208 + description: Condition contains details for one aspect of the current 15209 + state of this API Resource. 15210 properties: 15211 - digest: 15212 - description: Digest is the image's digest. 15213 + lastTransitionTime: 15214 + description: |- 15215 + lastTransitionTime is the last time the condition transitioned from one status to another. 15216 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 15217 + format: date-time 15218 type: string 15219 - name: 15220 - description: Name is the bare image's name. 15221 + message: 15222 + description: |- 15223 + message is a human readable message indicating details about the transition. 15224 + This may be an empty string. 15225 + maxLength: 32768 15226 type: string 15227 - tag: 15228 - description: Tag is the image's tag. 15229 + observedGeneration: 15230 + description: |- 15231 + observedGeneration represents the .metadata.generation that the condition was set based upon. 15232 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 15233 + with respect to the current state of the instance. 15234 + format: int64 15235 + minimum: 0 15236 + type: integer 15237 + reason: 15238 + description: |- 15239 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 15240 + Producers of specific condition types may define expected values and meanings for this field, 15241 + and whether the values are considered a guaranteed API. 15242 + The value should be a CamelCase string. 15243 + This field may not be empty. 15244 + maxLength: 1024 15245 + minLength: 1 15246 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 15247 + type: string 15248 + status: 15249 + description: status of the condition, one of True, False, Unknown. 15250 + enum: 15251 + - "True" 15252 + - "False" 15253 + - Unknown 15254 + type: string 15255 + type: 15256 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 15257 + maxLength: 316 15258 + 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])$ 15259 type: string 15260 required: 15261 - - name 15262 - - tag 15263 + - lastTransitionTime 15264 + - message 15265 + - reason 15266 + - status 15267 + - type 15268 type: object 15269 - type: object 15270 - type: object 15271 - served: true 15272 - storage: true 15273 - subresources: 15274 - status: {} 15275 - - additionalPrinterColumns: 15276 - - jsonPath: .status.latestRef.name 15277 - name: Image 15278 - type: string 15279 - - jsonPath: .status.latestRef.tag 15280 - name: Tag 15281 - type: string 15282 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 15283 - name: Ready 15284 - type: string 15285 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 15286 - name: Status 15287 - type: string 15288 - - jsonPath: .metadata.creationTimestamp 15289 - name: Age 15290 - type: date 15291 - deprecated: true 15292 - deprecationWarning: v1beta2 ImagePolicy is deprecated, upgrade to v1 15293 - name: v1beta2 15294 - schema: 15295 - openAPIV3Schema: 15296 - description: ImagePolicy is the Schema for the imagepolicies API 15297 - properties: 15298 - apiVersion: 15299 - description: |- 15300 - APIVersion defines the versioned schema of this representation of an object. 15301 - Servers should convert recognized schemas to the latest internal value, and 15302 - may reject unrecognized values. 15303 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 15304 - type: string 15305 - kind: 15306 - description: |- 15307 - Kind is a string value representing the REST resource this object represents. 15308 - Servers may infer this from the endpoint the client submits requests to. 15309 - Cannot be updated. 15310 - In CamelCase. 15311 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 15312 - type: string 15313 - metadata: 15314 - type: object 15315 - spec: 15316 - description: |- 15317 - ImagePolicySpec defines the parameters for calculating the 15318 - ImagePolicy. 15319 - properties: 15320 - digestReflectionPolicy: 15321 - default: Never 15322 - description: |- 15323 - DigestReflectionPolicy governs the setting of the `.status.latestRef.digest` field. 15324 + type: array 15325 + lastHandledReconcileAt: 15326 + description: |- 15327 + LastHandledReconcileAt holds the value of the most recent 15328 + reconcile request value, so a change of the annotation value 15329 + can be detected. 15330 + type: string 15331 + observedGeneration: 15332 + description: ObservedGeneration is the last reconciled generation. 15333 + format: int64 15334 + type: integer 15335 + type: object 15336 + type: object 15337 + served: true 15338 + storage: false 15339 + subresources: 15340 + status: {} 15341 + - additionalPrinterColumns: 15342 + - jsonPath: .metadata.creationTimestamp 15343 + name: Age 15344 + type: date 15345 + name: v1beta3 15346 + schema: 15347 + openAPIV3Schema: 15348 + description: Provider is the Schema for the providers API 15349 + properties: 15350 + apiVersion: 15351 + description: |- 15352 + APIVersion defines the versioned schema of this representation of an object. 15353 + Servers should convert recognized schemas to the latest internal value, and 15354 + may reject unrecognized values. 15355 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 15356 + type: string 15357 + kind: 15358 + description: |- 15359 + Kind is a string value representing the REST resource this object represents. 15360 + Servers may infer this from the endpoint the client submits requests to. 15361 + Cannot be updated. 15362 + In CamelCase. 15363 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 15364 + type: string 15365 + metadata: 15366 + type: object 15367 + spec: 15368 + description: ProviderSpec defines the desired state of the Provider. 15369 + properties: 15370 + address: 15371 + description: |- 15372 + Address specifies the endpoint, in a generic sense, to where alerts are sent. 15373 + What kind of endpoint depends on the specific Provider type being used. 15374 + For the generic Provider, for example, this is an HTTP/S address. 15375 + For other Provider types this could be a project ID or a namespace. 15376 + maxLength: 2048 15377 + type: string 15378 + certSecretRef: 15379 + description: |- 15380 + CertSecretRef specifies the Secret containing TLS certificates 15381 + for secure communication. 15382 15383 - Never: The digest field will always be set to the empty string. 15384 + Supported configurations: 15385 + - CA-only: Server authentication (provide ca.crt only) 15386 + - mTLS: Mutual authentication (provide ca.crt + tls.crt + tls.key) 15387 + - Client-only: Client authentication with system CA (provide tls.crt + tls.key only) 15388 15389 - IfNotPresent: The digest field will be set to the digest of the elected 15390 - latest image if the field is empty and the image did not change. 15391 + Legacy keys "caFile", "certFile", "keyFile" are supported but deprecated. Use "ca.crt", "tls.crt", "tls.key" instead. 15392 + properties: 15393 + name: 15394 + description: Name of the referent. 15395 + type: string 15396 + required: 15397 + - name 15398 + type: object 15399 + channel: 15400 + description: Channel specifies the destination channel where events 15401 + should be posted. 15402 + maxLength: 2048 15403 + type: string 15404 + commitStatusExpr: 15405 + description: |- 15406 + CommitStatusExpr is a CEL expression that evaluates to a string value 15407 + that can be used to generate a custom commit status message for use 15408 + with eligible Provider types (github, gitlab, gitea, bitbucketserver, 15409 + bitbucket, azuredevops). Supported variables are: event, provider, 15410 + and alert. 15411 + type: string 15412 + interval: 15413 + description: |- 15414 + Interval at which to reconcile the Provider with its Secret references. 15415 + Deprecated and not used in v1beta3. 15416 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 15417 + type: string 15418 + proxy: 15419 + description: |- 15420 + Proxy the HTTP/S address of the proxy server. 15421 + Deprecated: Use ProxySecretRef instead. Will be removed in v1. 15422 + maxLength: 2048 15423 + pattern: ^(http|https)://.*$ 15424 + type: string 15425 + proxySecretRef: 15426 + description: |- 15427 + ProxySecretRef specifies the Secret containing the proxy configuration 15428 + for this Provider. The Secret should contain an 'address' key with the 15429 + HTTP/S address of the proxy server. Optional 'username' and 'password' 15430 + keys can be provided for proxy authentication. 15431 + properties: 15432 + name: 15433 + description: Name of the referent. 15434 + type: string 15435 + required: 15436 + - name 15437 + type: object 15438 + secretRef: 15439 + description: |- 15440 + SecretRef specifies the Secret containing the authentication 15441 + credentials for this Provider. 15442 + properties: 15443 + name: 15444 + description: Name of the referent. 15445 + type: string 15446 + required: 15447 + - name 15448 + type: object 15449 + serviceAccountName: 15450 + description: |- 15451 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to 15452 + authenticate with cloud provider services through workload identity. 15453 + This enables multi-tenant authentication without storing static credentials. 15454 15455 - Always: The digest field will always be set to the digest of the elected 15456 - latest image. 15457 + Supported provider types: azureeventhub, azuredevops, googlepubsub 15458 15459 - Default: Never. 15460 - enum: 15461 - - Always 15462 - - IfNotPresent 15463 - - Never 15464 - type: string 15465 - filterTags: 15466 - description: |- 15467 - FilterTags enables filtering for only a subset of tags based on a set of 15468 - rules. If no rules are provided, all the tags from the repository will be 15469 - ordered and compared. 15470 + When specified, the controller will: 15471 + 1. Create an OIDC token for the specified ServiceAccount 15472 + 2. Exchange it for cloud provider credentials via STS 15473 + 3. Use the obtained credentials for API authentication 15474 + 15475 + When unspecified, controller-level authentication is used (single-tenant). 15476 + 15477 + An error is thrown if static credentials are also defined in SecretRef. 15478 + This field requires the ObjectLevelWorkloadIdentity feature gate to be enabled. 15479 + type: string 15480 + suspend: 15481 + description: |- 15482 + Suspend tells the controller to suspend subsequent 15483 + events handling for this Provider. 15484 + type: boolean 15485 + timeout: 15486 + description: Timeout for sending alerts to the Provider. 15487 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 15488 + type: string 15489 + type: 15490 + description: Type specifies which Provider implementation to use. 15491 + enum: 15492 + - slack 15493 + - discord 15494 + - msteams 15495 + - rocket 15496 + - generic 15497 + - generic-hmac 15498 + - github 15499 + - gitlab 15500 + - gitea 15501 + - giteapullrequestcomment 15502 + - bitbucketserver 15503 + - bitbucket 15504 + - azuredevops 15505 + - googlechat 15506 + - googlepubsub 15507 + - webex 15508 + - sentry 15509 + - azureeventhub 15510 + - telegram 15511 + - lark 15512 + - matrix 15513 + - opsgenie 15514 + - alertmanager 15515 + - grafana 15516 + - githubdispatch 15517 + - githubpullrequestcomment 15518 + - gitlabmergerequestcomment 15519 + - pagerduty 15520 + - datadog 15521 + - nats 15522 + - zulip 15523 + - otel 15524 + type: string 15525 + username: 15526 + description: Username specifies the name under which events are posted. 15527 + maxLength: 2048 15528 + type: string 15529 + required: 15530 + - type 15531 + type: object 15532 + x-kubernetes-validations: 15533 + - message: spec.commitStatusExpr is only supported for the 'github', 'gitlab', 15534 + 'gitea', 'bitbucketserver', 'bitbucket', 'azuredevops' provider types 15535 + rule: self.type == 'github' || self.type == 'gitlab' || self.type == 15536 + 'gitea' || self.type == 'bitbucketserver' || self.type == 'bitbucket' 15537 + || self.type == 'azuredevops' || !has(self.commitStatusExpr) 15538 + type: object 15539 + served: true 15540 + storage: true 15541 + subresources: {} 15542 +--- 15543 +apiVersion: apiextensions.k8s.io/v1 15544 +kind: CustomResourceDefinition 15545 +metadata: 15546 + annotations: 15547 + controller-gen.kubebuilder.io/version: v0.19.0 15548 + labels: 15549 + app.kubernetes.io/component: notification-controller 15550 + app.kubernetes.io/instance: flux-system 15551 + app.kubernetes.io/part-of: flux 15552 + app.kubernetes.io/version: v2.8.0 15553 + name: receivers.notification.toolkit.fluxcd.io 15554 +spec: 15555 + group: notification.toolkit.fluxcd.io 15556 + names: 15557 + kind: Receiver 15558 + listKind: ReceiverList 15559 + plural: receivers 15560 + singular: receiver 15561 + scope: Namespaced 15562 + versions: 15563 + - additionalPrinterColumns: 15564 + - jsonPath: .metadata.creationTimestamp 15565 + name: Age 15566 + type: date 15567 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 15568 + name: Ready 15569 + type: string 15570 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 15571 + name: Status 15572 + type: string 15573 + name: v1 15574 + schema: 15575 + openAPIV3Schema: 15576 + description: Receiver is the Schema for the receivers API. 15577 + properties: 15578 + apiVersion: 15579 + description: |- 15580 + APIVersion defines the versioned schema of this representation of an object. 15581 + Servers should convert recognized schemas to the latest internal value, and 15582 + may reject unrecognized values. 15583 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 15584 + type: string 15585 + kind: 15586 + description: |- 15587 + Kind is a string value representing the REST resource this object represents. 15588 + Servers may infer this from the endpoint the client submits requests to. 15589 + Cannot be updated. 15590 + In CamelCase. 15591 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 15592 + type: string 15593 + metadata: 15594 + type: object 15595 + spec: 15596 + description: ReceiverSpec defines the desired state of the Receiver. 15597 + properties: 15598 + events: 15599 + description: |- 15600 + Events specifies the list of event types to handle, 15601 + e.g. 'push' for GitHub or 'Push Hook' for GitLab. 15602 + items: 15603 + type: string 15604 + type: array 15605 + interval: 15606 + default: 10m 15607 + description: Interval at which to reconcile the Receiver with its 15608 + Secret references. 15609 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 15610 + type: string 15611 + resourceFilter: 15612 + description: |- 15613 + ResourceFilter is a CEL expression expected to return a boolean that is 15614 + evaluated for each resource referenced in the Resources field when a 15615 + webhook is received. If the expression returns false then the controller 15616 + will not request a reconciliation for the resource. 15617 + When the expression is specified the controller will parse it and mark 15618 + the object as terminally failed if the expression is invalid or does not 15619 + return a boolean. 15620 + type: string 15621 + resources: 15622 + description: A list of resources to be notified about changes. 15623 + items: 15624 + description: |- 15625 + CrossNamespaceObjectReference contains enough information to let you locate the 15626 + typed referenced object at cluster level 15627 properties: 15628 - extract: 15629 - description: |- 15630 - Extract allows a capture group to be extracted from the specified regular 15631 - expression pattern, useful before tag evaluation. 15632 + apiVersion: 15633 + description: API version of the referent 15634 type: string 15635 - pattern: 15636 - description: |- 15637 - Pattern specifies a regular expression pattern used to filter for image 15638 - tags. 15639 + kind: 15640 + description: Kind of the referent 15641 + enum: 15642 + - Bucket 15643 + - GitRepository 15644 + - Kustomization 15645 + - HelmRelease 15646 + - HelmChart 15647 + - HelmRepository 15648 + - ImageRepository 15649 + - ImagePolicy 15650 + - ImageUpdateAutomation 15651 + - OCIRepository 15652 + - ArtifactGenerator 15653 + - ExternalArtifact 15654 type: string 15655 - type: object 15656 - imageRepositoryRef: 15657 - description: |- 15658 - ImageRepositoryRef points at the object specifying the image 15659 - being scanned 15660 - properties: 15661 + matchLabels: 15662 + additionalProperties: 15663 + type: string 15664 + description: |- 15665 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 15666 + map is equivalent to an element of matchExpressions, whose key field is "key", the 15667 + operator is "In", and the values array contains only "value". The requirements are ANDed. 15668 + MatchLabels requires the name to be set to `*`. 15669 + type: object 15670 name: 15671 - description: Name of the referent. 15672 + description: |- 15673 + Name of the referent 15674 + If multiple resources are targeted `*` may be set. 15675 + maxLength: 253 15676 + minLength: 1 15677 type: string 15678 namespace: 15679 - description: Namespace of the referent, when not specified it acts as LocalObjectReference. 15680 + description: Namespace of the referent 15681 + maxLength: 253 15682 + minLength: 1 15683 type: string 15684 required: 15685 - - name 15686 + - kind 15687 + - name 15688 type: object 15689 - interval: 15690 - description: |- 15691 - Interval is the length of time to wait between 15692 - refreshing the digest of the latest tag when the 15693 - reflection policy is set to "Always". 15694 - 15695 - Defaults to 10m. 15696 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 15697 - type: string 15698 - policy: 15699 - description: |- 15700 - Policy gives the particulars of the policy to be followed in 15701 - selecting the most recent image 15702 + type: array 15703 + secretRef: 15704 + description: |- 15705 + SecretRef specifies the Secret containing the token used 15706 + to validate the payload authenticity. 15707 + properties: 15708 + name: 15709 + description: Name of the referent. 15710 + type: string 15711 + required: 15712 + - name 15713 + type: object 15714 + suspend: 15715 + description: |- 15716 + Suspend tells the controller to suspend subsequent 15717 + events handling for this receiver. 15718 + type: boolean 15719 + type: 15720 + description: |- 15721 + Type of webhook sender, used to determine 15722 + the validation procedure and payload deserialization. 15723 + enum: 15724 + - generic 15725 + - generic-hmac 15726 + - github 15727 + - gitlab 15728 + - bitbucket 15729 + - harbor 15730 + - dockerhub 15731 + - quay 15732 + - gcr 15733 + - nexus 15734 + - acr 15735 + - cdevents 15736 + type: string 15737 + required: 15738 + - resources 15739 + - secretRef 15740 + - type 15741 + type: object 15742 + status: 15743 + default: 15744 + observedGeneration: -1 15745 + description: ReceiverStatus defines the observed state of the Receiver. 15746 + properties: 15747 + conditions: 15748 + description: Conditions holds the conditions for the Receiver. 15749 + items: 15750 + description: Condition contains details for one aspect of the current 15751 + state of this API Resource. 15752 properties: 15753 - alphabetical: 15754 - description: Alphabetical set of rules to use for alphabetical ordering of the tags. 15755 - properties: 15756 - order: 15757 - default: asc 15758 - description: |- 15759 - Order specifies the sorting order of the tags. Given the letters of the 15760 - alphabet as tags, ascending order would select Z, and descending order 15761 - would select A. 15762 - enum: 15763 - - asc 15764 - - desc 15765 - type: string 15766 - type: object 15767 - numerical: 15768 - description: Numerical set of rules to use for numerical ordering of the tags. 15769 - properties: 15770 - order: 15771 - default: asc 15772 - description: |- 15773 - Order specifies the sorting order of the tags. Given the integer values 15774 - from 0 to 9 as tags, ascending order would select 9, and descending order 15775 - would select 0. 15776 - enum: 15777 - - asc 15778 - - desc 15779 - type: string 15780 - type: object 15781 - semver: 15782 + lastTransitionTime: 15783 description: |- 15784 - SemVer gives a semantic version range to check against the tags 15785 - available. 15786 - properties: 15787 - range: 15788 - description: |- 15789 - Range gives a semver range for the image tag; the highest 15790 - version within the range that's a tag yields the latest image. 15791 - type: string 15792 - required: 15793 - - range 15794 - type: object 15795 - type: object 15796 - suspend: 15797 - description: |- 15798 - This flag tells the controller to suspend subsequent policy reconciliations. 15799 - It does not apply to already started reconciliations. Defaults to false. 15800 - type: boolean 15801 - required: 15802 - - imageRepositoryRef 15803 - - policy 15804 - type: object 15805 - x-kubernetes-validations: 15806 - - message: spec.interval is only accepted when spec.digestReflectionPolicy is set to 'Always' 15807 - rule: '!has(self.interval) || (has(self.digestReflectionPolicy) && self.digestReflectionPolicy == ''Always'')' 15808 - - message: spec.interval must be set when spec.digestReflectionPolicy is set to 'Always' 15809 - rule: has(self.interval) || !has(self.digestReflectionPolicy) || self.digestReflectionPolicy != 'Always' 15810 - status: 15811 - default: 15812 - observedGeneration: -1 15813 - description: ImagePolicyStatus defines the observed state of ImagePolicy 15814 - properties: 15815 - conditions: 15816 - items: 15817 - description: Condition contains details for one aspect of the current state of this API Resource. 15818 - properties: 15819 - lastTransitionTime: 15820 - description: |- 15821 - lastTransitionTime is the last time the condition transitioned from one status to another. 15822 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 15823 - format: date-time 15824 - type: string 15825 - message: 15826 - description: |- 15827 - message is a human readable message indicating details about the transition. 15828 - This may be an empty string. 15829 - maxLength: 32768 15830 - type: string 15831 - observedGeneration: 15832 - description: |- 15833 - observedGeneration represents the .metadata.generation that the condition was set based upon. 15834 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 15835 - with respect to the current state of the instance. 15836 - format: int64 15837 - minimum: 0 15838 - type: integer 15839 - reason: 15840 - description: |- 15841 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 15842 - Producers of specific condition types may define expected values and meanings for this field, 15843 - and whether the values are considered a guaranteed API. 15844 - The value should be a CamelCase string. 15845 - This field may not be empty. 15846 - maxLength: 1024 15847 - minLength: 1 15848 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 15849 - type: string 15850 - status: 15851 - description: status of the condition, one of True, False, Unknown. 15852 - enum: 15853 - - "True" 15854 - - "False" 15855 - - Unknown 15856 - type: string 15857 - type: 15858 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 15859 - maxLength: 316 15860 - 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])$ 15861 - type: string 15862 - required: 15863 - - lastTransitionTime 15864 - - message 15865 - - reason 15866 - - status 15867 - - type 15868 - type: object 15869 - type: array 15870 - lastHandledReconcileAt: 15871 - description: |- 15872 - LastHandledReconcileAt holds the value of the most recent 15873 - reconcile request value, so a change of the annotation value 15874 - can be detected. 15875 - type: string 15876 - latestRef: 15877 - description: |- 15878 - LatestRef gives the first in the list of images scanned by 15879 - the image repository, when filtered and ordered according 15880 - to the policy. 15881 + lastTransitionTime is the last time the condition transitioned from one status to another. 15882 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 15883 + format: date-time 15884 + type: string 15885 + message: 15886 + description: |- 15887 + message is a human readable message indicating details about the transition. 15888 + This may be an empty string. 15889 + maxLength: 32768 15890 + type: string 15891 + observedGeneration: 15892 + description: |- 15893 + observedGeneration represents the .metadata.generation that the condition was set based upon. 15894 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 15895 + with respect to the current state of the instance. 15896 + format: int64 15897 + minimum: 0 15898 + type: integer 15899 + reason: 15900 + description: |- 15901 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 15902 + Producers of specific condition types may define expected values and meanings for this field, 15903 + and whether the values are considered a guaranteed API. 15904 + The value should be a CamelCase string. 15905 + This field may not be empty. 15906 + maxLength: 1024 15907 + minLength: 1 15908 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 15909 + type: string 15910 + status: 15911 + description: status of the condition, one of True, False, Unknown. 15912 + enum: 15913 + - "True" 15914 + - "False" 15915 + - Unknown 15916 + type: string 15917 + type: 15918 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 15919 + maxLength: 316 15920 + 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])$ 15921 + type: string 15922 + required: 15923 + - lastTransitionTime 15924 + - message 15925 + - reason 15926 + - status 15927 + - type 15928 + type: object 15929 + type: array 15930 + lastHandledReconcileAt: 15931 + description: |- 15932 + LastHandledReconcileAt holds the value of the most recent 15933 + reconcile request value, so a change of the annotation value 15934 + can be detected. 15935 + type: string 15936 + observedGeneration: 15937 + description: ObservedGeneration is the last observed generation of 15938 + the Receiver object. 15939 + format: int64 15940 + type: integer 15941 + webhookPath: 15942 + description: |- 15943 + WebhookPath is the generated incoming webhook address in the format 15944 + of '/hook/sha256sum(token+name+namespace)'. 15945 + type: string 15946 + type: object 15947 + type: object 15948 + served: true 15949 + storage: true 15950 + subresources: 15951 + status: {} 15952 + - additionalPrinterColumns: 15953 + - jsonPath: .metadata.creationTimestamp 15954 + name: Age 15955 + type: date 15956 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 15957 + name: Ready 15958 + type: string 15959 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 15960 + name: Status 15961 + type: string 15962 + deprecated: true 15963 + deprecationWarning: v1beta2 Receiver is deprecated, upgrade to v1 15964 + name: v1beta2 15965 + schema: 15966 + openAPIV3Schema: 15967 + description: Receiver is the Schema for the receivers API. 15968 + properties: 15969 + apiVersion: 15970 + description: |- 15971 + APIVersion defines the versioned schema of this representation of an object. 15972 + Servers should convert recognized schemas to the latest internal value, and 15973 + may reject unrecognized values. 15974 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 15975 + type: string 15976 + kind: 15977 + description: |- 15978 + Kind is a string value representing the REST resource this object represents. 15979 + Servers may infer this from the endpoint the client submits requests to. 15980 + Cannot be updated. 15981 + In CamelCase. 15982 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 15983 + type: string 15984 + metadata: 15985 + type: object 15986 + spec: 15987 + description: ReceiverSpec defines the desired state of the Receiver. 15988 + properties: 15989 + events: 15990 + description: |- 15991 + Events specifies the list of event types to handle, 15992 + e.g. 'push' for GitHub or 'Push Hook' for GitLab. 15993 + items: 15994 + type: string 15995 + type: array 15996 + interval: 15997 + description: Interval at which to reconcile the Receiver with its 15998 + Secret references. 15999 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 16000 + type: string 16001 + resources: 16002 + description: A list of resources to be notified about changes. 16003 + items: 16004 + description: |- 16005 + CrossNamespaceObjectReference contains enough information to let you locate the 16006 + typed referenced object at cluster level 16007 properties: 16008 - digest: 16009 - description: Digest is the image's digest. 16010 + apiVersion: 16011 + description: API version of the referent 16012 + type: string 16013 + kind: 16014 + description: Kind of the referent 16015 + enum: 16016 + - Bucket 16017 + - GitRepository 16018 + - Kustomization 16019 + - HelmRelease 16020 + - HelmChart 16021 + - HelmRepository 16022 + - ImageRepository 16023 + - ImagePolicy 16024 + - ImageUpdateAutomation 16025 + - OCIRepository 16026 + - ArtifactGenerator 16027 + - ExternalArtifact 16028 type: string 16029 + matchLabels: 16030 + additionalProperties: 16031 + type: string 16032 + description: |- 16033 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 16034 + map is equivalent to an element of matchExpressions, whose key field is "key", the 16035 + operator is "In", and the values array contains only "value". The requirements are ANDed. 16036 + MatchLabels requires the name to be set to `*`. 16037 + type: object 16038 name: 16039 - description: Name is the bare image's name. 16040 + description: |- 16041 + Name of the referent 16042 + If multiple resources are targeted `*` may be set. 16043 + maxLength: 253 16044 + minLength: 1 16045 type: string 16046 - tag: 16047 - description: Tag is the image's tag. 16048 + namespace: 16049 + description: Namespace of the referent 16050 + maxLength: 253 16051 + minLength: 1 16052 type: string 16053 required: 16054 - - name 16055 - - tag 16056 + - kind 16057 + - name 16058 type: object 16059 - observedGeneration: 16060 - format: int64 16061 - type: integer 16062 - observedPreviousRef: 16063 - description: |- 16064 - ObservedPreviousRef is the observed previous LatestRef. It is used 16065 - to keep track of the previous and current images. 16066 + type: array 16067 + secretRef: 16068 + description: |- 16069 + SecretRef specifies the Secret containing the token used 16070 + to validate the payload authenticity. 16071 + properties: 16072 + name: 16073 + description: Name of the referent. 16074 + type: string 16075 + required: 16076 + - name 16077 + type: object 16078 + suspend: 16079 + description: |- 16080 + Suspend tells the controller to suspend subsequent 16081 + events handling for this receiver. 16082 + type: boolean 16083 + type: 16084 + description: |- 16085 + Type of webhook sender, used to determine 16086 + the validation procedure and payload deserialization. 16087 + enum: 16088 + - generic 16089 + - generic-hmac 16090 + - github 16091 + - gitlab 16092 + - bitbucket 16093 + - harbor 16094 + - dockerhub 16095 + - quay 16096 + - gcr 16097 + - nexus 16098 + - acr 16099 + type: string 16100 + required: 16101 + - resources 16102 + - secretRef 16103 + - type 16104 + type: object 16105 + status: 16106 + default: 16107 + observedGeneration: -1 16108 + description: ReceiverStatus defines the observed state of the Receiver. 16109 + properties: 16110 + conditions: 16111 + description: Conditions holds the conditions for the Receiver. 16112 + items: 16113 + description: Condition contains details for one aspect of the current 16114 + state of this API Resource. 16115 properties: 16116 - digest: 16117 - description: Digest is the image's digest. 16118 + lastTransitionTime: 16119 + description: |- 16120 + lastTransitionTime is the last time the condition transitioned from one status to another. 16121 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 16122 + format: date-time 16123 type: string 16124 - name: 16125 - description: Name is the bare image's name. 16126 + message: 16127 + description: |- 16128 + message is a human readable message indicating details about the transition. 16129 + This may be an empty string. 16130 + maxLength: 32768 16131 type: string 16132 - tag: 16133 - description: Tag is the image's tag. 16134 + observedGeneration: 16135 + description: |- 16136 + observedGeneration represents the .metadata.generation that the condition was set based upon. 16137 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 16138 + with respect to the current state of the instance. 16139 + format: int64 16140 + minimum: 0 16141 + type: integer 16142 + reason: 16143 + description: |- 16144 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 16145 + Producers of specific condition types may define expected values and meanings for this field, 16146 + and whether the values are considered a guaranteed API. 16147 + The value should be a CamelCase string. 16148 + This field may not be empty. 16149 + maxLength: 1024 16150 + minLength: 1 16151 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 16152 + type: string 16153 + status: 16154 + description: status of the condition, one of True, False, Unknown. 16155 + enum: 16156 + - "True" 16157 + - "False" 16158 + - Unknown 16159 + type: string 16160 + type: 16161 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 16162 + maxLength: 316 16163 + 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])$ 16164 type: string 16165 required: 16166 - - name 16167 - - tag 16168 + - lastTransitionTime 16169 + - message 16170 + - reason 16171 + - status 16172 + - type 16173 type: object 16174 - type: object 16175 - type: object 16176 - served: true 16177 - storage: false 16178 - subresources: 16179 - status: {} 16180 + type: array 16181 + lastHandledReconcileAt: 16182 + description: |- 16183 + LastHandledReconcileAt holds the value of the most recent 16184 + reconcile request value, so a change of the annotation value 16185 + can be detected. 16186 + type: string 16187 + observedGeneration: 16188 + description: ObservedGeneration is the last observed generation of 16189 + the Receiver object. 16190 + format: int64 16191 + type: integer 16192 + url: 16193 + description: |- 16194 + URL is the generated incoming webhook address in the format 16195 + of '/hook/sha256sum(token+name+namespace)'. 16196 + Deprecated: Replaced by WebhookPath. 16197 + type: string 16198 + webhookPath: 16199 + description: |- 16200 + WebhookPath is the generated incoming webhook address in the format 16201 + of '/hook/sha256sum(token+name+namespace)'. 16202 + type: string 16203 + type: object 16204 + type: object 16205 + served: true 16206 + storage: false 16207 + subresources: 16208 + status: {} 16209 +--- 16210 +apiVersion: v1 16211 +kind: ServiceAccount 16212 +metadata: 16213 + labels: 16214 + app.kubernetes.io/component: notification-controller 16215 + app.kubernetes.io/instance: flux-system 16216 + app.kubernetes.io/part-of: flux 16217 + app.kubernetes.io/version: v2.8.0 16218 + name: notification-controller 16219 + namespace: flux-system 16220 +--- 16221 +apiVersion: v1 16222 +kind: Service 16223 +metadata: 16224 + labels: 16225 + app.kubernetes.io/component: notification-controller 16226 + app.kubernetes.io/instance: flux-system 16227 + app.kubernetes.io/part-of: flux 16228 + app.kubernetes.io/version: v2.8.0 16229 + control-plane: controller 16230 + name: notification-controller 16231 + namespace: flux-system 16232 +spec: 16233 + ports: 16234 + - name: http 16235 + port: 80 16236 + protocol: TCP 16237 + targetPort: http 16238 + selector: 16239 + app: notification-controller 16240 + type: ClusterIP 16241 +--- 16242 +apiVersion: v1 16243 +kind: Service 16244 +metadata: 16245 + labels: 16246 + app.kubernetes.io/component: notification-controller 16247 + app.kubernetes.io/instance: flux-system 16248 + app.kubernetes.io/part-of: flux 16249 + app.kubernetes.io/version: v2.8.0 16250 + control-plane: controller 16251 + name: webhook-receiver 16252 + namespace: flux-system 16253 +spec: 16254 + ports: 16255 + - name: http 16256 + port: 80 16257 + protocol: TCP 16258 + targetPort: http-webhook 16259 + selector: 16260 + app: notification-controller 16261 + type: ClusterIP 16262 +--- 16263 +apiVersion: apps/v1 16264 +kind: Deployment 16265 +metadata: 16266 + labels: 16267 + app.kubernetes.io/component: notification-controller 16268 + app.kubernetes.io/instance: flux-system 16269 + app.kubernetes.io/part-of: flux 16270 + app.kubernetes.io/version: v2.8.0 16271 + control-plane: controller 16272 + name: notification-controller 16273 + namespace: flux-system 16274 +spec: 16275 + replicas: 1 16276 + selector: 16277 + matchLabels: 16278 + app: notification-controller 16279 + template: 16280 + metadata: 16281 + annotations: 16282 + prometheus.io/port: "8080" 16283 + prometheus.io/scrape: "true" 16284 + labels: 16285 + app: notification-controller 16286 + app.kubernetes.io/component: notification-controller 16287 + app.kubernetes.io/instance: flux-system 16288 + app.kubernetes.io/part-of: flux 16289 + app.kubernetes.io/version: v2.8.0 16290 + spec: 16291 + containers: 16292 + - args: 16293 + - --watch-all-namespaces=true 16294 + - --log-level=info 16295 + - --log-encoding=json 16296 + - --enable-leader-election 16297 + env: 16298 + - name: RUNTIME_NAMESPACE 16299 + valueFrom: 16300 + fieldRef: 16301 + fieldPath: metadata.namespace 16302 + - name: GOMEMLIMIT 16303 + valueFrom: 16304 + resourceFieldRef: 16305 + containerName: manager 16306 + resource: limits.memory 16307 + image: ghcr.io/fluxcd/notification-controller:v1.8.0 16308 + imagePullPolicy: IfNotPresent 16309 + livenessProbe: 16310 + httpGet: 16311 + path: /healthz 16312 + port: healthz 16313 + name: manager 16314 + ports: 16315 + - containerPort: 9090 16316 + name: http 16317 + protocol: TCP 16318 + - containerPort: 9292 16319 + name: http-webhook 16320 + protocol: TCP 16321 + - containerPort: 8080 16322 + name: http-prom 16323 + protocol: TCP 16324 + - containerPort: 9440 16325 + name: healthz 16326 + protocol: TCP 16327 + readinessProbe: 16328 + httpGet: 16329 + path: /readyz 16330 + port: healthz 16331 + resources: 16332 + limits: 16333 + cpu: 1000m 16334 + memory: 1Gi 16335 + requests: 16336 + cpu: 100m 16337 + memory: 64Mi 16338 + securityContext: 16339 + allowPrivilegeEscalation: false 16340 + capabilities: 16341 + drop: 16342 + - ALL 16343 + readOnlyRootFilesystem: true 16344 + runAsNonRoot: true 16345 + seccompProfile: 16346 + type: RuntimeDefault 16347 + volumeMounts: 16348 + - mountPath: /tmp 16349 + name: temp 16350 + nodeSelector: 16351 + kubernetes.io/os: linux 16352 + securityContext: 16353 + fsGroup: 1337 16354 + serviceAccountName: notification-controller 16355 + terminationGracePeriodSeconds: 10 16356 + volumes: 16357 + - emptyDir: {} 16358 + name: temp 16359 --- 16360 apiVersion: apiextensions.k8s.io/v1 16361 kind: CustomResourceDefinition 16362 @@ -10553,602 +6434,1200 @@ metadata: 16363 app.kubernetes.io/component: image-reflector-controller 16364 app.kubernetes.io/instance: flux-system 16365 app.kubernetes.io/part-of: flux 16366 - app.kubernetes.io/version: v2.7.5 16367 - name: imagerepositories.image.toolkit.fluxcd.io 16368 + app.kubernetes.io/version: v2.8.0 16369 + name: imagepolicies.image.toolkit.fluxcd.io 16370 spec: 16371 group: image.toolkit.fluxcd.io 16372 names: 16373 - kind: ImageRepository 16374 - listKind: ImageRepositoryList 16375 - plural: imagerepositories 16376 + kind: ImagePolicy 16377 + listKind: ImagePolicyList 16378 + plural: imagepolicies 16379 shortNames: 16380 - - imgrepo 16381 - - imagerepo 16382 - singular: imagerepository 16383 + - imgpol 16384 + - imagepol 16385 + singular: imagepolicy 16386 scope: Namespaced 16387 versions: 16388 - - additionalPrinterColumns: 16389 - - jsonPath: .spec.image 16390 - name: Image 16391 - type: string 16392 - - jsonPath: .status.lastScanResult.tagCount 16393 - name: Tags 16394 - type: string 16395 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 16396 - name: Ready 16397 - type: string 16398 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 16399 - name: Status 16400 - type: string 16401 - - jsonPath: .status.lastScanResult.scanTime 16402 - name: Last scan 16403 - priority: 1 16404 - type: string 16405 - - jsonPath: .metadata.creationTimestamp 16406 - name: Age 16407 - type: date 16408 - name: v1 16409 - schema: 16410 - openAPIV3Schema: 16411 - description: ImageRepository is the Schema for the imagerepositories API 16412 - properties: 16413 - apiVersion: 16414 - description: |- 16415 - APIVersion defines the versioned schema of this representation of an object. 16416 - Servers should convert recognized schemas to the latest internal value, and 16417 - may reject unrecognized values. 16418 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 16419 - type: string 16420 - kind: 16421 - description: |- 16422 - Kind is a string value representing the REST resource this object represents. 16423 - Servers may infer this from the endpoint the client submits requests to. 16424 - Cannot be updated. 16425 - In CamelCase. 16426 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 16427 - type: string 16428 - metadata: 16429 - type: object 16430 - spec: 16431 - description: |- 16432 - ImageRepositorySpec defines the parameters for scanning an image 16433 - repository, e.g., `fluxcd/flux`. 16434 - properties: 16435 - accessFrom: 16436 - description: |- 16437 - AccessFrom defines an ACL for allowing cross-namespace references 16438 - to the ImageRepository object based on the caller's namespace labels. 16439 - properties: 16440 - namespaceSelectors: 16441 - description: |- 16442 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 16443 - Items in this list are evaluated using a logical OR operation. 16444 - items: 16445 - description: |- 16446 - NamespaceSelector selects the namespaces to which this ACL applies. 16447 - An empty map of MatchLabels matches all namespaces in a cluster. 16448 - properties: 16449 - matchLabels: 16450 - additionalProperties: 16451 - type: string 16452 - description: |- 16453 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 16454 - map is equivalent to an element of matchExpressions, whose key field is "key", the 16455 - operator is "In", and the values array contains only "value". The requirements are ANDed. 16456 - type: object 16457 - type: object 16458 - type: array 16459 - required: 16460 - - namespaceSelectors 16461 - type: object 16462 - certSecretRef: 16463 - description: |- 16464 - CertSecretRef can be given the name of a Secret containing 16465 - either or both of 16466 + - additionalPrinterColumns: 16467 + - jsonPath: .status.latestRef.name 16468 + name: Image 16469 + type: string 16470 + - jsonPath: .status.latestRef.tag 16471 + name: Tag 16472 + type: string 16473 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 16474 + name: Ready 16475 + type: string 16476 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 16477 + name: Status 16478 + type: string 16479 + - jsonPath: .metadata.creationTimestamp 16480 + name: Age 16481 + type: date 16482 + name: v1 16483 + schema: 16484 + openAPIV3Schema: 16485 + description: ImagePolicy is the Schema for the imagepolicies API 16486 + properties: 16487 + apiVersion: 16488 + description: |- 16489 + APIVersion defines the versioned schema of this representation of an object. 16490 + Servers should convert recognized schemas to the latest internal value, and 16491 + may reject unrecognized values. 16492 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 16493 + type: string 16494 + kind: 16495 + description: |- 16496 + Kind is a string value representing the REST resource this object represents. 16497 + Servers may infer this from the endpoint the client submits requests to. 16498 + Cannot be updated. 16499 + In CamelCase. 16500 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 16501 + type: string 16502 + metadata: 16503 + type: object 16504 + spec: 16505 + description: |- 16506 + ImagePolicySpec defines the parameters for calculating the 16507 + ImagePolicy. 16508 + properties: 16509 + digestReflectionPolicy: 16510 + default: Never 16511 + description: |- 16512 + DigestReflectionPolicy governs the setting of the `.status.latestRef.digest` field. 16513 + 16514 + Never: The digest field will always be set to the empty string. 16515 16516 - - a PEM-encoded client certificate (`tls.crt`) and private 16517 - key (`tls.key`); 16518 - - a PEM-encoded CA certificate (`ca.crt`) 16519 + IfNotPresent: The digest field will be set to the digest of the elected 16520 + latest image if the field is empty and the image did not change. 16521 16522 - and whichever are supplied, will be used for connecting to the 16523 - registry. The client cert and key are useful if you are 16524 - authenticating with a certificate; the CA cert is useful if 16525 - you are using a self-signed server certificate. The Secret must 16526 - be of type `Opaque` or `kubernetes.io/tls`. 16527 + Always: The digest field will always be set to the digest of the elected 16528 + latest image. 16529 + 16530 + Default: Never. 16531 + enum: 16532 + - Always 16533 + - IfNotPresent 16534 + - Never 16535 + type: string 16536 + filterTags: 16537 + description: |- 16538 + FilterTags enables filtering for only a subset of tags based on a set of 16539 + rules. If no rules are provided, all the tags from the repository will be 16540 + ordered and compared. 16541 + properties: 16542 + extract: 16543 + description: |- 16544 + Extract allows a capture group to be extracted from the specified regular 16545 + expression pattern, useful before tag evaluation. 16546 + type: string 16547 + pattern: 16548 + description: |- 16549 + Pattern specifies a regular expression pattern used to filter for image 16550 + tags. 16551 + type: string 16552 + type: object 16553 + imageRepositoryRef: 16554 + description: |- 16555 + ImageRepositoryRef points at the object specifying the image 16556 + being scanned 16557 + properties: 16558 + name: 16559 + description: Name of the referent. 16560 + type: string 16561 + namespace: 16562 + description: Namespace of the referent, when not specified it 16563 + acts as LocalObjectReference. 16564 + type: string 16565 + required: 16566 + - name 16567 + type: object 16568 + interval: 16569 + description: |- 16570 + Interval is the length of time to wait between 16571 + refreshing the digest of the latest tag when the 16572 + reflection policy is set to "Always". 16573 16574 - Note: Support for the `caFile`, `certFile` and `keyFile` keys has 16575 - been deprecated. 16576 + Defaults to 10m. 16577 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 16578 + type: string 16579 + policy: 16580 + description: |- 16581 + Policy gives the particulars of the policy to be followed in 16582 + selecting the most recent image 16583 + properties: 16584 + alphabetical: 16585 + description: Alphabetical set of rules to use for alphabetical 16586 + ordering of the tags. 16587 + properties: 16588 + order: 16589 + default: asc 16590 + description: |- 16591 + Order specifies the sorting order of the tags. Given the letters of the 16592 + alphabet as tags, ascending order would select Z, and descending order 16593 + would select A. 16594 + enum: 16595 + - asc 16596 + - desc 16597 + type: string 16598 + type: object 16599 + numerical: 16600 + description: Numerical set of rules to use for numerical ordering 16601 + of the tags. 16602 + properties: 16603 + order: 16604 + default: asc 16605 + description: |- 16606 + Order specifies the sorting order of the tags. Given the integer values 16607 + from 0 to 9 as tags, ascending order would select 9, and descending order 16608 + would select 0. 16609 + enum: 16610 + - asc 16611 + - desc 16612 + type: string 16613 + type: object 16614 + semver: 16615 + description: |- 16616 + SemVer gives a semantic version range to check against the tags 16617 + available. 16618 + properties: 16619 + range: 16620 + description: |- 16621 + Range gives a semver range for the image tag; the highest 16622 + version within the range that's a tag yields the latest image. 16623 + type: string 16624 + required: 16625 + - range 16626 + type: object 16627 + type: object 16628 + suspend: 16629 + description: |- 16630 + This flag tells the controller to suspend subsequent policy reconciliations. 16631 + It does not apply to already started reconciliations. Defaults to false. 16632 + type: boolean 16633 + required: 16634 + - imageRepositoryRef 16635 + - policy 16636 + type: object 16637 + x-kubernetes-validations: 16638 + - message: spec.interval is only accepted when spec.digestReflectionPolicy 16639 + is set to 'Always' 16640 + rule: '!has(self.interval) || (has(self.digestReflectionPolicy) && self.digestReflectionPolicy 16641 + == ''Always'')' 16642 + - message: spec.interval must be set when spec.digestReflectionPolicy 16643 + is set to 'Always' 16644 + rule: has(self.interval) || !has(self.digestReflectionPolicy) || self.digestReflectionPolicy 16645 + != 'Always' 16646 + status: 16647 + default: 16648 + observedGeneration: -1 16649 + description: ImagePolicyStatus defines the observed state of ImagePolicy 16650 + properties: 16651 + conditions: 16652 + items: 16653 + description: Condition contains details for one aspect of the current 16654 + state of this API Resource. 16655 properties: 16656 - name: 16657 - description: Name of the referent. 16658 + lastTransitionTime: 16659 + description: |- 16660 + lastTransitionTime is the last time the condition transitioned from one status to another. 16661 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 16662 + format: date-time 16663 type: string 16664 - required: 16665 - - name 16666 - type: object 16667 - exclusionList: 16668 - default: 16669 - - ^.*\.sig$ 16670 - description: |- 16671 - ExclusionList is a list of regex strings used to exclude certain tags 16672 - from being stored in the database. 16673 - items: 16674 - type: string 16675 - maxItems: 25 16676 - type: array 16677 - image: 16678 - description: Image is the name of the image repository 16679 - type: string 16680 - insecure: 16681 - description: Insecure allows connecting to a non-TLS HTTP container registry. 16682 - type: boolean 16683 - interval: 16684 - description: |- 16685 - Interval is the length of time to wait between 16686 - scans of the image repository. 16687 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 16688 - type: string 16689 - provider: 16690 - default: generic 16691 - description: |- 16692 - The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 16693 - When not specified, defaults to 'generic'. 16694 - enum: 16695 - - generic 16696 - - aws 16697 - - azure 16698 - - gcp 16699 - type: string 16700 - proxySecretRef: 16701 - description: |- 16702 - ProxySecretRef specifies the Secret containing the proxy configuration 16703 - to use while communicating with the container registry. 16704 - properties: 16705 - name: 16706 - description: Name of the referent. 16707 + message: 16708 + description: |- 16709 + message is a human readable message indicating details about the transition. 16710 + This may be an empty string. 16711 + maxLength: 32768 16712 type: string 16713 - required: 16714 - - name 16715 - type: object 16716 - secretRef: 16717 - description: |- 16718 - SecretRef can be given the name of a secret containing 16719 - credentials to use for the image registry. The secret should be 16720 - created with `kubectl create secret docker-registry`, or the 16721 - equivalent. 16722 - properties: 16723 - name: 16724 - description: Name of the referent. 16725 + observedGeneration: 16726 + description: |- 16727 + observedGeneration represents the .metadata.generation that the condition was set based upon. 16728 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 16729 + with respect to the current state of the instance. 16730 + format: int64 16731 + minimum: 0 16732 + type: integer 16733 + reason: 16734 + description: |- 16735 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 16736 + Producers of specific condition types may define expected values and meanings for this field, 16737 + and whether the values are considered a guaranteed API. 16738 + The value should be a CamelCase string. 16739 + This field may not be empty. 16740 + maxLength: 1024 16741 + minLength: 1 16742 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 16743 + type: string 16744 + status: 16745 + description: status of the condition, one of True, False, Unknown. 16746 + enum: 16747 + - "True" 16748 + - "False" 16749 + - Unknown 16750 + type: string 16751 + type: 16752 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 16753 + maxLength: 316 16754 + 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])$ 16755 type: string 16756 required: 16757 - - name 16758 + - lastTransitionTime 16759 + - message 16760 + - reason 16761 + - status 16762 + - type 16763 type: object 16764 - serviceAccountName: 16765 - description: |- 16766 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 16767 - the image pull if the service account has attached pull secrets. 16768 - maxLength: 253 16769 - type: string 16770 - suspend: 16771 - description: |- 16772 - This flag tells the controller to suspend subsequent image scans. 16773 - It does not apply to already started scans. Defaults to false. 16774 - type: boolean 16775 - timeout: 16776 - description: |- 16777 - Timeout for image scanning. 16778 - Defaults to 'Interval' duration. 16779 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 16780 - type: string 16781 - required: 16782 - - image 16783 - - interval 16784 - type: object 16785 - status: 16786 - default: 16787 - observedGeneration: -1 16788 - description: ImageRepositoryStatus defines the observed state of ImageRepository 16789 - properties: 16790 - canonicalImageName: 16791 - description: |- 16792 - CanonicalName is the name of the image repository with all the 16793 - implied bits made explicit; e.g., `docker.io/library/alpine` 16794 - rather than `alpine`. 16795 - type: string 16796 - conditions: 16797 - items: 16798 - description: Condition contains details for one aspect of the current state of this API Resource. 16799 + type: array 16800 + lastHandledReconcileAt: 16801 + description: |- 16802 + LastHandledReconcileAt holds the value of the most recent 16803 + reconcile request value, so a change of the annotation value 16804 + can be detected. 16805 + type: string 16806 + latestRef: 16807 + description: |- 16808 + LatestRef gives the first in the list of images scanned by 16809 + the image repository, when filtered and ordered according 16810 + to the policy. 16811 + properties: 16812 + digest: 16813 + description: Digest is the image's digest. 16814 + type: string 16815 + name: 16816 + description: Name is the bare image's name. 16817 + type: string 16818 + tag: 16819 + description: Tag is the image's tag. 16820 + type: string 16821 + required: 16822 + - name 16823 + - tag 16824 + type: object 16825 + observedGeneration: 16826 + format: int64 16827 + type: integer 16828 + observedPreviousRef: 16829 + description: |- 16830 + ObservedPreviousRef is the observed previous LatestRef. It is used 16831 + to keep track of the previous and current images. 16832 + properties: 16833 + digest: 16834 + description: Digest is the image's digest. 16835 + type: string 16836 + name: 16837 + description: Name is the bare image's name. 16838 + type: string 16839 + tag: 16840 + description: Tag is the image's tag. 16841 + type: string 16842 + required: 16843 + - name 16844 + - tag 16845 + type: object 16846 + type: object 16847 + type: object 16848 + served: true 16849 + storage: true 16850 + subresources: 16851 + status: {} 16852 + - additionalPrinterColumns: 16853 + - jsonPath: .status.latestRef.name 16854 + name: Image 16855 + type: string 16856 + - jsonPath: .status.latestRef.tag 16857 + name: Tag 16858 + type: string 16859 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 16860 + name: Ready 16861 + type: string 16862 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 16863 + name: Status 16864 + type: string 16865 + - jsonPath: .metadata.creationTimestamp 16866 + name: Age 16867 + type: date 16868 + deprecated: true 16869 + deprecationWarning: v1beta2 ImagePolicy is deprecated, upgrade to v1 16870 + name: v1beta2 16871 + schema: 16872 + openAPIV3Schema: 16873 + description: ImagePolicy is the Schema for the imagepolicies API 16874 + properties: 16875 + apiVersion: 16876 + description: |- 16877 + APIVersion defines the versioned schema of this representation of an object. 16878 + Servers should convert recognized schemas to the latest internal value, and 16879 + may reject unrecognized values. 16880 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 16881 + type: string 16882 + kind: 16883 + description: |- 16884 + Kind is a string value representing the REST resource this object represents. 16885 + Servers may infer this from the endpoint the client submits requests to. 16886 + Cannot be updated. 16887 + In CamelCase. 16888 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 16889 + type: string 16890 + metadata: 16891 + type: object 16892 + spec: 16893 + description: |- 16894 + ImagePolicySpec defines the parameters for calculating the 16895 + ImagePolicy. 16896 + properties: 16897 + digestReflectionPolicy: 16898 + default: Never 16899 + description: |- 16900 + DigestReflectionPolicy governs the setting of the `.status.latestRef.digest` field. 16901 + 16902 + Never: The digest field will always be set to the empty string. 16903 + 16904 + IfNotPresent: The digest field will be set to the digest of the elected 16905 + latest image if the field is empty and the image did not change. 16906 + 16907 + Always: The digest field will always be set to the digest of the elected 16908 + latest image. 16909 + 16910 + Default: Never. 16911 + enum: 16912 + - Always 16913 + - IfNotPresent 16914 + - Never 16915 + type: string 16916 + filterTags: 16917 + description: |- 16918 + FilterTags enables filtering for only a subset of tags based on a set of 16919 + rules. If no rules are provided, all the tags from the repository will be 16920 + ordered and compared. 16921 + properties: 16922 + extract: 16923 + description: |- 16924 + Extract allows a capture group to be extracted from the specified regular 16925 + expression pattern, useful before tag evaluation. 16926 + type: string 16927 + pattern: 16928 + description: |- 16929 + Pattern specifies a regular expression pattern used to filter for image 16930 + tags. 16931 + type: string 16932 + type: object 16933 + imageRepositoryRef: 16934 + description: |- 16935 + ImageRepositoryRef points at the object specifying the image 16936 + being scanned 16937 + properties: 16938 + name: 16939 + description: Name of the referent. 16940 + type: string 16941 + namespace: 16942 + description: Namespace of the referent, when not specified it 16943 + acts as LocalObjectReference. 16944 + type: string 16945 + required: 16946 + - name 16947 + type: object 16948 + interval: 16949 + description: |- 16950 + Interval is the length of time to wait between 16951 + refreshing the digest of the latest tag when the 16952 + reflection policy is set to "Always". 16953 + 16954 + Defaults to 10m. 16955 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 16956 + type: string 16957 + policy: 16958 + description: |- 16959 + Policy gives the particulars of the policy to be followed in 16960 + selecting the most recent image 16961 + properties: 16962 + alphabetical: 16963 + description: Alphabetical set of rules to use for alphabetical 16964 + ordering of the tags. 16965 properties: 16966 - lastTransitionTime: 16967 - description: |- 16968 - lastTransitionTime is the last time the condition transitioned from one status to another. 16969 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 16970 - format: date-time 16971 - type: string 16972 - message: 16973 + order: 16974 + default: asc 16975 description: |- 16976 - message is a human readable message indicating details about the transition. 16977 - This may be an empty string. 16978 - maxLength: 32768 16979 + Order specifies the sorting order of the tags. Given the letters of the 16980 + alphabet as tags, ascending order would select Z, and descending order 16981 + would select A. 16982 + enum: 16983 + - asc 16984 + - desc 16985 type: string 16986 - observedGeneration: 16987 - description: |- 16988 - observedGeneration represents the .metadata.generation that the condition was set based upon. 16989 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 16990 - with respect to the current state of the instance. 16991 - format: int64 16992 - minimum: 0 16993 - type: integer 16994 - reason: 16995 + type: object 16996 + numerical: 16997 + description: Numerical set of rules to use for numerical ordering 16998 + of the tags. 16999 + properties: 17000 + order: 17001 + default: asc 17002 description: |- 17003 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 17004 - Producers of specific condition types may define expected values and meanings for this field, 17005 - and whether the values are considered a guaranteed API. 17006 - The value should be a CamelCase string. 17007 - This field may not be empty. 17008 - maxLength: 1024 17009 - minLength: 1 17010 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 17011 - type: string 17012 - status: 17013 - description: status of the condition, one of True, False, Unknown. 17014 + Order specifies the sorting order of the tags. Given the integer values 17015 + from 0 to 9 as tags, ascending order would select 9, and descending order 17016 + would select 0. 17017 enum: 17018 - - "True" 17019 - - "False" 17020 - - Unknown 17021 + - asc 17022 + - desc 17023 type: string 17024 - type: 17025 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 17026 - maxLength: 316 17027 - 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])$ 17028 + type: object 17029 + semver: 17030 + description: |- 17031 + SemVer gives a semantic version range to check against the tags 17032 + available. 17033 + properties: 17034 + range: 17035 + description: |- 17036 + Range gives a semver range for the image tag; the highest 17037 + version within the range that's a tag yields the latest image. 17038 type: string 17039 required: 17040 - - lastTransitionTime 17041 - - message 17042 - - reason 17043 - - status 17044 - - type 17045 + - range 17046 type: object 17047 - type: array 17048 - lastHandledReconcileAt: 17049 - description: |- 17050 - LastHandledReconcileAt holds the value of the most recent 17051 - reconcile request value, so a change of the annotation value 17052 - can be detected. 17053 - type: string 17054 - lastScanResult: 17055 - description: LastScanResult contains the number of fetched tags. 17056 + type: object 17057 + suspend: 17058 + description: |- 17059 + This flag tells the controller to suspend subsequent policy reconciliations. 17060 + It does not apply to already started reconciliations. Defaults to false. 17061 + type: boolean 17062 + required: 17063 + - imageRepositoryRef 17064 + - policy 17065 + type: object 17066 + x-kubernetes-validations: 17067 + - message: spec.interval is only accepted when spec.digestReflectionPolicy 17068 + is set to 'Always' 17069 + rule: '!has(self.interval) || (has(self.digestReflectionPolicy) && self.digestReflectionPolicy 17070 + == ''Always'')' 17071 + - message: spec.interval must be set when spec.digestReflectionPolicy 17072 + is set to 'Always' 17073 + rule: has(self.interval) || !has(self.digestReflectionPolicy) || self.digestReflectionPolicy 17074 + != 'Always' 17075 + status: 17076 + default: 17077 + observedGeneration: -1 17078 + description: ImagePolicyStatus defines the observed state of ImagePolicy 17079 + properties: 17080 + conditions: 17081 + items: 17082 + description: Condition contains details for one aspect of the current 17083 + state of this API Resource. 17084 properties: 17085 - latestTags: 17086 + lastTransitionTime: 17087 description: |- 17088 - LatestTags is a small sample of the tags found in the last scan. 17089 - It's the first 10 tags when sorting all the tags in descending 17090 - alphabetical order. 17091 - items: 17092 - type: string 17093 - type: array 17094 - revision: 17095 - description: Revision is a stable hash of the scanned tags. 17096 + lastTransitionTime is the last time the condition transitioned from one status to another. 17097 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 17098 + format: date-time 17099 + type: string 17100 + message: 17101 + description: |- 17102 + message is a human readable message indicating details about the transition. 17103 + This may be an empty string. 17104 + maxLength: 32768 17105 + type: string 17106 + observedGeneration: 17107 + description: |- 17108 + observedGeneration represents the .metadata.generation that the condition was set based upon. 17109 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 17110 + with respect to the current state of the instance. 17111 + format: int64 17112 + minimum: 0 17113 + type: integer 17114 + reason: 17115 + description: |- 17116 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 17117 + Producers of specific condition types may define expected values and meanings for this field, 17118 + and whether the values are considered a guaranteed API. 17119 + The value should be a CamelCase string. 17120 + This field may not be empty. 17121 + maxLength: 1024 17122 + minLength: 1 17123 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 17124 type: string 17125 - scanTime: 17126 - description: ScanTime is the time when the last scan was performed. 17127 - format: date-time 17128 + status: 17129 + description: status of the condition, one of True, False, Unknown. 17130 + enum: 17131 + - "True" 17132 + - "False" 17133 + - Unknown 17134 + type: string 17135 + type: 17136 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 17137 + maxLength: 316 17138 + 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])$ 17139 type: string 17140 - tagCount: 17141 - description: TagCount is the number of tags found in the last scan. 17142 - type: integer 17143 required: 17144 - - tagCount 17145 + - lastTransitionTime 17146 + - message 17147 + - reason 17148 + - status 17149 + - type 17150 type: object 17151 - observedExclusionList: 17152 - description: |- 17153 - ObservedExclusionList is a list of observed exclusion list. It reflects 17154 - the exclusion rules used for the observed scan result in 17155 - spec.lastScanResult. 17156 - items: 17157 - type: string 17158 - type: array 17159 - observedGeneration: 17160 - description: ObservedGeneration is the last reconciled generation. 17161 - format: int64 17162 - type: integer 17163 - type: object 17164 - type: object 17165 - served: true 17166 - storage: true 17167 - subresources: 17168 - status: {} 17169 - - additionalPrinterColumns: 17170 - - jsonPath: .spec.image 17171 - name: Image 17172 - type: string 17173 - - jsonPath: .status.lastScanResult.tagCount 17174 - name: Tags 17175 - type: string 17176 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 17177 - name: Ready 17178 - type: string 17179 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 17180 - name: Status 17181 - type: string 17182 - - jsonPath: .status.lastScanResult.scanTime 17183 - name: Last scan 17184 - priority: 1 17185 - type: string 17186 - - jsonPath: .metadata.creationTimestamp 17187 - name: Age 17188 - type: date 17189 - deprecated: true 17190 - deprecationWarning: v1beta2 ImageRepository is deprecated, upgrade to v1 17191 - name: v1beta2 17192 - schema: 17193 - openAPIV3Schema: 17194 - description: ImageRepository is the Schema for the imagerepositories API 17195 - properties: 17196 - apiVersion: 17197 - description: |- 17198 - APIVersion defines the versioned schema of this representation of an object. 17199 - Servers should convert recognized schemas to the latest internal value, and 17200 - may reject unrecognized values. 17201 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 17202 - type: string 17203 - kind: 17204 - description: |- 17205 - Kind is a string value representing the REST resource this object represents. 17206 - Servers may infer this from the endpoint the client submits requests to. 17207 - Cannot be updated. 17208 - In CamelCase. 17209 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 17210 - type: string 17211 - metadata: 17212 - type: object 17213 - spec: 17214 - description: |- 17215 - ImageRepositorySpec defines the parameters for scanning an image 17216 - repository, e.g., `fluxcd/flux`. 17217 - properties: 17218 - accessFrom: 17219 - description: |- 17220 - AccessFrom defines an ACL for allowing cross-namespace references 17221 - to the ImageRepository object based on the caller's namespace labels. 17222 - properties: 17223 - namespaceSelectors: 17224 + type: array 17225 + lastHandledReconcileAt: 17226 + description: |- 17227 + LastHandledReconcileAt holds the value of the most recent 17228 + reconcile request value, so a change of the annotation value 17229 + can be detected. 17230 + type: string 17231 + latestRef: 17232 + description: |- 17233 + LatestRef gives the first in the list of images scanned by 17234 + the image repository, when filtered and ordered according 17235 + to the policy. 17236 + properties: 17237 + digest: 17238 + description: Digest is the image's digest. 17239 + type: string 17240 + name: 17241 + description: Name is the bare image's name. 17242 + type: string 17243 + tag: 17244 + description: Tag is the image's tag. 17245 + type: string 17246 + required: 17247 + - name 17248 + - tag 17249 + type: object 17250 + observedGeneration: 17251 + format: int64 17252 + type: integer 17253 + observedPreviousRef: 17254 + description: |- 17255 + ObservedPreviousRef is the observed previous LatestRef. It is used 17256 + to keep track of the previous and current images. 17257 + properties: 17258 + digest: 17259 + description: Digest is the image's digest. 17260 + type: string 17261 + name: 17262 + description: Name is the bare image's name. 17263 + type: string 17264 + tag: 17265 + description: Tag is the image's tag. 17266 + type: string 17267 + required: 17268 + - name 17269 + - tag 17270 + type: object 17271 + type: object 17272 + type: object 17273 + served: true 17274 + storage: false 17275 + subresources: 17276 + status: {} 17277 +--- 17278 +apiVersion: apiextensions.k8s.io/v1 17279 +kind: CustomResourceDefinition 17280 +metadata: 17281 + annotations: 17282 + controller-gen.kubebuilder.io/version: v0.19.0 17283 + labels: 17284 + app.kubernetes.io/component: image-reflector-controller 17285 + app.kubernetes.io/instance: flux-system 17286 + app.kubernetes.io/part-of: flux 17287 + app.kubernetes.io/version: v2.8.0 17288 + name: imagerepositories.image.toolkit.fluxcd.io 17289 +spec: 17290 + group: image.toolkit.fluxcd.io 17291 + names: 17292 + kind: ImageRepository 17293 + listKind: ImageRepositoryList 17294 + plural: imagerepositories 17295 + shortNames: 17296 + - imgrepo 17297 + - imagerepo 17298 + singular: imagerepository 17299 + scope: Namespaced 17300 + versions: 17301 + - additionalPrinterColumns: 17302 + - jsonPath: .spec.image 17303 + name: Image 17304 + type: string 17305 + - jsonPath: .status.lastScanResult.tagCount 17306 + name: Tags 17307 + type: string 17308 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 17309 + name: Ready 17310 + type: string 17311 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 17312 + name: Status 17313 + type: string 17314 + - jsonPath: .status.lastScanResult.scanTime 17315 + name: Last scan 17316 + priority: 1 17317 + type: string 17318 + - jsonPath: .metadata.creationTimestamp 17319 + name: Age 17320 + type: date 17321 + name: v1 17322 + schema: 17323 + openAPIV3Schema: 17324 + description: ImageRepository is the Schema for the imagerepositories API 17325 + properties: 17326 + apiVersion: 17327 + description: |- 17328 + APIVersion defines the versioned schema of this representation of an object. 17329 + Servers should convert recognized schemas to the latest internal value, and 17330 + may reject unrecognized values. 17331 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 17332 + type: string 17333 + kind: 17334 + description: |- 17335 + Kind is a string value representing the REST resource this object represents. 17336 + Servers may infer this from the endpoint the client submits requests to. 17337 + Cannot be updated. 17338 + In CamelCase. 17339 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 17340 + type: string 17341 + metadata: 17342 + type: object 17343 + spec: 17344 + description: |- 17345 + ImageRepositorySpec defines the parameters for scanning an image 17346 + repository, e.g., `fluxcd/flux`. 17347 + properties: 17348 + accessFrom: 17349 + description: |- 17350 + AccessFrom defines an ACL for allowing cross-namespace references 17351 + to the ImageRepository object based on the caller's namespace labels. 17352 + properties: 17353 + namespaceSelectors: 17354 + description: |- 17355 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 17356 + Items in this list are evaluated using a logical OR operation. 17357 + items: 17358 description: |- 17359 - NamespaceSelectors is the list of namespace selectors to which this ACL applies. 17360 - Items in this list are evaluated using a logical OR operation. 17361 - items: 17362 - description: |- 17363 - NamespaceSelector selects the namespaces to which this ACL applies. 17364 - An empty map of MatchLabels matches all namespaces in a cluster. 17365 - properties: 17366 - matchLabels: 17367 - additionalProperties: 17368 - type: string 17369 - description: |- 17370 - MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 17371 - map is equivalent to an element of matchExpressions, whose key field is "key", the 17372 - operator is "In", and the values array contains only "value". The requirements are ANDed. 17373 - type: object 17374 - type: object 17375 - type: array 17376 - required: 17377 - - namespaceSelectors 17378 - type: object 17379 - certSecretRef: 17380 - description: |- 17381 - CertSecretRef can be given the name of a Secret containing 17382 - either or both of 17383 + NamespaceSelector selects the namespaces to which this ACL applies. 17384 + An empty map of MatchLabels matches all namespaces in a cluster. 17385 + properties: 17386 + matchLabels: 17387 + additionalProperties: 17388 + type: string 17389 + description: |- 17390 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 17391 + map is equivalent to an element of matchExpressions, whose key field is "key", the 17392 + operator is "In", and the values array contains only "value". The requirements are ANDed. 17393 + type: object 17394 + type: object 17395 + type: array 17396 + required: 17397 + - namespaceSelectors 17398 + type: object 17399 + certSecretRef: 17400 + description: |- 17401 + CertSecretRef can be given the name of a Secret containing 17402 + either or both of 17403 17404 - - a PEM-encoded client certificate (`tls.crt`) and private 17405 - key (`tls.key`); 17406 - - a PEM-encoded CA certificate (`ca.crt`) 17407 + - a PEM-encoded client certificate (`tls.crt`) and private 17408 + key (`tls.key`); 17409 + - a PEM-encoded CA certificate (`ca.crt`) 17410 17411 - and whichever are supplied, will be used for connecting to the 17412 - registry. The client cert and key are useful if you are 17413 - authenticating with a certificate; the CA cert is useful if 17414 - you are using a self-signed server certificate. The Secret must 17415 - be of type `Opaque` or `kubernetes.io/tls`. 17416 + and whichever are supplied, will be used for connecting to the 17417 + registry. The client cert and key are useful if you are 17418 + authenticating with a certificate; the CA cert is useful if 17419 + you are using a self-signed server certificate. The Secret must 17420 + be of type `Opaque` or `kubernetes.io/tls`. 17421 17422 - Note: Support for the `caFile`, `certFile` and `keyFile` keys has 17423 - been deprecated. 17424 + Note: Support for the `caFile`, `certFile` and `keyFile` keys has 17425 + been deprecated. 17426 + properties: 17427 + name: 17428 + description: Name of the referent. 17429 + type: string 17430 + required: 17431 + - name 17432 + type: object 17433 + exclusionList: 17434 + default: 17435 + - ^.*\.sig$ 17436 + description: |- 17437 + ExclusionList is a list of regex strings used to exclude certain tags 17438 + from being stored in the database. 17439 + items: 17440 + type: string 17441 + maxItems: 25 17442 + type: array 17443 + image: 17444 + description: Image is the name of the image repository 17445 + type: string 17446 + insecure: 17447 + description: Insecure allows connecting to a non-TLS HTTP container 17448 + registry. 17449 + type: boolean 17450 + interval: 17451 + description: |- 17452 + Interval is the length of time to wait between 17453 + scans of the image repository. 17454 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 17455 + type: string 17456 + provider: 17457 + default: generic 17458 + description: |- 17459 + The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 17460 + When not specified, defaults to 'generic'. 17461 + enum: 17462 + - generic 17463 + - aws 17464 + - azure 17465 + - gcp 17466 + type: string 17467 + proxySecretRef: 17468 + description: |- 17469 + ProxySecretRef specifies the Secret containing the proxy configuration 17470 + to use while communicating with the container registry. 17471 + properties: 17472 + name: 17473 + description: Name of the referent. 17474 + type: string 17475 + required: 17476 + - name 17477 + type: object 17478 + secretRef: 17479 + description: |- 17480 + SecretRef can be given the name of a secret containing 17481 + credentials to use for the image registry. The secret should be 17482 + created with `kubectl create secret docker-registry`, or the 17483 + equivalent. 17484 + properties: 17485 + name: 17486 + description: Name of the referent. 17487 + type: string 17488 + required: 17489 + - name 17490 + type: object 17491 + serviceAccountName: 17492 + description: |- 17493 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 17494 + the image pull if the service account has attached pull secrets. 17495 + maxLength: 253 17496 + type: string 17497 + suspend: 17498 + description: |- 17499 + This flag tells the controller to suspend subsequent image scans. 17500 + It does not apply to already started scans. Defaults to false. 17501 + type: boolean 17502 + timeout: 17503 + description: |- 17504 + Timeout for image scanning. 17505 + Defaults to 'Interval' duration. 17506 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 17507 + type: string 17508 + required: 17509 + - image 17510 + - interval 17511 + type: object 17512 + status: 17513 + default: 17514 + observedGeneration: -1 17515 + description: ImageRepositoryStatus defines the observed state of ImageRepository 17516 + properties: 17517 + canonicalImageName: 17518 + description: |- 17519 + CanonicalName is the name of the image repository with all the 17520 + implied bits made explicit; e.g., `docker.io/library/alpine` 17521 + rather than `alpine`. 17522 + type: string 17523 + conditions: 17524 + items: 17525 + description: Condition contains details for one aspect of the current 17526 + state of this API Resource. 17527 properties: 17528 - name: 17529 - description: Name of the referent. 17530 + lastTransitionTime: 17531 + description: |- 17532 + lastTransitionTime is the last time the condition transitioned from one status to another. 17533 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 17534 + format: date-time 17535 type: string 17536 - required: 17537 - - name 17538 - type: object 17539 - exclusionList: 17540 - default: 17541 - - ^.*\.sig$ 17542 - description: |- 17543 - ExclusionList is a list of regex strings used to exclude certain tags 17544 - from being stored in the database. 17545 - items: 17546 - type: string 17547 - maxItems: 25 17548 - type: array 17549 - image: 17550 - description: Image is the name of the image repository 17551 - type: string 17552 - insecure: 17553 - description: Insecure allows connecting to a non-TLS HTTP container registry. 17554 - type: boolean 17555 - interval: 17556 - description: |- 17557 - Interval is the length of time to wait between 17558 - scans of the image repository. 17559 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 17560 - type: string 17561 - provider: 17562 - default: generic 17563 - description: |- 17564 - The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 17565 - When not specified, defaults to 'generic'. 17566 - enum: 17567 - - generic 17568 - - aws 17569 - - azure 17570 - - gcp 17571 - type: string 17572 - proxySecretRef: 17573 - description: |- 17574 - ProxySecretRef specifies the Secret containing the proxy configuration 17575 - to use while communicating with the container registry. 17576 - properties: 17577 - name: 17578 - description: Name of the referent. 17579 + message: 17580 + description: |- 17581 + message is a human readable message indicating details about the transition. 17582 + This may be an empty string. 17583 + maxLength: 32768 17584 type: string 17585 - required: 17586 - - name 17587 - type: object 17588 - secretRef: 17589 - description: |- 17590 - SecretRef can be given the name of a secret containing 17591 - credentials to use for the image registry. The secret should be 17592 - created with `kubectl create secret docker-registry`, or the 17593 - equivalent. 17594 - properties: 17595 - name: 17596 - description: Name of the referent. 17597 + observedGeneration: 17598 + description: |- 17599 + observedGeneration represents the .metadata.generation that the condition was set based upon. 17600 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 17601 + with respect to the current state of the instance. 17602 + format: int64 17603 + minimum: 0 17604 + type: integer 17605 + reason: 17606 + description: |- 17607 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 17608 + Producers of specific condition types may define expected values and meanings for this field, 17609 + and whether the values are considered a guaranteed API. 17610 + The value should be a CamelCase string. 17611 + This field may not be empty. 17612 + maxLength: 1024 17613 + minLength: 1 17614 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 17615 + type: string 17616 + status: 17617 + description: status of the condition, one of True, False, Unknown. 17618 + enum: 17619 + - "True" 17620 + - "False" 17621 + - Unknown 17622 + type: string 17623 + type: 17624 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 17625 + maxLength: 316 17626 + 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])$ 17627 type: string 17628 required: 17629 - - name 17630 + - lastTransitionTime 17631 + - message 17632 + - reason 17633 + - status 17634 + - type 17635 type: object 17636 - serviceAccountName: 17637 - description: |- 17638 - ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 17639 - the image pull if the service account has attached pull secrets. 17640 - maxLength: 253 17641 - type: string 17642 - suspend: 17643 - description: |- 17644 - This flag tells the controller to suspend subsequent image scans. 17645 - It does not apply to already started scans. Defaults to false. 17646 - type: boolean 17647 - timeout: 17648 - description: |- 17649 - Timeout for image scanning. 17650 - Defaults to 'Interval' duration. 17651 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 17652 - type: string 17653 - required: 17654 - - image 17655 - - interval 17656 - type: object 17657 - status: 17658 - default: 17659 - observedGeneration: -1 17660 - description: ImageRepositoryStatus defines the observed state of ImageRepository 17661 - properties: 17662 - canonicalImageName: 17663 - description: |- 17664 - CanonicalName is the name of the image repository with all the 17665 - implied bits made explicit; e.g., `docker.io/library/alpine` 17666 - rather than `alpine`. 17667 - type: string 17668 - conditions: 17669 - items: 17670 - description: Condition contains details for one aspect of the current state of this API Resource. 17671 - properties: 17672 - lastTransitionTime: 17673 - description: |- 17674 - lastTransitionTime is the last time the condition transitioned from one status to another. 17675 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 17676 - format: date-time 17677 - type: string 17678 - message: 17679 - description: |- 17680 - message is a human readable message indicating details about the transition. 17681 - This may be an empty string. 17682 - maxLength: 32768 17683 - type: string 17684 - observedGeneration: 17685 - description: |- 17686 - observedGeneration represents the .metadata.generation that the condition was set based upon. 17687 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 17688 - with respect to the current state of the instance. 17689 - format: int64 17690 - minimum: 0 17691 - type: integer 17692 - reason: 17693 - description: |- 17694 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 17695 - Producers of specific condition types may define expected values and meanings for this field, 17696 - and whether the values are considered a guaranteed API. 17697 - The value should be a CamelCase string. 17698 - This field may not be empty. 17699 - maxLength: 1024 17700 - minLength: 1 17701 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 17702 - type: string 17703 - status: 17704 - description: status of the condition, one of True, False, Unknown. 17705 - enum: 17706 - - "True" 17707 - - "False" 17708 - - Unknown 17709 - type: string 17710 - type: 17711 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 17712 - maxLength: 316 17713 - 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])$ 17714 - type: string 17715 - required: 17716 - - lastTransitionTime 17717 - - message 17718 - - reason 17719 - - status 17720 - - type 17721 - type: object 17722 - type: array 17723 - lastHandledReconcileAt: 17724 - description: |- 17725 - LastHandledReconcileAt holds the value of the most recent 17726 - reconcile request value, so a change of the annotation value 17727 - can be detected. 17728 - type: string 17729 - lastScanResult: 17730 - description: LastScanResult contains the number of fetched tags. 17731 + type: array 17732 + lastHandledReconcileAt: 17733 + description: |- 17734 + LastHandledReconcileAt holds the value of the most recent 17735 + reconcile request value, so a change of the annotation value 17736 + can be detected. 17737 + type: string 17738 + lastScanResult: 17739 + description: LastScanResult contains the number of fetched tags. 17740 + properties: 17741 + latestTags: 17742 + description: |- 17743 + LatestTags is a small sample of the tags found in the last scan. 17744 + It's the first 10 tags when sorting all the tags in descending 17745 + alphabetical order. 17746 + items: 17747 + type: string 17748 + type: array 17749 + revision: 17750 + description: Revision is a stable hash of the scanned tags. 17751 + type: string 17752 + scanTime: 17753 + description: ScanTime is the time when the last scan was performed. 17754 + format: date-time 17755 + type: string 17756 + tagCount: 17757 + description: TagCount is the number of tags found in the last 17758 + scan. 17759 + type: integer 17760 + required: 17761 + - tagCount 17762 + type: object 17763 + observedExclusionList: 17764 + description: |- 17765 + ObservedExclusionList is a list of observed exclusion list. It reflects 17766 + the exclusion rules used for the observed scan result in 17767 + spec.lastScanResult. 17768 + items: 17769 + type: string 17770 + type: array 17771 + observedGeneration: 17772 + description: ObservedGeneration is the last reconciled generation. 17773 + format: int64 17774 + type: integer 17775 + type: object 17776 + type: object 17777 + served: true 17778 + storage: true 17779 + subresources: 17780 + status: {} 17781 + - additionalPrinterColumns: 17782 + - jsonPath: .spec.image 17783 + name: Image 17784 + type: string 17785 + - jsonPath: .status.lastScanResult.tagCount 17786 + name: Tags 17787 + type: string 17788 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 17789 + name: Ready 17790 + type: string 17791 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 17792 + name: Status 17793 + type: string 17794 + - jsonPath: .status.lastScanResult.scanTime 17795 + name: Last scan 17796 + priority: 1 17797 + type: string 17798 + - jsonPath: .metadata.creationTimestamp 17799 + name: Age 17800 + type: date 17801 + deprecated: true 17802 + deprecationWarning: v1beta2 ImageRepository is deprecated, upgrade to v1 17803 + name: v1beta2 17804 + schema: 17805 + openAPIV3Schema: 17806 + description: ImageRepository is the Schema for the imagerepositories API 17807 + properties: 17808 + apiVersion: 17809 + description: |- 17810 + APIVersion defines the versioned schema of this representation of an object. 17811 + Servers should convert recognized schemas to the latest internal value, and 17812 + may reject unrecognized values. 17813 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 17814 + type: string 17815 + kind: 17816 + description: |- 17817 + Kind is a string value representing the REST resource this object represents. 17818 + Servers may infer this from the endpoint the client submits requests to. 17819 + Cannot be updated. 17820 + In CamelCase. 17821 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 17822 + type: string 17823 + metadata: 17824 + type: object 17825 + spec: 17826 + description: |- 17827 + ImageRepositorySpec defines the parameters for scanning an image 17828 + repository, e.g., `fluxcd/flux`. 17829 + properties: 17830 + accessFrom: 17831 + description: |- 17832 + AccessFrom defines an ACL for allowing cross-namespace references 17833 + to the ImageRepository object based on the caller's namespace labels. 17834 + properties: 17835 + namespaceSelectors: 17836 + description: |- 17837 + NamespaceSelectors is the list of namespace selectors to which this ACL applies. 17838 + Items in this list are evaluated using a logical OR operation. 17839 + items: 17840 + description: |- 17841 + NamespaceSelector selects the namespaces to which this ACL applies. 17842 + An empty map of MatchLabels matches all namespaces in a cluster. 17843 + properties: 17844 + matchLabels: 17845 + additionalProperties: 17846 + type: string 17847 + description: |- 17848 + MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 17849 + map is equivalent to an element of matchExpressions, whose key field is "key", the 17850 + operator is "In", and the values array contains only "value". The requirements are ANDed. 17851 + type: object 17852 + type: object 17853 + type: array 17854 + required: 17855 + - namespaceSelectors 17856 + type: object 17857 + certSecretRef: 17858 + description: |- 17859 + CertSecretRef can be given the name of a Secret containing 17860 + either or both of 17861 + 17862 + - a PEM-encoded client certificate (`tls.crt`) and private 17863 + key (`tls.key`); 17864 + - a PEM-encoded CA certificate (`ca.crt`) 17865 + 17866 + and whichever are supplied, will be used for connecting to the 17867 + registry. The client cert and key are useful if you are 17868 + authenticating with a certificate; the CA cert is useful if 17869 + you are using a self-signed server certificate. The Secret must 17870 + be of type `Opaque` or `kubernetes.io/tls`. 17871 + 17872 + Note: Support for the `caFile`, `certFile` and `keyFile` keys has 17873 + been deprecated. 17874 + properties: 17875 + name: 17876 + description: Name of the referent. 17877 + type: string 17878 + required: 17879 + - name 17880 + type: object 17881 + exclusionList: 17882 + default: 17883 + - ^.*\.sig$ 17884 + description: |- 17885 + ExclusionList is a list of regex strings used to exclude certain tags 17886 + from being stored in the database. 17887 + items: 17888 + type: string 17889 + maxItems: 25 17890 + type: array 17891 + image: 17892 + description: Image is the name of the image repository 17893 + type: string 17894 + insecure: 17895 + description: Insecure allows connecting to a non-TLS HTTP container 17896 + registry. 17897 + type: boolean 17898 + interval: 17899 + description: |- 17900 + Interval is the length of time to wait between 17901 + scans of the image repository. 17902 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 17903 + type: string 17904 + provider: 17905 + default: generic 17906 + description: |- 17907 + The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. 17908 + When not specified, defaults to 'generic'. 17909 + enum: 17910 + - generic 17911 + - aws 17912 + - azure 17913 + - gcp 17914 + type: string 17915 + proxySecretRef: 17916 + description: |- 17917 + ProxySecretRef specifies the Secret containing the proxy configuration 17918 + to use while communicating with the container registry. 17919 + properties: 17920 + name: 17921 + description: Name of the referent. 17922 + type: string 17923 + required: 17924 + - name 17925 + type: object 17926 + secretRef: 17927 + description: |- 17928 + SecretRef can be given the name of a secret containing 17929 + credentials to use for the image registry. The secret should be 17930 + created with `kubectl create secret docker-registry`, or the 17931 + equivalent. 17932 + properties: 17933 + name: 17934 + description: Name of the referent. 17935 + type: string 17936 + required: 17937 + - name 17938 + type: object 17939 + serviceAccountName: 17940 + description: |- 17941 + ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate 17942 + the image pull if the service account has attached pull secrets. 17943 + maxLength: 253 17944 + type: string 17945 + suspend: 17946 + description: |- 17947 + This flag tells the controller to suspend subsequent image scans. 17948 + It does not apply to already started scans. Defaults to false. 17949 + type: boolean 17950 + timeout: 17951 + description: |- 17952 + Timeout for image scanning. 17953 + Defaults to 'Interval' duration. 17954 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ 17955 + type: string 17956 + required: 17957 + - image 17958 + - interval 17959 + type: object 17960 + status: 17961 + default: 17962 + observedGeneration: -1 17963 + description: ImageRepositoryStatus defines the observed state of ImageRepository 17964 + properties: 17965 + canonicalImageName: 17966 + description: |- 17967 + CanonicalName is the name of the image repository with all the 17968 + implied bits made explicit; e.g., `docker.io/library/alpine` 17969 + rather than `alpine`. 17970 + type: string 17971 + conditions: 17972 + items: 17973 + description: Condition contains details for one aspect of the current 17974 + state of this API Resource. 17975 properties: 17976 - latestTags: 17977 + lastTransitionTime: 17978 description: |- 17979 - LatestTags is a small sample of the tags found in the last scan. 17980 - It's the first 10 tags when sorting all the tags in descending 17981 - alphabetical order. 17982 - items: 17983 - type: string 17984 - type: array 17985 - revision: 17986 - description: Revision is a stable hash of the scanned tags. 17987 - type: string 17988 - scanTime: 17989 - description: ScanTime is the time when the last scan was performed. 17990 + lastTransitionTime is the last time the condition transitioned from one status to another. 17991 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 17992 format: date-time 17993 type: string 17994 - tagCount: 17995 - description: TagCount is the number of tags found in the last scan. 17996 + message: 17997 + description: |- 17998 + message is a human readable message indicating details about the transition. 17999 + This may be an empty string. 18000 + maxLength: 32768 18001 + type: string 18002 + observedGeneration: 18003 + description: |- 18004 + observedGeneration represents the .metadata.generation that the condition was set based upon. 18005 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 18006 + with respect to the current state of the instance. 18007 + format: int64 18008 + minimum: 0 18009 type: integer 18010 + reason: 18011 + description: |- 18012 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 18013 + Producers of specific condition types may define expected values and meanings for this field, 18014 + and whether the values are considered a guaranteed API. 18015 + The value should be a CamelCase string. 18016 + This field may not be empty. 18017 + maxLength: 1024 18018 + minLength: 1 18019 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 18020 + type: string 18021 + status: 18022 + description: status of the condition, one of True, False, Unknown. 18023 + enum: 18024 + - "True" 18025 + - "False" 18026 + - Unknown 18027 + type: string 18028 + type: 18029 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 18030 + maxLength: 316 18031 + 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])$ 18032 + type: string 18033 required: 18034 - - tagCount 18035 + - lastTransitionTime 18036 + - message 18037 + - reason 18038 + - status 18039 + - type 18040 type: object 18041 - observedExclusionList: 18042 - description: |- 18043 - ObservedExclusionList is a list of observed exclusion list. It reflects 18044 - the exclusion rules used for the observed scan result in 18045 - spec.lastScanResult. 18046 - items: 18047 - type: string 18048 - type: array 18049 - observedGeneration: 18050 - description: ObservedGeneration is the last reconciled generation. 18051 - format: int64 18052 - type: integer 18053 - type: object 18054 - type: object 18055 - served: true 18056 - storage: false 18057 - subresources: 18058 - status: {} 18059 + type: array 18060 + lastHandledReconcileAt: 18061 + description: |- 18062 + LastHandledReconcileAt holds the value of the most recent 18063 + reconcile request value, so a change of the annotation value 18064 + can be detected. 18065 + type: string 18066 + lastScanResult: 18067 + description: LastScanResult contains the number of fetched tags. 18068 + properties: 18069 + latestTags: 18070 + description: |- 18071 + LatestTags is a small sample of the tags found in the last scan. 18072 + It's the first 10 tags when sorting all the tags in descending 18073 + alphabetical order. 18074 + items: 18075 + type: string 18076 + type: array 18077 + revision: 18078 + description: Revision is a stable hash of the scanned tags. 18079 + type: string 18080 + scanTime: 18081 + description: ScanTime is the time when the last scan was performed. 18082 + format: date-time 18083 + type: string 18084 + tagCount: 18085 + description: TagCount is the number of tags found in the last 18086 + scan. 18087 + type: integer 18088 + required: 18089 + - tagCount 18090 + type: object 18091 + observedExclusionList: 18092 + description: |- 18093 + ObservedExclusionList is a list of observed exclusion list. It reflects 18094 + the exclusion rules used for the observed scan result in 18095 + spec.lastScanResult. 18096 + items: 18097 + type: string 18098 + type: array 18099 + observedGeneration: 18100 + description: ObservedGeneration is the last reconciled generation. 18101 + format: int64 18102 + type: integer 18103 + type: object 18104 + type: object 18105 + served: true 18106 + storage: false 18107 + subresources: 18108 + status: {} 18109 --- 18110 apiVersion: v1 18111 kind: ServiceAccount 18112 @@ -11157,7 +7636,7 @@ metadata: 18113 app.kubernetes.io/component: image-reflector-controller 18114 app.kubernetes.io/instance: flux-system 18115 app.kubernetes.io/part-of: flux 18116 - app.kubernetes.io/version: v2.7.5 18117 + app.kubernetes.io/version: v2.8.0 18118 name: image-reflector-controller 18119 namespace: flux-system 18120 --- 18121 @@ -11168,7 +7647,7 @@ metadata: 18122 app.kubernetes.io/component: image-reflector-controller 18123 app.kubernetes.io/instance: flux-system 18124 app.kubernetes.io/part-of: flux 18125 - app.kubernetes.io/version: v2.7.5 18126 + app.kubernetes.io/version: v2.8.0 18127 control-plane: controller 18128 name: image-reflector-controller 18129 namespace: flux-system 18130 @@ -11187,64 +7666,64 @@ spec: 18131 app.kubernetes.io/component: image-reflector-controller 18132 app.kubernetes.io/instance: flux-system 18133 app.kubernetes.io/part-of: flux 18134 - app.kubernetes.io/version: v2.7.5 18135 + app.kubernetes.io/version: v2.8.0 18136 spec: 18137 containers: 18138 - - args: 18139 - - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 18140 - - --watch-all-namespaces=true 18141 - - --log-level=info 18142 - - --log-encoding=json 18143 - - --enable-leader-election 18144 - env: 18145 - - name: RUNTIME_NAMESPACE 18146 - valueFrom: 18147 - fieldRef: 18148 - fieldPath: metadata.namespace 18149 - - name: GOMEMLIMIT 18150 - valueFrom: 18151 - resourceFieldRef: 18152 - containerName: manager 18153 - resource: limits.memory 18154 - image: ghcr.io/fluxcd/image-reflector-controller:v1.0.4 18155 - imagePullPolicy: IfNotPresent 18156 - livenessProbe: 18157 - httpGet: 18158 - path: /healthz 18159 - port: healthz 18160 - name: manager 18161 - ports: 18162 - - containerPort: 8080 18163 - name: http-prom 18164 - protocol: TCP 18165 - - containerPort: 9440 18166 - name: healthz 18167 - protocol: TCP 18168 - readinessProbe: 18169 - httpGet: 18170 - path: /readyz 18171 - port: healthz 18172 - resources: 18173 - limits: 18174 - cpu: 1000m 18175 - memory: 1Gi 18176 - requests: 18177 - cpu: 100m 18178 - memory: 64Mi 18179 - securityContext: 18180 - allowPrivilegeEscalation: false 18181 - capabilities: 18182 - drop: 18183 - - ALL 18184 - readOnlyRootFilesystem: true 18185 - runAsNonRoot: true 18186 - seccompProfile: 18187 - type: RuntimeDefault 18188 - volumeMounts: 18189 - - mountPath: /tmp 18190 - name: temp 18191 - - mountPath: /data 18192 - name: data 18193 + - args: 18194 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 18195 + - --watch-all-namespaces=true 18196 + - --log-level=info 18197 + - --log-encoding=json 18198 + - --enable-leader-election 18199 + env: 18200 + - name: RUNTIME_NAMESPACE 18201 + valueFrom: 18202 + fieldRef: 18203 + fieldPath: metadata.namespace 18204 + - name: GOMEMLIMIT 18205 + valueFrom: 18206 + resourceFieldRef: 18207 + containerName: manager 18208 + resource: limits.memory 18209 + image: ghcr.io/fluxcd/image-reflector-controller:v1.1.0 18210 + imagePullPolicy: IfNotPresent 18211 + livenessProbe: 18212 + httpGet: 18213 + path: /healthz 18214 + port: healthz 18215 + name: manager 18216 + ports: 18217 + - containerPort: 8080 18218 + name: http-prom 18219 + protocol: TCP 18220 + - containerPort: 9440 18221 + name: healthz 18222 + protocol: TCP 18223 + readinessProbe: 18224 + httpGet: 18225 + path: /readyz 18226 + port: healthz 18227 + resources: 18228 + limits: 18229 + cpu: 1000m 18230 + memory: 1Gi 18231 + requests: 18232 + cpu: 100m 18233 + memory: 64Mi 18234 + securityContext: 18235 + allowPrivilegeEscalation: false 18236 + capabilities: 18237 + drop: 18238 + - ALL 18239 + readOnlyRootFilesystem: true 18240 + runAsNonRoot: true 18241 + seccompProfile: 18242 + type: RuntimeDefault 18243 + volumeMounts: 18244 + - mountPath: /tmp 18245 + name: temp 18246 + - mountPath: /data 18247 + name: data 18248 nodeSelector: 18249 kubernetes.io/os: linux 18250 securityContext: 18251 @@ -11252,10 +7731,10 @@ spec: 18252 serviceAccountName: image-reflector-controller 18253 terminationGracePeriodSeconds: 10 18254 volumes: 18255 - - emptyDir: {} 18256 - name: temp 18257 - - emptyDir: {} 18258 - name: data 18259 + - emptyDir: {} 18260 + name: temp 18261 + - emptyDir: {} 18262 + name: data 18263 --- 18264 apiVersion: apiextensions.k8s.io/v1 18265 kind: CustomResourceDefinition 18266 @@ -11266,7 +7745,7 @@ metadata: 18267 app.kubernetes.io/component: image-automation-controller 18268 app.kubernetes.io/instance: flux-system 18269 app.kubernetes.io/part-of: flux 18270 - app.kubernetes.io/version: v2.7.5 18271 + app.kubernetes.io/version: v2.8.0 18272 name: imageupdateautomations.image.toolkit.fluxcd.io 18273 spec: 18274 group: image.toolkit.fluxcd.io 18275 @@ -11275,796 +7754,818 @@ spec: 18276 listKind: ImageUpdateAutomationList 18277 plural: imageupdateautomations 18278 shortNames: 18279 - - iua 18280 - - imgupd 18281 - - imgauto 18282 + - iua 18283 + - imgupd 18284 + - imgauto 18285 singular: imageupdateautomation 18286 scope: Namespaced 18287 versions: 18288 - - additionalPrinterColumns: 18289 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 18290 - name: Ready 18291 - type: string 18292 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 18293 - name: Status 18294 - type: string 18295 - - jsonPath: .status.lastAutomationRunTime 18296 - name: Last run 18297 - priority: 1 18298 - type: string 18299 - - jsonPath: .metadata.creationTimestamp 18300 - name: Age 18301 - type: date 18302 - name: v1 18303 - schema: 18304 - openAPIV3Schema: 18305 - description: ImageUpdateAutomation is the Schema for the imageupdateautomations API 18306 - properties: 18307 - apiVersion: 18308 - description: |- 18309 - APIVersion defines the versioned schema of this representation of an object. 18310 - Servers should convert recognized schemas to the latest internal value, and 18311 - may reject unrecognized values. 18312 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 18313 - type: string 18314 - kind: 18315 - description: |- 18316 - Kind is a string value representing the REST resource this object represents. 18317 - Servers may infer this from the endpoint the client submits requests to. 18318 - Cannot be updated. 18319 - In CamelCase. 18320 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 18321 - type: string 18322 - metadata: 18323 - type: object 18324 - spec: 18325 - description: ImageUpdateAutomationSpec defines the desired state of ImageUpdateAutomation 18326 - properties: 18327 - git: 18328 - description: |- 18329 - GitSpec contains all the git-specific definitions. This is 18330 - technically optional, but in practice mandatory until there are 18331 - other kinds of source allowed. 18332 - properties: 18333 - checkout: 18334 - description: |- 18335 - Checkout gives the parameters for cloning the git repository, 18336 - ready to make changes. If not present, the `spec.ref` field from the 18337 - referenced `GitRepository` or its default will be used. 18338 - properties: 18339 - ref: 18340 - description: |- 18341 - Reference gives a branch, tag or commit to clone from the Git 18342 - repository. 18343 - properties: 18344 - branch: 18345 - description: Branch to check out, defaults to 'master' if no other field is defined. 18346 - type: string 18347 - commit: 18348 - description: |- 18349 - Commit SHA to check out, takes precedence over all reference fields. 18350 + - additionalPrinterColumns: 18351 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 18352 + name: Ready 18353 + type: string 18354 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 18355 + name: Status 18356 + type: string 18357 + - jsonPath: .status.lastAutomationRunTime 18358 + name: Last run 18359 + priority: 1 18360 + type: string 18361 + - jsonPath: .metadata.creationTimestamp 18362 + name: Age 18363 + type: date 18364 + name: v1 18365 + schema: 18366 + openAPIV3Schema: 18367 + description: ImageUpdateAutomation is the Schema for the imageupdateautomations 18368 + API 18369 + properties: 18370 + apiVersion: 18371 + description: |- 18372 + APIVersion defines the versioned schema of this representation of an object. 18373 + Servers should convert recognized schemas to the latest internal value, and 18374 + may reject unrecognized values. 18375 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 18376 + type: string 18377 + kind: 18378 + description: |- 18379 + Kind is a string value representing the REST resource this object represents. 18380 + Servers may infer this from the endpoint the client submits requests to. 18381 + Cannot be updated. 18382 + In CamelCase. 18383 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 18384 + type: string 18385 + metadata: 18386 + type: object 18387 + spec: 18388 + description: ImageUpdateAutomationSpec defines the desired state of ImageUpdateAutomation 18389 + properties: 18390 + git: 18391 + description: |- 18392 + GitSpec contains all the git-specific definitions. This is 18393 + technically optional, but in practice mandatory until there are 18394 + other kinds of source allowed. 18395 + properties: 18396 + checkout: 18397 + description: |- 18398 + Checkout gives the parameters for cloning the git repository, 18399 + ready to make changes. If not present, the `spec.ref` field from the 18400 + referenced `GitRepository` or its default will be used. 18401 + properties: 18402 + ref: 18403 + description: |- 18404 + Reference gives a branch, tag or commit to clone from the Git 18405 + repository. 18406 + properties: 18407 + branch: 18408 + description: Branch to check out, defaults to 'master' 18409 + if no other field is defined. 18410 + type: string 18411 + commit: 18412 + description: |- 18413 + Commit SHA to check out, takes precedence over all reference fields. 18414 18415 - This can be combined with Branch to shallow clone the branch, in which 18416 - the commit is expected to exist. 18417 - type: string 18418 - name: 18419 - description: |- 18420 - Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 18421 + This can be combined with Branch to shallow clone the branch, in which 18422 + the commit is expected to exist. 18423 + type: string 18424 + name: 18425 + description: |- 18426 + Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 18427 18428 - It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 18429 - Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 18430 - type: string 18431 - semver: 18432 - description: SemVer tag expression to check out, takes precedence over Tag. 18433 - type: string 18434 - tag: 18435 - description: Tag to check out, takes precedence over Branch. 18436 - type: string 18437 - type: object 18438 - required: 18439 - - ref 18440 - type: object 18441 - commit: 18442 - description: Commit specifies how to commit to the git repository. 18443 - properties: 18444 - author: 18445 - description: |- 18446 - Author gives the email and optionally the name to use as the 18447 - author of commits. 18448 - properties: 18449 - email: 18450 - description: Email gives the email to provide when making a commit. 18451 - type: string 18452 - name: 18453 - description: Name gives the name to provide when making a commit. 18454 - type: string 18455 - required: 18456 - - email 18457 - type: object 18458 - messageTemplate: 18459 - description: |- 18460 - MessageTemplate provides a template for the commit message, 18461 - into which will be interpolated the details of the change made. 18462 - Note: The `Updated` template field has been removed. Use `Changed` instead. 18463 - type: string 18464 - messageTemplateValues: 18465 - additionalProperties: 18466 + It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 18467 + Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 18468 type: string 18469 - description: |- 18470 - MessageTemplateValues provides additional values to be available to the 18471 - templating rendering. 18472 - type: object 18473 - signingKey: 18474 - description: SigningKey provides the option to sign commits with a GPG key 18475 - properties: 18476 - secretRef: 18477 - description: |- 18478 - SecretRef holds the name to a secret that contains a 'git.asc' key 18479 - corresponding to the ASCII Armored file containing the GPG signing 18480 - keypair as the value. It must be in the same namespace as the 18481 - ImageUpdateAutomation. 18482 - properties: 18483 - name: 18484 - description: Name of the referent. 18485 - type: string 18486 - required: 18487 - - name 18488 - type: object 18489 - required: 18490 - - secretRef 18491 - type: object 18492 - required: 18493 - - author 18494 - type: object 18495 - push: 18496 - description: |- 18497 - Push specifies how and where to push commits made by the 18498 - automation. If missing, commits are pushed (back) to 18499 - `.spec.checkout.branch` or its default. 18500 - properties: 18501 - branch: 18502 - description: |- 18503 - Branch specifies that commits should be pushed to the branch 18504 - named. The branch is created using `.spec.checkout.branch` as the 18505 - starting point, if it doesn't already exist. 18506 - type: string 18507 - options: 18508 - additionalProperties: 18509 + semver: 18510 + description: SemVer tag expression to check out, takes 18511 + precedence over Tag. 18512 type: string 18513 - description: |- 18514 - Options specifies the push options that are sent to the Git 18515 - server when performing a push operation. For details, see: 18516 - https://git-scm.com/docs/git-push#Documentation/git-push.txt---push-optionltoptiongt 18517 - type: object 18518 - refspec: 18519 - description: |- 18520 - Refspec specifies the Git Refspec to use for a push operation. 18521 - If both Branch and Refspec are provided, then the commit is pushed 18522 - to the branch and also using the specified refspec. 18523 - For more details about Git Refspecs, see: 18524 - https://git-scm.com/book/en/v2/Git-Internals-The-Refspec 18525 - type: string 18526 - type: object 18527 - required: 18528 - - commit 18529 - type: object 18530 - interval: 18531 - description: |- 18532 - Interval gives an lower bound for how often the automation 18533 - run should be attempted. 18534 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 18535 - type: string 18536 - policySelector: 18537 - description: |- 18538 - PolicySelector allows to filter applied policies based on labels. 18539 - By default includes all policies in namespace. 18540 - properties: 18541 - matchExpressions: 18542 - description: matchExpressions is a list of label selector requirements. The requirements are ANDed. 18543 - items: 18544 + tag: 18545 + description: Tag to check out, takes precedence over Branch. 18546 + type: string 18547 + type: object 18548 + required: 18549 + - ref 18550 + type: object 18551 + commit: 18552 + description: Commit specifies how to commit to the git repository. 18553 + properties: 18554 + author: 18555 description: |- 18556 - A label selector requirement is a selector that contains values, a key, and an operator that 18557 - relates the key and values. 18558 + Author gives the email and optionally the name to use as the 18559 + author of commits. 18560 properties: 18561 - key: 18562 - description: key is the label key that the selector applies to. 18563 + email: 18564 + description: Email gives the email to provide when making 18565 + a commit. 18566 type: string 18567 - operator: 18568 - description: |- 18569 - operator represents a key's relationship to a set of values. 18570 - Valid operators are In, NotIn, Exists and DoesNotExist. 18571 + name: 18572 + description: Name gives the name to provide when making 18573 + a commit. 18574 type: string 18575 - values: 18576 + required: 18577 + - email 18578 + type: object 18579 + messageTemplate: 18580 + description: |- 18581 + MessageTemplate provides a template for the commit message, 18582 + into which will be interpolated the details of the change made. 18583 + Note: The `Updated` template field has been removed. Use `Changed` instead. 18584 + type: string 18585 + messageTemplateValues: 18586 + additionalProperties: 18587 + type: string 18588 + description: |- 18589 + MessageTemplateValues provides additional values to be available to the 18590 + templating rendering. 18591 + type: object 18592 + signingKey: 18593 + description: SigningKey provides the option to sign commits 18594 + with a GPG key 18595 + properties: 18596 + secretRef: 18597 description: |- 18598 - values is an array of string values. If the operator is In or NotIn, 18599 - the values array must be non-empty. If the operator is Exists or DoesNotExist, 18600 - the values array must be empty. This array is replaced during a strategic 18601 - merge patch. 18602 - items: 18603 - type: string 18604 - type: array 18605 - x-kubernetes-list-type: atomic 18606 + SecretRef holds the name to a secret that contains a 'git.asc' key 18607 + corresponding to the ASCII Armored file containing the GPG signing 18608 + keypair as the value. It must be in the same namespace as the 18609 + ImageUpdateAutomation. 18610 + properties: 18611 + name: 18612 + description: Name of the referent. 18613 + type: string 18614 + required: 18615 + - name 18616 + type: object 18617 required: 18618 - - key 18619 - - operator 18620 + - secretRef 18621 type: object 18622 - type: array 18623 - x-kubernetes-list-type: atomic 18624 - matchLabels: 18625 - additionalProperties: 18626 + required: 18627 + - author 18628 + type: object 18629 + push: 18630 + description: |- 18631 + Push specifies how and where to push commits made by the 18632 + automation. If missing, commits are pushed (back) to 18633 + `.spec.checkout.branch` or its default. 18634 + properties: 18635 + branch: 18636 + description: |- 18637 + Branch specifies that commits should be pushed to the branch 18638 + named. The branch is created using `.spec.checkout.branch` as the 18639 + starting point, if it doesn't already exist. 18640 type: string 18641 - description: |- 18642 - matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 18643 - map is equivalent to an element of matchExpressions, whose key field is "key", the 18644 - operator is "In", and the values array contains only "value". The requirements are ANDed. 18645 + options: 18646 + additionalProperties: 18647 + type: string 18648 + description: |- 18649 + Options specifies the push options that are sent to the Git 18650 + server when performing a push operation. For details, see: 18651 + https://git-scm.com/docs/git-push#Documentation/git-push.txt---push-optionltoptiongt 18652 + type: object 18653 + refspec: 18654 + description: |- 18655 + Refspec specifies the Git Refspec to use for a push operation. 18656 + If both Branch and Refspec are provided, then the commit is pushed 18657 + to the branch and also using the specified refspec. 18658 + For more details about Git Refspecs, see: 18659 + https://git-scm.com/book/en/v2/Git-Internals-The-Refspec 18660 + type: string 18661 + type: object 18662 + required: 18663 + - commit 18664 + type: object 18665 + interval: 18666 + description: |- 18667 + Interval gives an lower bound for how often the automation 18668 + run should be attempted. 18669 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 18670 + type: string 18671 + policySelector: 18672 + description: |- 18673 + PolicySelector allows to filter applied policies based on labels. 18674 + By default includes all policies in namespace. 18675 + properties: 18676 + matchExpressions: 18677 + description: matchExpressions is a list of label selector requirements. 18678 + The requirements are ANDed. 18679 + items: 18680 + description: |- 18681 + A label selector requirement is a selector that contains values, a key, and an operator that 18682 + relates the key and values. 18683 + properties: 18684 + key: 18685 + description: key is the label key that the selector applies 18686 + to. 18687 + type: string 18688 + operator: 18689 + description: |- 18690 + operator represents a key's relationship to a set of values. 18691 + Valid operators are In, NotIn, Exists and DoesNotExist. 18692 + type: string 18693 + values: 18694 + description: |- 18695 + values is an array of string values. If the operator is In or NotIn, 18696 + the values array must be non-empty. If the operator is Exists or DoesNotExist, 18697 + the values array must be empty. This array is replaced during a strategic 18698 + merge patch. 18699 + items: 18700 + type: string 18701 + type: array 18702 + x-kubernetes-list-type: atomic 18703 + required: 18704 + - key 18705 + - operator 18706 type: object 18707 - type: object 18708 - x-kubernetes-map-type: atomic 18709 - sourceRef: 18710 - description: |- 18711 - SourceRef refers to the resource giving access details 18712 - to a git repository. 18713 + type: array 18714 + x-kubernetes-list-type: atomic 18715 + matchLabels: 18716 + additionalProperties: 18717 + type: string 18718 + description: |- 18719 + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 18720 + map is equivalent to an element of matchExpressions, whose key field is "key", the 18721 + operator is "In", and the values array contains only "value". The requirements are ANDed. 18722 + type: object 18723 + type: object 18724 + x-kubernetes-map-type: atomic 18725 + sourceRef: 18726 + description: |- 18727 + SourceRef refers to the resource giving access details 18728 + to a git repository. 18729 + properties: 18730 + apiVersion: 18731 + description: API version of the referent. 18732 + type: string 18733 + kind: 18734 + default: GitRepository 18735 + description: Kind of the referent. 18736 + enum: 18737 + - GitRepository 18738 + type: string 18739 + name: 18740 + description: Name of the referent. 18741 + type: string 18742 + namespace: 18743 + description: Namespace of the referent, defaults to the namespace 18744 + of the Kubernetes resource object that contains the reference. 18745 + type: string 18746 + required: 18747 + - kind 18748 + - name 18749 + type: object 18750 + suspend: 18751 + description: |- 18752 + Suspend tells the controller to not run this automation, until 18753 + it is unset (or set to false). Defaults to false. 18754 + type: boolean 18755 + update: 18756 + default: 18757 + strategy: Setters 18758 + description: |- 18759 + Update gives the specification for how to update the files in 18760 + the repository. This can be left empty, to use the default 18761 + value. 18762 + properties: 18763 + path: 18764 + description: |- 18765 + Path to the directory containing the manifests to be updated. 18766 + Defaults to 'None', which translates to the root path 18767 + of the GitRepositoryRef. 18768 + type: string 18769 + strategy: 18770 + default: Setters 18771 + description: Strategy names the strategy to be used. 18772 + enum: 18773 + - Setters 18774 + type: string 18775 + type: object 18776 + required: 18777 + - interval 18778 + - sourceRef 18779 + type: object 18780 + status: 18781 + default: 18782 + observedGeneration: -1 18783 + description: ImageUpdateAutomationStatus defines the observed state of 18784 + ImageUpdateAutomation 18785 + properties: 18786 + conditions: 18787 + items: 18788 + description: Condition contains details for one aspect of the current 18789 + state of this API Resource. 18790 properties: 18791 - apiVersion: 18792 - description: API version of the referent. 18793 + lastTransitionTime: 18794 + description: |- 18795 + lastTransitionTime is the last time the condition transitioned from one status to another. 18796 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 18797 + format: date-time 18798 type: string 18799 - kind: 18800 - default: GitRepository 18801 - description: Kind of the referent. 18802 - enum: 18803 - - GitRepository 18804 + message: 18805 + description: |- 18806 + message is a human readable message indicating details about the transition. 18807 + This may be an empty string. 18808 + maxLength: 32768 18809 type: string 18810 - name: 18811 - description: Name of the referent. 18812 + observedGeneration: 18813 + description: |- 18814 + observedGeneration represents the .metadata.generation that the condition was set based upon. 18815 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 18816 + with respect to the current state of the instance. 18817 + format: int64 18818 + minimum: 0 18819 + type: integer 18820 + reason: 18821 + description: |- 18822 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 18823 + Producers of specific condition types may define expected values and meanings for this field, 18824 + and whether the values are considered a guaranteed API. 18825 + The value should be a CamelCase string. 18826 + This field may not be empty. 18827 + maxLength: 1024 18828 + minLength: 1 18829 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 18830 type: string 18831 - namespace: 18832 - description: Namespace of the referent, defaults to the namespace of the Kubernetes resource object that contains the reference. 18833 + status: 18834 + description: status of the condition, one of True, False, Unknown. 18835 + enum: 18836 + - "True" 18837 + - "False" 18838 + - Unknown 18839 + type: string 18840 + type: 18841 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 18842 + maxLength: 316 18843 + 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])$ 18844 type: string 18845 required: 18846 - - kind 18847 - - name 18848 + - lastTransitionTime 18849 + - message 18850 + - reason 18851 + - status 18852 + - type 18853 type: object 18854 - suspend: 18855 - description: |- 18856 - Suspend tells the controller to not run this automation, until 18857 - it is unset (or set to false). Defaults to false. 18858 - type: boolean 18859 - update: 18860 - default: 18861 - strategy: Setters 18862 - description: |- 18863 - Update gives the specification for how to update the files in 18864 - the repository. This can be left empty, to use the default 18865 - value. 18866 + type: array 18867 + lastAutomationRunTime: 18868 + description: |- 18869 + LastAutomationRunTime records the last time the controller ran 18870 + this automation through to completion (even if no updates were 18871 + made). 18872 + format: date-time 18873 + type: string 18874 + lastHandledReconcileAt: 18875 + description: |- 18876 + LastHandledReconcileAt holds the value of the most recent 18877 + reconcile request value, so a change of the annotation value 18878 + can be detected. 18879 + type: string 18880 + lastPushCommit: 18881 + description: |- 18882 + LastPushCommit records the SHA1 of the last commit made by the 18883 + controller, for this automation object 18884 + type: string 18885 + lastPushTime: 18886 + description: LastPushTime records the time of the last pushed change. 18887 + format: date-time 18888 + type: string 18889 + observedGeneration: 18890 + format: int64 18891 + type: integer 18892 + observedPolicies: 18893 + additionalProperties: 18894 + description: ImageRef represents an image reference. 18895 properties: 18896 - path: 18897 - description: |- 18898 - Path to the directory containing the manifests to be updated. 18899 - Defaults to 'None', which translates to the root path 18900 - of the GitRepositoryRef. 18901 + digest: 18902 + description: Digest is the image's digest. 18903 type: string 18904 - strategy: 18905 - default: Setters 18906 - description: Strategy names the strategy to be used. 18907 - enum: 18908 - - Setters 18909 + name: 18910 + description: Name is the bare image's name. 18911 type: string 18912 + tag: 18913 + description: Tag is the image's tag. 18914 + type: string 18915 + required: 18916 + - name 18917 + - tag 18918 type: object 18919 - required: 18920 - - interval 18921 - - sourceRef 18922 - type: object 18923 - status: 18924 - default: 18925 - observedGeneration: -1 18926 - description: ImageUpdateAutomationStatus defines the observed state of ImageUpdateAutomation 18927 - properties: 18928 - conditions: 18929 - items: 18930 - description: Condition contains details for one aspect of the current state of this API Resource. 18931 + description: |- 18932 + ObservedPolicies is the list of observed ImagePolicies that were 18933 + considered by the ImageUpdateAutomation update process. 18934 + type: object 18935 + observedSourceRevision: 18936 + description: |- 18937 + ObservedPolicies []ObservedPolicy `json:"observedPolicies,omitempty"` 18938 + ObservedSourceRevision is the last observed source revision. This can be 18939 + used to determine if the source has been updated since last observation. 18940 + type: string 18941 + type: object 18942 + type: object 18943 + served: true 18944 + storage: true 18945 + subresources: 18946 + status: {} 18947 + - additionalPrinterColumns: 18948 + - jsonPath: .status.conditions[?(@.type=="Ready")].status 18949 + name: Ready 18950 + type: string 18951 + - jsonPath: .status.conditions[?(@.type=="Ready")].message 18952 + name: Status 18953 + type: string 18954 + - jsonPath: .status.lastAutomationRunTime 18955 + name: Last run 18956 + priority: 1 18957 + type: string 18958 + - jsonPath: .metadata.creationTimestamp 18959 + name: Age 18960 + type: date 18961 + deprecated: true 18962 + deprecationWarning: v1beta2 ImageUpdateAutomation is deprecated, upgrade to v1 18963 + name: v1beta2 18964 + schema: 18965 + openAPIV3Schema: 18966 + description: ImageUpdateAutomation is the Schema for the imageupdateautomations 18967 + API 18968 + properties: 18969 + apiVersion: 18970 + description: |- 18971 + APIVersion defines the versioned schema of this representation of an object. 18972 + Servers should convert recognized schemas to the latest internal value, and 18973 + may reject unrecognized values. 18974 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 18975 + type: string 18976 + kind: 18977 + description: |- 18978 + Kind is a string value representing the REST resource this object represents. 18979 + Servers may infer this from the endpoint the client submits requests to. 18980 + Cannot be updated. 18981 + In CamelCase. 18982 + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 18983 + type: string 18984 + metadata: 18985 + type: object 18986 + spec: 18987 + description: ImageUpdateAutomationSpec defines the desired state of ImageUpdateAutomation 18988 + properties: 18989 + git: 18990 + description: |- 18991 + GitSpec contains all the git-specific definitions. This is 18992 + technically optional, but in practice mandatory until there are 18993 + other kinds of source allowed. 18994 + properties: 18995 + checkout: 18996 + description: |- 18997 + Checkout gives the parameters for cloning the git repository, 18998 + ready to make changes. If not present, the `spec.ref` field from the 18999 + referenced `GitRepository` or its default will be used. 19000 properties: 19001 - lastTransitionTime: 19002 - description: |- 19003 - lastTransitionTime is the last time the condition transitioned from one status to another. 19004 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 19005 - format: date-time 19006 - type: string 19007 - message: 19008 + ref: 19009 description: |- 19010 - message is a human readable message indicating details about the transition. 19011 - This may be an empty string. 19012 - maxLength: 32768 19013 - type: string 19014 - observedGeneration: 19015 + Reference gives a branch, tag or commit to clone from the Git 19016 + repository. 19017 + properties: 19018 + branch: 19019 + description: Branch to check out, defaults to 'master' 19020 + if no other field is defined. 19021 + type: string 19022 + commit: 19023 + description: |- 19024 + Commit SHA to check out, takes precedence over all reference fields. 19025 + 19026 + This can be combined with Branch to shallow clone the branch, in which 19027 + the commit is expected to exist. 19028 + type: string 19029 + name: 19030 + description: |- 19031 + Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 19032 + 19033 + It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 19034 + Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 19035 + type: string 19036 + semver: 19037 + description: SemVer tag expression to check out, takes 19038 + precedence over Tag. 19039 + type: string 19040 + tag: 19041 + description: Tag to check out, takes precedence over Branch. 19042 + type: string 19043 + type: object 19044 + required: 19045 + - ref 19046 + type: object 19047 + commit: 19048 + description: Commit specifies how to commit to the git repository. 19049 + properties: 19050 + author: 19051 description: |- 19052 - observedGeneration represents the .metadata.generation that the condition was set based upon. 19053 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 19054 - with respect to the current state of the instance. 19055 - format: int64 19056 - minimum: 0 19057 - type: integer 19058 - reason: 19059 + Author gives the email and optionally the name to use as the 19060 + author of commits. 19061 + properties: 19062 + email: 19063 + description: Email gives the email to provide when making 19064 + a commit. 19065 + type: string 19066 + name: 19067 + description: Name gives the name to provide when making 19068 + a commit. 19069 + type: string 19070 + required: 19071 + - email 19072 + type: object 19073 + messageTemplate: 19074 description: |- 19075 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 19076 - Producers of specific condition types may define expected values and meanings for this field, 19077 - and whether the values are considered a guaranteed API. 19078 - The value should be a CamelCase string. 19079 - This field may not be empty. 19080 - maxLength: 1024 19081 - minLength: 1 19082 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 19083 - type: string 19084 - status: 19085 - description: status of the condition, one of True, False, Unknown. 19086 - enum: 19087 - - "True" 19088 - - "False" 19089 - - Unknown 19090 - type: string 19091 - type: 19092 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 19093 - maxLength: 316 19094 - 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])$ 19095 + MessageTemplate provides a template for the commit message, 19096 + into which will be interpolated the details of the change made. 19097 + Note: The `Updated` template field has been removed. Use `Changed` instead. 19098 type: string 19099 + messageTemplateValues: 19100 + additionalProperties: 19101 + type: string 19102 + description: |- 19103 + MessageTemplateValues provides additional values to be available to the 19104 + templating rendering. 19105 + type: object 19106 + signingKey: 19107 + description: SigningKey provides the option to sign commits 19108 + with a GPG key 19109 + properties: 19110 + secretRef: 19111 + description: |- 19112 + SecretRef holds the name to a secret that contains a 'git.asc' key 19113 + corresponding to the ASCII Armored file containing the GPG signing 19114 + keypair as the value. It must be in the same namespace as the 19115 + ImageUpdateAutomation. 19116 + properties: 19117 + name: 19118 + description: Name of the referent. 19119 + type: string 19120 + required: 19121 + - name 19122 + type: object 19123 + required: 19124 + - secretRef 19125 + type: object 19126 required: 19127 - - lastTransitionTime 19128 - - message 19129 - - reason 19130 - - status 19131 - - type 19132 + - author 19133 type: object 19134 - type: array 19135 - lastAutomationRunTime: 19136 - description: |- 19137 - LastAutomationRunTime records the last time the controller ran 19138 - this automation through to completion (even if no updates were 19139 - made). 19140 - format: date-time 19141 - type: string 19142 - lastHandledReconcileAt: 19143 - description: |- 19144 - LastHandledReconcileAt holds the value of the most recent 19145 - reconcile request value, so a change of the annotation value 19146 - can be detected. 19147 - type: string 19148 - lastPushCommit: 19149 - description: |- 19150 - LastPushCommit records the SHA1 of the last commit made by the 19151 - controller, for this automation object 19152 - type: string 19153 - lastPushTime: 19154 - description: LastPushTime records the time of the last pushed change. 19155 - format: date-time 19156 - type: string 19157 - observedGeneration: 19158 - format: int64 19159 - type: integer 19160 - observedPolicies: 19161 - additionalProperties: 19162 - description: ImageRef represents an image reference. 19163 + push: 19164 + description: |- 19165 + Push specifies how and where to push commits made by the 19166 + automation. If missing, commits are pushed (back) to 19167 + `.spec.checkout.branch` or its default. 19168 properties: 19169 - digest: 19170 - description: Digest is the image's digest. 19171 - type: string 19172 - name: 19173 - description: Name is the bare image's name. 19174 + branch: 19175 + description: |- 19176 + Branch specifies that commits should be pushed to the branch 19177 + named. The branch is created using `.spec.checkout.branch` as the 19178 + starting point, if it doesn't already exist. 19179 type: string 19180 - tag: 19181 - description: Tag is the image's tag. 19182 + options: 19183 + additionalProperties: 19184 + type: string 19185 + description: |- 19186 + Options specifies the push options that are sent to the Git 19187 + server when performing a push operation. For details, see: 19188 + https://git-scm.com/docs/git-push#Documentation/git-push.txt---push-optionltoptiongt 19189 + type: object 19190 + refspec: 19191 + description: |- 19192 + Refspec specifies the Git Refspec to use for a push operation. 19193 + If both Branch and Refspec are provided, then the commit is pushed 19194 + to the branch and also using the specified refspec. 19195 + For more details about Git Refspecs, see: 19196 + https://git-scm.com/book/en/v2/Git-Internals-The-Refspec 19197 type: string 19198 - required: 19199 - - name 19200 - - tag 19201 type: object 19202 - description: |- 19203 - ObservedPolicies is the list of observed ImagePolicies that were 19204 - considered by the ImageUpdateAutomation update process. 19205 - type: object 19206 - observedSourceRevision: 19207 - description: |- 19208 - ObservedPolicies []ObservedPolicy `json:"observedPolicies,omitempty"` 19209 - ObservedSourceRevision is the last observed source revision. This can be 19210 - used to determine if the source has been updated since last observation. 19211 - type: string 19212 - type: object 19213 - type: object 19214 - served: true 19215 - storage: true 19216 - subresources: 19217 - status: {} 19218 - - additionalPrinterColumns: 19219 - - jsonPath: .status.conditions[?(@.type=="Ready")].status 19220 - name: Ready 19221 - type: string 19222 - - jsonPath: .status.conditions[?(@.type=="Ready")].message 19223 - name: Status 19224 - type: string 19225 - - jsonPath: .status.lastAutomationRunTime 19226 - name: Last run 19227 - priority: 1 19228 - type: string 19229 - - jsonPath: .metadata.creationTimestamp 19230 - name: Age 19231 - type: date 19232 - deprecated: true 19233 - deprecationWarning: v1beta2 ImageUpdateAutomation is deprecated, upgrade to v1 19234 - name: v1beta2 19235 - schema: 19236 - openAPIV3Schema: 19237 - description: ImageUpdateAutomation is the Schema for the imageupdateautomations API 19238 - properties: 19239 - apiVersion: 19240 - description: |- 19241 - APIVersion defines the versioned schema of this representation of an object. 19242 - Servers should convert recognized schemas to the latest internal value, and 19243 - may reject unrecognized values. 19244 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources 19245 - type: string 19246 - kind: 19247 - description: |- 19248 - Kind is a string value representing the REST resource this object represents. 19249 - Servers may infer this from the endpoint the client submits requests to. 19250 - Cannot be updated. 19251 - In CamelCase. 19252 - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds 19253 - type: string 19254 - metadata: 19255 - type: object 19256 - spec: 19257 - description: ImageUpdateAutomationSpec defines the desired state of ImageUpdateAutomation 19258 - properties: 19259 - git: 19260 - description: |- 19261 - GitSpec contains all the git-specific definitions. This is 19262 - technically optional, but in practice mandatory until there are 19263 - other kinds of source allowed. 19264 - properties: 19265 - checkout: 19266 - description: |- 19267 - Checkout gives the parameters for cloning the git repository, 19268 - ready to make changes. If not present, the `spec.ref` field from the 19269 - referenced `GitRepository` or its default will be used. 19270 - properties: 19271 - ref: 19272 - description: |- 19273 - Reference gives a branch, tag or commit to clone from the Git 19274 - repository. 19275 - properties: 19276 - branch: 19277 - description: Branch to check out, defaults to 'master' if no other field is defined. 19278 - type: string 19279 - commit: 19280 - description: |- 19281 - Commit SHA to check out, takes precedence over all reference fields. 19282 - 19283 - This can be combined with Branch to shallow clone the branch, in which 19284 - the commit is expected to exist. 19285 - type: string 19286 - name: 19287 - description: |- 19288 - Name of the reference to check out; takes precedence over Branch, Tag and SemVer. 19289 - 19290 - It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description 19291 - Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" 19292 - type: string 19293 - semver: 19294 - description: SemVer tag expression to check out, takes precedence over Tag. 19295 - type: string 19296 - tag: 19297 - description: Tag to check out, takes precedence over Branch. 19298 - type: string 19299 - type: object 19300 - required: 19301 - - ref 19302 - type: object 19303 - commit: 19304 - description: Commit specifies how to commit to the git repository. 19305 + required: 19306 + - commit 19307 + type: object 19308 + interval: 19309 + description: |- 19310 + Interval gives an lower bound for how often the automation 19311 + run should be attempted. 19312 + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 19313 + type: string 19314 + policySelector: 19315 + description: |- 19316 + PolicySelector allows to filter applied policies based on labels. 19317 + By default includes all policies in namespace. 19318 + properties: 19319 + matchExpressions: 19320 + description: matchExpressions is a list of label selector requirements. 19321 + The requirements are ANDed. 19322 + items: 19323 + description: |- 19324 + A label selector requirement is a selector that contains values, a key, and an operator that 19325 + relates the key and values. 19326 properties: 19327 - author: 19328 - description: |- 19329 - Author gives the email and optionally the name to use as the 19330 - author of commits. 19331 - properties: 19332 - email: 19333 - description: Email gives the email to provide when making a commit. 19334 - type: string 19335 - name: 19336 - description: Name gives the name to provide when making a commit. 19337 - type: string 19338 - required: 19339 - - email 19340 - type: object 19341 - messageTemplate: 19342 - description: |- 19343 - MessageTemplate provides a template for the commit message, 19344 - into which will be interpolated the details of the change made. 19345 - Note: The `Updated` template field has been removed. Use `Changed` instead. 19346 + key: 19347 + description: key is the label key that the selector applies 19348 + to. 19349 type: string 19350 - messageTemplateValues: 19351 - additionalProperties: 19352 - type: string 19353 - description: |- 19354 - MessageTemplateValues provides additional values to be available to the 19355 - templating rendering. 19356 - type: object 19357 - signingKey: 19358 - description: SigningKey provides the option to sign commits with a GPG key 19359 - properties: 19360 - secretRef: 19361 - description: |- 19362 - SecretRef holds the name to a secret that contains a 'git.asc' key 19363 - corresponding to the ASCII Armored file containing the GPG signing 19364 - keypair as the value. It must be in the same namespace as the 19365 - ImageUpdateAutomation. 19366 - properties: 19367 - name: 19368 - description: Name of the referent. 19369 - type: string 19370 - required: 19371 - - name 19372 - type: object 19373 - required: 19374 - - secretRef 19375 - type: object 19376 - required: 19377 - - author 19378 - type: object 19379 - push: 19380 - description: |- 19381 - Push specifies how and where to push commits made by the 19382 - automation. If missing, commits are pushed (back) to 19383 - `.spec.checkout.branch` or its default. 19384 - properties: 19385 - branch: 19386 + operator: 19387 description: |- 19388 - Branch specifies that commits should be pushed to the branch 19389 - named. The branch is created using `.spec.checkout.branch` as the 19390 - starting point, if it doesn't already exist. 19391 + operator represents a key's relationship to a set of values. 19392 + Valid operators are In, NotIn, Exists and DoesNotExist. 19393 type: string 19394 - options: 19395 - additionalProperties: 19396 - type: string 19397 - description: |- 19398 - Options specifies the push options that are sent to the Git 19399 - server when performing a push operation. For details, see: 19400 - https://git-scm.com/docs/git-push#Documentation/git-push.txt---push-optionltoptiongt 19401 - type: object 19402 - refspec: 19403 + values: 19404 description: |- 19405 - Refspec specifies the Git Refspec to use for a push operation. 19406 - If both Branch and Refspec are provided, then the commit is pushed 19407 - to the branch and also using the specified refspec. 19408 - For more details about Git Refspecs, see: 19409 - https://git-scm.com/book/en/v2/Git-Internals-The-Refspec 19410 - type: string 19411 - type: object 19412 - required: 19413 - - commit 19414 - type: object 19415 - interval: 19416 - description: |- 19417 - Interval gives an lower bound for how often the automation 19418 - run should be attempted. 19419 - pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ 19420 - type: string 19421 - policySelector: 19422 - description: |- 19423 - PolicySelector allows to filter applied policies based on labels. 19424 - By default includes all policies in namespace. 19425 - properties: 19426 - matchExpressions: 19427 - description: matchExpressions is a list of label selector requirements. The requirements are ANDed. 19428 - items: 19429 - description: |- 19430 - A label selector requirement is a selector that contains values, a key, and an operator that 19431 - relates the key and values. 19432 - properties: 19433 - key: 19434 - description: key is the label key that the selector applies to. 19435 - type: string 19436 - operator: 19437 - description: |- 19438 - operator represents a key's relationship to a set of values. 19439 - Valid operators are In, NotIn, Exists and DoesNotExist. 19440 + values is an array of string values. If the operator is In or NotIn, 19441 + the values array must be non-empty. If the operator is Exists or DoesNotExist, 19442 + the values array must be empty. This array is replaced during a strategic 19443 + merge patch. 19444 + items: 19445 type: string 19446 - values: 19447 - description: |- 19448 - values is an array of string values. If the operator is In or NotIn, 19449 - the values array must be non-empty. If the operator is Exists or DoesNotExist, 19450 - the values array must be empty. This array is replaced during a strategic 19451 - merge patch. 19452 - items: 19453 - type: string 19454 - type: array 19455 - x-kubernetes-list-type: atomic 19456 - required: 19457 - - key 19458 - - operator 19459 - type: object 19460 - type: array 19461 - x-kubernetes-list-type: atomic 19462 - matchLabels: 19463 - additionalProperties: 19464 - type: string 19465 - description: |- 19466 - matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 19467 - map is equivalent to an element of matchExpressions, whose key field is "key", the 19468 - operator is "In", and the values array contains only "value". The requirements are ANDed. 19469 + type: array 19470 + x-kubernetes-list-type: atomic 19471 + required: 19472 + - key 19473 + - operator 19474 type: object 19475 - type: object 19476 - x-kubernetes-map-type: atomic 19477 - sourceRef: 19478 - description: |- 19479 - SourceRef refers to the resource giving access details 19480 - to a git repository. 19481 + type: array 19482 + x-kubernetes-list-type: atomic 19483 + matchLabels: 19484 + additionalProperties: 19485 + type: string 19486 + description: |- 19487 + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels 19488 + map is equivalent to an element of matchExpressions, whose key field is "key", the 19489 + operator is "In", and the values array contains only "value". The requirements are ANDed. 19490 + type: object 19491 + type: object 19492 + x-kubernetes-map-type: atomic 19493 + sourceRef: 19494 + description: |- 19495 + SourceRef refers to the resource giving access details 19496 + to a git repository. 19497 + properties: 19498 + apiVersion: 19499 + description: API version of the referent. 19500 + type: string 19501 + kind: 19502 + default: GitRepository 19503 + description: Kind of the referent. 19504 + enum: 19505 + - GitRepository 19506 + type: string 19507 + name: 19508 + description: Name of the referent. 19509 + type: string 19510 + namespace: 19511 + description: Namespace of the referent, defaults to the namespace 19512 + of the Kubernetes resource object that contains the reference. 19513 + type: string 19514 + required: 19515 + - kind 19516 + - name 19517 + type: object 19518 + suspend: 19519 + description: |- 19520 + Suspend tells the controller to not run this automation, until 19521 + it is unset (or set to false). Defaults to false. 19522 + type: boolean 19523 + update: 19524 + default: 19525 + strategy: Setters 19526 + description: |- 19527 + Update gives the specification for how to update the files in 19528 + the repository. This can be left empty, to use the default 19529 + value. 19530 + properties: 19531 + path: 19532 + description: |- 19533 + Path to the directory containing the manifests to be updated. 19534 + Defaults to 'None', which translates to the root path 19535 + of the GitRepositoryRef. 19536 + type: string 19537 + strategy: 19538 + default: Setters 19539 + description: Strategy names the strategy to be used. 19540 + enum: 19541 + - Setters 19542 + type: string 19543 + type: object 19544 + required: 19545 + - interval 19546 + - sourceRef 19547 + type: object 19548 + status: 19549 + default: 19550 + observedGeneration: -1 19551 + description: ImageUpdateAutomationStatus defines the observed state of 19552 + ImageUpdateAutomation 19553 + properties: 19554 + conditions: 19555 + items: 19556 + description: Condition contains details for one aspect of the current 19557 + state of this API Resource. 19558 properties: 19559 - apiVersion: 19560 - description: API version of the referent. 19561 + lastTransitionTime: 19562 + description: |- 19563 + lastTransitionTime is the last time the condition transitioned from one status to another. 19564 + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 19565 + format: date-time 19566 type: string 19567 - kind: 19568 - default: GitRepository 19569 - description: Kind of the referent. 19570 - enum: 19571 - - GitRepository 19572 + message: 19573 + description: |- 19574 + message is a human readable message indicating details about the transition. 19575 + This may be an empty string. 19576 + maxLength: 32768 19577 type: string 19578 - name: 19579 - description: Name of the referent. 19580 + observedGeneration: 19581 + description: |- 19582 + observedGeneration represents the .metadata.generation that the condition was set based upon. 19583 + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 19584 + with respect to the current state of the instance. 19585 + format: int64 19586 + minimum: 0 19587 + type: integer 19588 + reason: 19589 + description: |- 19590 + reason contains a programmatic identifier indicating the reason for the condition's last transition. 19591 + Producers of specific condition types may define expected values and meanings for this field, 19592 + and whether the values are considered a guaranteed API. 19593 + The value should be a CamelCase string. 19594 + This field may not be empty. 19595 + maxLength: 1024 19596 + minLength: 1 19597 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 19598 type: string 19599 - namespace: 19600 - description: Namespace of the referent, defaults to the namespace of the Kubernetes resource object that contains the reference. 19601 + status: 19602 + description: status of the condition, one of True, False, Unknown. 19603 + enum: 19604 + - "True" 19605 + - "False" 19606 + - Unknown 19607 + type: string 19608 + type: 19609 + description: type of condition in CamelCase or in foo.example.com/CamelCase. 19610 + maxLength: 316 19611 + 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])$ 19612 type: string 19613 required: 19614 - - kind 19615 - - name 19616 + - lastTransitionTime 19617 + - message 19618 + - reason 19619 + - status 19620 + - type 19621 type: object 19622 - suspend: 19623 - description: |- 19624 - Suspend tells the controller to not run this automation, until 19625 - it is unset (or set to false). Defaults to false. 19626 - type: boolean 19627 - update: 19628 - default: 19629 - strategy: Setters 19630 - description: |- 19631 - Update gives the specification for how to update the files in 19632 - the repository. This can be left empty, to use the default 19633 - value. 19634 + type: array 19635 + lastAutomationRunTime: 19636 + description: |- 19637 + LastAutomationRunTime records the last time the controller ran 19638 + this automation through to completion (even if no updates were 19639 + made). 19640 + format: date-time 19641 + type: string 19642 + lastHandledReconcileAt: 19643 + description: |- 19644 + LastHandledReconcileAt holds the value of the most recent 19645 + reconcile request value, so a change of the annotation value 19646 + can be detected. 19647 + type: string 19648 + lastPushCommit: 19649 + description: |- 19650 + LastPushCommit records the SHA1 of the last commit made by the 19651 + controller, for this automation object 19652 + type: string 19653 + lastPushTime: 19654 + description: LastPushTime records the time of the last pushed change. 19655 + format: date-time 19656 + type: string 19657 + observedGeneration: 19658 + format: int64 19659 + type: integer 19660 + observedPolicies: 19661 + additionalProperties: 19662 + description: ImageRef represents an image reference. 19663 properties: 19664 - path: 19665 - description: |- 19666 - Path to the directory containing the manifests to be updated. 19667 - Defaults to 'None', which translates to the root path 19668 - of the GitRepositoryRef. 19669 + digest: 19670 + description: Digest is the image's digest. 19671 type: string 19672 - strategy: 19673 - default: Setters 19674 - description: Strategy names the strategy to be used. 19675 - enum: 19676 - - Setters 19677 + name: 19678 + description: Name is the bare image's name. 19679 type: string 19680 + tag: 19681 + description: Tag is the image's tag. 19682 + type: string 19683 + required: 19684 + - name 19685 + - tag 19686 type: object 19687 - required: 19688 - - interval 19689 - - sourceRef 19690 - type: object 19691 - status: 19692 - default: 19693 - observedGeneration: -1 19694 - description: ImageUpdateAutomationStatus defines the observed state of ImageUpdateAutomation 19695 - properties: 19696 - conditions: 19697 - items: 19698 - description: Condition contains details for one aspect of the current state of this API Resource. 19699 - properties: 19700 - lastTransitionTime: 19701 - description: |- 19702 - lastTransitionTime is the last time the condition transitioned from one status to another. 19703 - This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. 19704 - format: date-time 19705 - type: string 19706 - message: 19707 - description: |- 19708 - message is a human readable message indicating details about the transition. 19709 - This may be an empty string. 19710 - maxLength: 32768 19711 - type: string 19712 - observedGeneration: 19713 - description: |- 19714 - observedGeneration represents the .metadata.generation that the condition was set based upon. 19715 - For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date 19716 - with respect to the current state of the instance. 19717 - format: int64 19718 - minimum: 0 19719 - type: integer 19720 - reason: 19721 - description: |- 19722 - reason contains a programmatic identifier indicating the reason for the condition's last transition. 19723 - Producers of specific condition types may define expected values and meanings for this field, 19724 - and whether the values are considered a guaranteed API. 19725 - The value should be a CamelCase string. 19726 - This field may not be empty. 19727 - maxLength: 1024 19728 - minLength: 1 19729 - pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 19730 - type: string 19731 - status: 19732 - description: status of the condition, one of True, False, Unknown. 19733 - enum: 19734 - - "True" 19735 - - "False" 19736 - - Unknown 19737 - type: string 19738 - type: 19739 - description: type of condition in CamelCase or in foo.example.com/CamelCase. 19740 - maxLength: 316 19741 - 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])$ 19742 - type: string 19743 - required: 19744 - - lastTransitionTime 19745 - - message 19746 - - reason 19747 - - status 19748 - - type 19749 - type: object 19750 - type: array 19751 - lastAutomationRunTime: 19752 - description: |- 19753 - LastAutomationRunTime records the last time the controller ran 19754 - this automation through to completion (even if no updates were 19755 - made). 19756 - format: date-time 19757 - type: string 19758 - lastHandledReconcileAt: 19759 - description: |- 19760 - LastHandledReconcileAt holds the value of the most recent 19761 - reconcile request value, so a change of the annotation value 19762 - can be detected. 19763 - type: string 19764 - lastPushCommit: 19765 - description: |- 19766 - LastPushCommit records the SHA1 of the last commit made by the 19767 - controller, for this automation object 19768 - type: string 19769 - lastPushTime: 19770 - description: LastPushTime records the time of the last pushed change. 19771 - format: date-time 19772 - type: string 19773 - observedGeneration: 19774 - format: int64 19775 - type: integer 19776 - observedPolicies: 19777 - additionalProperties: 19778 - description: ImageRef represents an image reference. 19779 - properties: 19780 - digest: 19781 - description: Digest is the image's digest. 19782 - type: string 19783 - name: 19784 - description: Name is the bare image's name. 19785 - type: string 19786 - tag: 19787 - description: Tag is the image's tag. 19788 - type: string 19789 - required: 19790 - - name 19791 - - tag 19792 - type: object 19793 - description: |- 19794 - ObservedPolicies is the list of observed ImagePolicies that were 19795 - considered by the ImageUpdateAutomation update process. 19796 - type: object 19797 - observedSourceRevision: 19798 - description: |- 19799 - ObservedPolicies []ObservedPolicy `json:"observedPolicies,omitempty"` 19800 - ObservedSourceRevision is the last observed source revision. This can be 19801 - used to determine if the source has been updated since last observation. 19802 - type: string 19803 - type: object 19804 - type: object 19805 - served: true 19806 - storage: false 19807 - subresources: 19808 - status: {} 19809 + description: |- 19810 + ObservedPolicies is the list of observed ImagePolicies that were 19811 + considered by the ImageUpdateAutomation update process. 19812 + type: object 19813 + observedSourceRevision: 19814 + description: |- 19815 + ObservedPolicies []ObservedPolicy `json:"observedPolicies,omitempty"` 19816 + ObservedSourceRevision is the last observed source revision. This can be 19817 + used to determine if the source has been updated since last observation. 19818 + type: string 19819 + type: object 19820 + type: object 19821 + served: true 19822 + storage: false 19823 + subresources: 19824 + status: {} 19825 --- 19826 apiVersion: v1 19827 kind: ServiceAccount 19828 @@ -12073,7 +8574,7 @@ metadata: 19829 app.kubernetes.io/component: image-automation-controller 19830 app.kubernetes.io/instance: flux-system 19831 app.kubernetes.io/part-of: flux 19832 - app.kubernetes.io/version: v2.7.5 19833 + app.kubernetes.io/version: v2.8.0 19834 name: image-automation-controller 19835 namespace: flux-system 19836 --- 19837 @@ -12084,7 +8585,7 @@ metadata: 19838 app.kubernetes.io/component: image-automation-controller 19839 app.kubernetes.io/instance: flux-system 19840 app.kubernetes.io/part-of: flux 19841 - app.kubernetes.io/version: v2.7.5 19842 + app.kubernetes.io/version: v2.8.0 19843 control-plane: controller 19844 name: image-automation-controller 19845 namespace: flux-system 19846 @@ -12103,62 +8604,62 @@ spec: 19847 app.kubernetes.io/component: image-automation-controller 19848 app.kubernetes.io/instance: flux-system 19849 app.kubernetes.io/part-of: flux 19850 - app.kubernetes.io/version: v2.7.5 19851 + app.kubernetes.io/version: v2.8.0 19852 spec: 19853 containers: 19854 - - args: 19855 - - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 19856 - - --watch-all-namespaces=true 19857 - - --log-level=info 19858 - - --log-encoding=json 19859 - - --enable-leader-election 19860 - env: 19861 - - name: RUNTIME_NAMESPACE 19862 - valueFrom: 19863 - fieldRef: 19864 - fieldPath: metadata.namespace 19865 - - name: GOMEMLIMIT 19866 - valueFrom: 19867 - resourceFieldRef: 19868 - containerName: manager 19869 - resource: limits.memory 19870 - image: ghcr.io/fluxcd/image-automation-controller:v1.0.4 19871 - imagePullPolicy: IfNotPresent 19872 - livenessProbe: 19873 - httpGet: 19874 - path: /healthz 19875 - port: healthz 19876 - name: manager 19877 - ports: 19878 - - containerPort: 8080 19879 - name: http-prom 19880 - protocol: TCP 19881 - - containerPort: 9440 19882 - name: healthz 19883 - protocol: TCP 19884 - readinessProbe: 19885 - httpGet: 19886 - path: /readyz 19887 - port: healthz 19888 - resources: 19889 - limits: 19890 - cpu: 1000m 19891 - memory: 1Gi 19892 - requests: 19893 - cpu: 100m 19894 - memory: 64Mi 19895 - securityContext: 19896 - allowPrivilegeEscalation: false 19897 - capabilities: 19898 - drop: 19899 - - ALL 19900 - readOnlyRootFilesystem: true 19901 - runAsNonRoot: true 19902 - seccompProfile: 19903 - type: RuntimeDefault 19904 - volumeMounts: 19905 - - mountPath: /tmp 19906 - name: temp 19907 + - args: 19908 + - --events-addr=http://notification-controller.$(RUNTIME_NAMESPACE).svc.cluster.local./ 19909 + - --watch-all-namespaces=true 19910 + - --log-level=info 19911 + - --log-encoding=json 19912 + - --enable-leader-election 19913 + env: 19914 + - name: RUNTIME_NAMESPACE 19915 + valueFrom: 19916 + fieldRef: 19917 + fieldPath: metadata.namespace 19918 + - name: GOMEMLIMIT 19919 + valueFrom: 19920 + resourceFieldRef: 19921 + containerName: manager 19922 + resource: limits.memory 19923 + image: ghcr.io/fluxcd/image-automation-controller:v1.1.0 19924 + imagePullPolicy: IfNotPresent 19925 + livenessProbe: 19926 + httpGet: 19927 + path: /healthz 19928 + port: healthz 19929 + name: manager 19930 + ports: 19931 + - containerPort: 8080 19932 + name: http-prom 19933 + protocol: TCP 19934 + - containerPort: 9440 19935 + name: healthz 19936 + protocol: TCP 19937 + readinessProbe: 19938 + httpGet: 19939 + path: /readyz 19940 + port: healthz 19941 + resources: 19942 + limits: 19943 + cpu: 1000m 19944 + memory: 1Gi 19945 + requests: 19946 + cpu: 100m 19947 + memory: 64Mi 19948 + securityContext: 19949 + allowPrivilegeEscalation: false 19950 + capabilities: 19951 + drop: 19952 + - ALL 19953 + readOnlyRootFilesystem: true 19954 + runAsNonRoot: true 19955 + seccompProfile: 19956 + type: RuntimeDefault 19957 + volumeMounts: 19958 + - mountPath: /tmp 19959 + name: temp 19960 nodeSelector: 19961 kubernetes.io/os: linux 19962 securityContext: 19963 @@ -12166,5 +8667,5 @@ spec: 19964 serviceAccountName: image-automation-controller 19965 terminationGracePeriodSeconds: 10 19966 volumes: 19967 - - emptyDir: {} 19968 - name: temp 19969 + - emptyDir: {} 19970 + name: temp