Use same Flux versions in chart and kustomization
[icn.git] / deploy / cluster / templates / flux-addon.yaml
1 {{- if .Values.flux }}
2 ---
3 apiVersion: v1
4 data:
5   flux-system.yaml: |
6     apiVersion: v1
7     kind: Namespace
8     metadata:
9       labels:
10         app.kubernetes.io/instance: flux-system
11         app.kubernetes.io/part-of: flux
12         app.kubernetes.io/version: v0.27.0
13         pod-security.kubernetes.io/warn: restricted
14         pod-security.kubernetes.io/warn-version: latest
15       name: flux-system
16     ---
17     apiVersion: apiextensions.k8s.io/v1
18     kind: CustomResourceDefinition
19     metadata:
20       annotations:
21         controller-gen.kubebuilder.io/version: v0.7.0
22       creationTimestamp: null
23       labels:
24         app.kubernetes.io/instance: flux-system
25         app.kubernetes.io/part-of: flux
26         app.kubernetes.io/version: v0.27.0
27       name: alerts.notification.toolkit.fluxcd.io
28     spec:
29       group: notification.toolkit.fluxcd.io
30       names:
31         kind: Alert
32         listKind: AlertList
33         plural: alerts
34         singular: alert
35       scope: Namespaced
36       versions:
37       - additionalPrinterColumns:
38         - jsonPath: .status.conditions[?(@.type=="Ready")].status
39           name: Ready
40           type: string
41         - jsonPath: .status.conditions[?(@.type=="Ready")].message
42           name: Status
43           type: string
44         - jsonPath: .metadata.creationTimestamp
45           name: Age
46           type: date
47         name: v1beta1
48         schema:
49           openAPIV3Schema:
50             description: Alert is the Schema for the alerts API
51             properties:
52               apiVersion:
53                 description: 'APIVersion defines the versioned schema of this representation
54                   of an object. Servers should convert recognized schemas to the latest
55                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
56                 type: string
57               kind:
58                 description: 'Kind is a string value representing the REST resource this
59                   object represents. Servers may infer this from the endpoint the client
60                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
61                 type: string
62               metadata:
63                 type: object
64               spec:
65                 description: AlertSpec defines an alerting rule for events involving a
66                   list of objects
67                 properties:
68                   eventSeverity:
69                     default: info
70                     description: Filter events based on severity, defaults to ('info').
71                       If set to 'info' no events will be filtered.
72                     enum:
73                     - info
74                     - error
75                     type: string
76                   eventSources:
77                     description: Filter events based on the involved objects.
78                     items:
79                       description: CrossNamespaceObjectReference contains enough information
80                         to let you locate the typed referenced object at cluster level
81                       properties:
82                         apiVersion:
83                           description: API version of the referent
84                           type: string
85                         kind:
86                           description: Kind of the referent
87                           enum:
88                           - Bucket
89                           - GitRepository
90                           - Kustomization
91                           - HelmRelease
92                           - HelmChart
93                           - HelmRepository
94                           - ImageRepository
95                           - ImagePolicy
96                           - ImageUpdateAutomation
97                           type: string
98                         matchLabels:
99                           additionalProperties:
100                             type: string
101                           description: MatchLabels is a map of {key,value} pairs. A single
102                             {key,value} in the matchLabels map is equivalent to an element
103                             of matchExpressions, whose key field is "key", the operator
104                             is "In", and the values array contains only "value". The requirements
105                             are ANDed.
106                           type: object
107                         name:
108                           description: Name of the referent
109                           maxLength: 53
110                           minLength: 1
111                           type: string
112                         namespace:
113                           description: Namespace of the referent
114                           maxLength: 53
115                           minLength: 1
116                           type: string
117                       required:
118                       - name
119                       type: object
120                     type: array
121                   exclusionList:
122                     description: A list of Golang regular expressions to be used for excluding
123                       messages.
124                     items:
125                       type: string
126                     type: array
127                   providerRef:
128                     description: Send events using this provider.
129                     properties:
130                       name:
131                         description: Name of the referent
132                         type: string
133                     required:
134                     - name
135                     type: object
136                   summary:
137                     description: Short description of the impact and affected cluster.
138                     type: string
139                   suspend:
140                     description: This flag tells the controller to suspend subsequent
141                       events dispatching. Defaults to false.
142                     type: boolean
143                 required:
144                 - eventSources
145                 - providerRef
146                 type: object
147               status:
148                 default:
149                   observedGeneration: -1
150                 description: AlertStatus defines the observed state of Alert
151                 properties:
152                   conditions:
153                     items:
154                       description: "Condition contains details for one aspect of the current
155                         state of this API Resource. --- This struct is intended for direct
156                         use as an array at the field path .status.conditions.  For example,
157                         type FooStatus struct{     // Represents the observations of a
158                         foo's current state.     // Known .status.conditions.type are:
159                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
160                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
161                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
162                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
163                         \n     // other fields }"
164                       properties:
165                         lastTransitionTime:
166                           description: lastTransitionTime is the last time the condition
167                             transitioned from one status to another. This should be when
168                             the underlying condition changed.  If that is not known, then
169                             using the time when the API field changed is acceptable.
170                           format: date-time
171                           type: string
172                         message:
173                           description: message is a human readable message indicating
174                             details about the transition. This may be an empty string.
175                           maxLength: 32768
176                           type: string
177                         observedGeneration:
178                           description: observedGeneration represents the .metadata.generation
179                             that the condition was set based upon. For instance, if .metadata.generation
180                             is currently 12, but the .status.conditions[x].observedGeneration
181                             is 9, the condition is out of date with respect to the current
182                             state of the instance.
183                           format: int64
184                           minimum: 0
185                           type: integer
186                         reason:
187                           description: reason contains a programmatic identifier indicating
188                             the reason for the condition's last transition. Producers
189                             of specific condition types may define expected values and
190                             meanings for this field, and whether the values are considered
191                             a guaranteed API. The value should be a CamelCase string.
192                             This field may not be empty.
193                           maxLength: 1024
194                           minLength: 1
195                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
196                           type: string
197                         status:
198                           description: status of the condition, one of True, False, Unknown.
199                           enum:
200                           - "True"
201                           - "False"
202                           - Unknown
203                           type: string
204                         type:
205                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
206                             --- Many .condition.type values are consistent across resources
207                             like Available, but because arbitrary conditions can be useful
208                             (see .node.status.conditions), the ability to deconflict is
209                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
210                           maxLength: 316
211                           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])$
212                           type: string
213                       required:
214                       - lastTransitionTime
215                       - message
216                       - reason
217                       - status
218                       - type
219                       type: object
220                     type: array
221                   observedGeneration:
222                     description: ObservedGeneration is the last observed generation.
223                     format: int64
224                     type: integer
225                 type: object
226             type: object
227         served: true
228         storage: true
229         subresources:
230           status: {}
231     status:
232       acceptedNames:
233         kind: ""
234         plural: ""
235       conditions: []
236       storedVersions: []
237     ---
238     apiVersion: apiextensions.k8s.io/v1
239     kind: CustomResourceDefinition
240     metadata:
241       annotations:
242         controller-gen.kubebuilder.io/version: v0.7.0
243       creationTimestamp: null
244       labels:
245         app.kubernetes.io/instance: flux-system
246         app.kubernetes.io/part-of: flux
247         app.kubernetes.io/version: v0.27.0
248       name: buckets.source.toolkit.fluxcd.io
249     spec:
250       group: source.toolkit.fluxcd.io
251       names:
252         kind: Bucket
253         listKind: BucketList
254         plural: buckets
255         singular: bucket
256       scope: Namespaced
257       versions:
258       - additionalPrinterColumns:
259         - jsonPath: .spec.endpoint
260           name: Endpoint
261           type: string
262         - jsonPath: .status.conditions[?(@.type=="Ready")].status
263           name: Ready
264           type: string
265         - jsonPath: .status.conditions[?(@.type=="Ready")].message
266           name: Status
267           type: string
268         - jsonPath: .metadata.creationTimestamp
269           name: Age
270           type: date
271         name: v1beta1
272         schema:
273           openAPIV3Schema:
274             description: Bucket is the Schema for the buckets API
275             properties:
276               apiVersion:
277                 description: 'APIVersion defines the versioned schema of this representation
278                   of an object. Servers should convert recognized schemas to the latest
279                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
280                 type: string
281               kind:
282                 description: 'Kind is a string value representing the REST resource this
283                   object represents. Servers may infer this from the endpoint the client
284                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
285                 type: string
286               metadata:
287                 type: object
288               spec:
289                 description: BucketSpec defines the desired state of an S3 compatible
290                   bucket
291                 properties:
292                   accessFrom:
293                     description: AccessFrom defines an Access Control List for allowing
294                       cross-namespace references to this object.
295                     properties:
296                       namespaceSelectors:
297                         description: NamespaceSelectors is the list of namespace selectors
298                           to which this ACL applies. Items in this list are evaluated
299                           using a logical OR operation.
300                         items:
301                           description: NamespaceSelector selects the namespaces to which
302                             this ACL applies. An empty map of MatchLabels matches all
303                             namespaces in a cluster.
304                           properties:
305                             matchLabels:
306                               additionalProperties:
307                                 type: string
308                               description: MatchLabels is a map of {key,value} pairs.
309                                 A single {key,value} in the matchLabels map is equivalent
310                                 to an element of matchExpressions, whose key field is
311                                 "key", the operator is "In", and the values array contains
312                                 only "value". The requirements are ANDed.
313                               type: object
314                           type: object
315                         type: array
316                     required:
317                     - namespaceSelectors
318                     type: object
319                   bucketName:
320                     description: The bucket name.
321                     type: string
322                   endpoint:
323                     description: The bucket endpoint address.
324                     type: string
325                   ignore:
326                     description: Ignore overrides the set of excluded patterns in the
327                       .sourceignore format (which is the same as .gitignore). If not provided,
328                       a default will be used, consult the documentation for your version
329                       to find out what those are.
330                     type: string
331                   insecure:
332                     description: Insecure allows connecting to a non-TLS S3 HTTP endpoint.
333                     type: boolean
334                   interval:
335                     description: The interval at which to check for bucket updates.
336                     type: string
337                   provider:
338                     default: generic
339                     description: The S3 compatible storage provider name, default ('generic').
340                     enum:
341                     - generic
342                     - aws
343                     - gcp
344                     type: string
345                   region:
346                     description: The bucket region.
347                     type: string
348                   secretRef:
349                     description: The name of the secret containing authentication credentials
350                       for the Bucket.
351                     properties:
352                       name:
353                         description: Name of the referent
354                         type: string
355                     required:
356                     - name
357                     type: object
358                   suspend:
359                     description: This flag tells the controller to suspend the reconciliation
360                       of this source.
361                     type: boolean
362                   timeout:
363                     default: 60s
364                     description: The timeout for download operations, defaults to 60s.
365                     type: string
366                 required:
367                 - bucketName
368                 - endpoint
369                 - interval
370                 type: object
371               status:
372                 default:
373                   observedGeneration: -1
374                 description: BucketStatus defines the observed state of a bucket
375                 properties:
376                   artifact:
377                     description: Artifact represents the output of the last successful
378                       Bucket sync.
379                     properties:
380                       checksum:
381                         description: Checksum is the SHA256 checksum of the artifact.
382                         type: string
383                       lastUpdateTime:
384                         description: LastUpdateTime is the timestamp corresponding to
385                           the last update of this artifact.
386                         format: date-time
387                         type: string
388                       path:
389                         description: Path is the relative file path of this artifact.
390                         type: string
391                       revision:
392                         description: Revision is a human readable identifier traceable
393                           in the origin source system. It can be a Git commit SHA, Git
394                           tag, a Helm index timestamp, a Helm chart version, etc.
395                         type: string
396                       url:
397                         description: URL is the HTTP address of this artifact.
398                         type: string
399                     required:
400                     - path
401                     - url
402                     type: object
403                   conditions:
404                     description: Conditions holds the conditions for the Bucket.
405                     items:
406                       description: "Condition contains details for one aspect of the current
407                         state of this API Resource. --- This struct is intended for direct
408                         use as an array at the field path .status.conditions.  For example,
409                         type FooStatus struct{     // Represents the observations of a
410                         foo's current state.     // Known .status.conditions.type are:
411                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
412                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
413                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
414                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
415                         \n     // other fields }"
416                       properties:
417                         lastTransitionTime:
418                           description: lastTransitionTime is the last time the condition
419                             transitioned from one status to another. This should be when
420                             the underlying condition changed.  If that is not known, then
421                             using the time when the API field changed is acceptable.
422                           format: date-time
423                           type: string
424                         message:
425                           description: message is a human readable message indicating
426                             details about the transition. This may be an empty string.
427                           maxLength: 32768
428                           type: string
429                         observedGeneration:
430                           description: observedGeneration represents the .metadata.generation
431                             that the condition was set based upon. For instance, if .metadata.generation
432                             is currently 12, but the .status.conditions[x].observedGeneration
433                             is 9, the condition is out of date with respect to the current
434                             state of the instance.
435                           format: int64
436                           minimum: 0
437                           type: integer
438                         reason:
439                           description: reason contains a programmatic identifier indicating
440                             the reason for the condition's last transition. Producers
441                             of specific condition types may define expected values and
442                             meanings for this field, and whether the values are considered
443                             a guaranteed API. The value should be a CamelCase string.
444                             This field may not be empty.
445                           maxLength: 1024
446                           minLength: 1
447                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
448                           type: string
449                         status:
450                           description: status of the condition, one of True, False, Unknown.
451                           enum:
452                           - "True"
453                           - "False"
454                           - Unknown
455                           type: string
456                         type:
457                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
458                             --- Many .condition.type values are consistent across resources
459                             like Available, but because arbitrary conditions can be useful
460                             (see .node.status.conditions), the ability to deconflict is
461                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
462                           maxLength: 316
463                           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])$
464                           type: string
465                       required:
466                       - lastTransitionTime
467                       - message
468                       - reason
469                       - status
470                       - type
471                       type: object
472                     type: array
473                   lastHandledReconcileAt:
474                     description: LastHandledReconcileAt holds the value of the most recent
475                       reconcile request value, so a change can be detected.
476                     type: string
477                   observedGeneration:
478                     description: ObservedGeneration is the last observed generation.
479                     format: int64
480                     type: integer
481                   url:
482                     description: URL is the download link for the artifact output of the
483                       last Bucket sync.
484                     type: string
485                 type: object
486             type: object
487         served: true
488         storage: true
489         subresources:
490           status: {}
491     status:
492       acceptedNames:
493         kind: ""
494         plural: ""
495       conditions: []
496       storedVersions: []
497     ---
498     apiVersion: apiextensions.k8s.io/v1
499     kind: CustomResourceDefinition
500     metadata:
501       annotations:
502         controller-gen.kubebuilder.io/version: v0.7.0
503       creationTimestamp: null
504       labels:
505         app.kubernetes.io/instance: flux-system
506         app.kubernetes.io/part-of: flux
507         app.kubernetes.io/version: v0.27.0
508       name: gitrepositories.source.toolkit.fluxcd.io
509     spec:
510       group: source.toolkit.fluxcd.io
511       names:
512         kind: GitRepository
513         listKind: GitRepositoryList
514         plural: gitrepositories
515         shortNames:
516         - gitrepo
517         singular: gitrepository
518       scope: Namespaced
519       versions:
520       - additionalPrinterColumns:
521         - jsonPath: .spec.url
522           name: URL
523           type: string
524         - jsonPath: .status.conditions[?(@.type=="Ready")].status
525           name: Ready
526           type: string
527         - jsonPath: .status.conditions[?(@.type=="Ready")].message
528           name: Status
529           type: string
530         - jsonPath: .metadata.creationTimestamp
531           name: Age
532           type: date
533         name: v1beta1
534         schema:
535           openAPIV3Schema:
536             description: GitRepository is the Schema for the gitrepositories API
537             properties:
538               apiVersion:
539                 description: 'APIVersion defines the versioned schema of this representation
540                   of an object. Servers should convert recognized schemas to the latest
541                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
542                 type: string
543               kind:
544                 description: 'Kind is a string value representing the REST resource this
545                   object represents. Servers may infer this from the endpoint the client
546                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
547                 type: string
548               metadata:
549                 type: object
550               spec:
551                 description: GitRepositorySpec defines the desired state of a Git repository.
552                 properties:
553                   accessFrom:
554                     description: AccessFrom defines an Access Control List for allowing
555                       cross-namespace references to this object.
556                     properties:
557                       namespaceSelectors:
558                         description: NamespaceSelectors is the list of namespace selectors
559                           to which this ACL applies. Items in this list are evaluated
560                           using a logical OR operation.
561                         items:
562                           description: NamespaceSelector selects the namespaces to which
563                             this ACL applies. An empty map of MatchLabels matches all
564                             namespaces in a cluster.
565                           properties:
566                             matchLabels:
567                               additionalProperties:
568                                 type: string
569                               description: MatchLabels is a map of {key,value} pairs.
570                                 A single {key,value} in the matchLabels map is equivalent
571                                 to an element of matchExpressions, whose key field is
572                                 "key", the operator is "In", and the values array contains
573                                 only "value". The requirements are ANDed.
574                               type: object
575                           type: object
576                         type: array
577                     required:
578                     - namespaceSelectors
579                     type: object
580                   gitImplementation:
581                     default: go-git
582                     description: Determines which git client library to use. Defaults
583                       to go-git, valid values are ('go-git', 'libgit2').
584                     enum:
585                     - go-git
586                     - libgit2
587                     type: string
588                   ignore:
589                     description: Ignore overrides the set of excluded patterns in the
590                       .sourceignore format (which is the same as .gitignore). If not provided,
591                       a default will be used, consult the documentation for your version
592                       to find out what those are.
593                     type: string
594                   include:
595                     description: Extra git repositories to map into the repository
596                     items:
597                       description: GitRepositoryInclude defines a source with a from and
598                         to path.
599                       properties:
600                         fromPath:
601                           description: The path to copy contents from, defaults to the
602                             root directory.
603                           type: string
604                         repository:
605                           description: Reference to a GitRepository to include.
606                           properties:
607                             name:
608                               description: Name of the referent
609                               type: string
610                           required:
611                           - name
612                           type: object
613                         toPath:
614                           description: The path to copy contents to, defaults to the name
615                             of the source ref.
616                           type: string
617                       required:
618                       - repository
619                       type: object
620                     type: array
621                   interval:
622                     description: The interval at which to check for repository updates.
623                     type: string
624                   recurseSubmodules:
625                     description: When enabled, after the clone is created, initializes
626                       all submodules within, using their default settings. This option
627                       is available only when using the 'go-git' GitImplementation.
628                     type: boolean
629                   ref:
630                     description: The Git reference to checkout and monitor for changes,
631                       defaults to master branch.
632                     properties:
633                       branch:
634                         description: The Git branch to checkout, defaults to master.
635                         type: string
636                       commit:
637                         description: The Git commit SHA to checkout, if specified Tag
638                           filters will be ignored.
639                         type: string
640                       semver:
641                         description: The Git tag semver expression, takes precedence over
642                           Tag.
643                         type: string
644                       tag:
645                         description: The Git tag to checkout, takes precedence over Branch.
646                         type: string
647                     type: object
648                   secretRef:
649                     description: The secret name containing the Git credentials. For HTTPS
650                       repositories the secret must contain username and password fields.
651                       For SSH repositories the secret must contain identity, identity.pub
652                       and known_hosts fields.
653                     properties:
654                       name:
655                         description: Name of the referent
656                         type: string
657                     required:
658                     - name
659                     type: object
660                   suspend:
661                     description: This flag tells the controller to suspend the reconciliation
662                       of this source.
663                     type: boolean
664                   timeout:
665                     default: 60s
666                     description: The timeout for remote Git operations like cloning, defaults
667                       to 60s.
668                     type: string
669                   url:
670                     description: The repository URL, can be a HTTP/S or SSH address.
671                     pattern: ^(http|https|ssh)://
672                     type: string
673                   verify:
674                     description: Verify OpenPGP signature for the Git commit HEAD points
675                       to.
676                     properties:
677                       mode:
678                         description: Mode describes what git object should be verified,
679                           currently ('head').
680                         enum:
681                         - head
682                         type: string
683                       secretRef:
684                         description: The secret name containing the public keys of all
685                           trusted Git authors.
686                         properties:
687                           name:
688                             description: Name of the referent
689                             type: string
690                         required:
691                         - name
692                         type: object
693                     required:
694                     - mode
695                     type: object
696                 required:
697                 - interval
698                 - url
699                 type: object
700               status:
701                 default:
702                   observedGeneration: -1
703                 description: GitRepositoryStatus defines the observed state of a Git repository.
704                 properties:
705                   artifact:
706                     description: Artifact represents the output of the last successful
707                       repository sync.
708                     properties:
709                       checksum:
710                         description: Checksum is the SHA256 checksum of the artifact.
711                         type: string
712                       lastUpdateTime:
713                         description: LastUpdateTime is the timestamp corresponding to
714                           the last update of this artifact.
715                         format: date-time
716                         type: string
717                       path:
718                         description: Path is the relative file path of this artifact.
719                         type: string
720                       revision:
721                         description: Revision is a human readable identifier traceable
722                           in the origin source system. It can be a Git commit SHA, Git
723                           tag, a Helm index timestamp, a Helm chart version, etc.
724                         type: string
725                       url:
726                         description: URL is the HTTP address of this artifact.
727                         type: string
728                     required:
729                     - path
730                     - url
731                     type: object
732                   conditions:
733                     description: Conditions holds the conditions for the GitRepository.
734                     items:
735                       description: "Condition contains details for one aspect of the current
736                         state of this API Resource. --- This struct is intended for direct
737                         use as an array at the field path .status.conditions.  For example,
738                         type FooStatus struct{     // Represents the observations of a
739                         foo's current state.     // Known .status.conditions.type are:
740                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
741                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
742                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
743                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
744                         \n     // other fields }"
745                       properties:
746                         lastTransitionTime:
747                           description: lastTransitionTime is the last time the condition
748                             transitioned from one status to another. This should be when
749                             the underlying condition changed.  If that is not known, then
750                             using the time when the API field changed is acceptable.
751                           format: date-time
752                           type: string
753                         message:
754                           description: message is a human readable message indicating
755                             details about the transition. This may be an empty string.
756                           maxLength: 32768
757                           type: string
758                         observedGeneration:
759                           description: observedGeneration represents the .metadata.generation
760                             that the condition was set based upon. For instance, if .metadata.generation
761                             is currently 12, but the .status.conditions[x].observedGeneration
762                             is 9, the condition is out of date with respect to the current
763                             state of the instance.
764                           format: int64
765                           minimum: 0
766                           type: integer
767                         reason:
768                           description: reason contains a programmatic identifier indicating
769                             the reason for the condition's last transition. Producers
770                             of specific condition types may define expected values and
771                             meanings for this field, and whether the values are considered
772                             a guaranteed API. The value should be a CamelCase string.
773                             This field may not be empty.
774                           maxLength: 1024
775                           minLength: 1
776                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
777                           type: string
778                         status:
779                           description: status of the condition, one of True, False, Unknown.
780                           enum:
781                           - "True"
782                           - "False"
783                           - Unknown
784                           type: string
785                         type:
786                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
787                             --- Many .condition.type values are consistent across resources
788                             like Available, but because arbitrary conditions can be useful
789                             (see .node.status.conditions), the ability to deconflict is
790                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
791                           maxLength: 316
792                           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])$
793                           type: string
794                       required:
795                       - lastTransitionTime
796                       - message
797                       - reason
798                       - status
799                       - type
800                       type: object
801                     type: array
802                   includedArtifacts:
803                     description: IncludedArtifacts represents the included artifacts from
804                       the last successful repository sync.
805                     items:
806                       description: Artifact represents the output of a source synchronisation.
807                       properties:
808                         checksum:
809                           description: Checksum is the SHA256 checksum of the artifact.
810                           type: string
811                         lastUpdateTime:
812                           description: LastUpdateTime is the timestamp corresponding to
813                             the last update of this artifact.
814                           format: date-time
815                           type: string
816                         path:
817                           description: Path is the relative file path of this artifact.
818                           type: string
819                         revision:
820                           description: Revision is a human readable identifier traceable
821                             in the origin source system. It can be a Git commit SHA, Git
822                             tag, a Helm index timestamp, a Helm chart version, etc.
823                           type: string
824                         url:
825                           description: URL is the HTTP address of this artifact.
826                           type: string
827                       required:
828                       - path
829                       - url
830                       type: object
831                     type: array
832                   lastHandledReconcileAt:
833                     description: LastHandledReconcileAt holds the value of the most recent
834                       reconcile request value, so a change can be detected.
835                     type: string
836                   observedGeneration:
837                     description: ObservedGeneration is the last observed generation.
838                     format: int64
839                     type: integer
840                   url:
841                     description: URL is the download link for the artifact output of the
842                       last repository sync.
843                     type: string
844                 type: object
845             type: object
846         served: true
847         storage: true
848         subresources:
849           status: {}
850     status:
851       acceptedNames:
852         kind: ""
853         plural: ""
854       conditions: []
855       storedVersions: []
856     ---
857     apiVersion: apiextensions.k8s.io/v1
858     kind: CustomResourceDefinition
859     metadata:
860       annotations:
861         controller-gen.kubebuilder.io/version: v0.7.0
862       creationTimestamp: null
863       labels:
864         app.kubernetes.io/instance: flux-system
865         app.kubernetes.io/part-of: flux
866         app.kubernetes.io/version: v0.27.0
867       name: helmcharts.source.toolkit.fluxcd.io
868     spec:
869       group: source.toolkit.fluxcd.io
870       names:
871         kind: HelmChart
872         listKind: HelmChartList
873         plural: helmcharts
874         shortNames:
875         - hc
876         singular: helmchart
877       scope: Namespaced
878       versions:
879       - additionalPrinterColumns:
880         - jsonPath: .spec.chart
881           name: Chart
882           type: string
883         - jsonPath: .spec.version
884           name: Version
885           type: string
886         - jsonPath: .spec.sourceRef.kind
887           name: Source Kind
888           type: string
889         - jsonPath: .spec.sourceRef.name
890           name: Source Name
891           type: string
892         - jsonPath: .status.conditions[?(@.type=="Ready")].status
893           name: Ready
894           type: string
895         - jsonPath: .status.conditions[?(@.type=="Ready")].message
896           name: Status
897           type: string
898         - jsonPath: .metadata.creationTimestamp
899           name: Age
900           type: date
901         name: v1beta1
902         schema:
903           openAPIV3Schema:
904             description: HelmChart is the Schema for the helmcharts API
905             properties:
906               apiVersion:
907                 description: 'APIVersion defines the versioned schema of this representation
908                   of an object. Servers should convert recognized schemas to the latest
909                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
910                 type: string
911               kind:
912                 description: 'Kind is a string value representing the REST resource this
913                   object represents. Servers may infer this from the endpoint the client
914                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
915                 type: string
916               metadata:
917                 type: object
918               spec:
919                 description: HelmChartSpec defines the desired state of a Helm chart.
920                 properties:
921                   accessFrom:
922                     description: AccessFrom defines an Access Control List for allowing
923                       cross-namespace references to this object.
924                     properties:
925                       namespaceSelectors:
926                         description: NamespaceSelectors is the list of namespace selectors
927                           to which this ACL applies. Items in this list are evaluated
928                           using a logical OR operation.
929                         items:
930                           description: NamespaceSelector selects the namespaces to which
931                             this ACL applies. An empty map of MatchLabels matches all
932                             namespaces in a cluster.
933                           properties:
934                             matchLabels:
935                               additionalProperties:
936                                 type: string
937                               description: MatchLabels is a map of {key,value} pairs.
938                                 A single {key,value} in the matchLabels map is equivalent
939                                 to an element of matchExpressions, whose key field is
940                                 "key", the operator is "In", and the values array contains
941                                 only "value". The requirements are ANDed.
942                               type: object
943                           type: object
944                         type: array
945                     required:
946                     - namespaceSelectors
947                     type: object
948                   chart:
949                     description: The name or path the Helm chart is available at in the
950                       SourceRef.
951                     type: string
952                   interval:
953                     description: The interval at which to check the Source for updates.
954                     type: string
955                   reconcileStrategy:
956                     default: ChartVersion
957                     description: Determines what enables the creation of a new artifact.
958                       Valid values are ('ChartVersion', 'Revision'). See the documentation
959                       of the values for an explanation on their behavior. Defaults to
960                       ChartVersion when omitted.
961                     enum:
962                     - ChartVersion
963                     - Revision
964                     type: string
965                   sourceRef:
966                     description: The reference to the Source the chart is available at.
967                     properties:
968                       apiVersion:
969                         description: APIVersion of the referent.
970                         type: string
971                       kind:
972                         description: Kind of the referent, valid values are ('HelmRepository',
973                           'GitRepository', 'Bucket').
974                         enum:
975                         - HelmRepository
976                         - GitRepository
977                         - Bucket
978                         type: string
979                       name:
980                         description: Name of the referent.
981                         type: string
982                     required:
983                     - kind
984                     - name
985                     type: object
986                   suspend:
987                     description: This flag tells the controller to suspend the reconciliation
988                       of this source.
989                     type: boolean
990                   valuesFile:
991                     description: Alternative values file to use as the default chart values,
992                       expected to be a relative path in the SourceRef. Deprecated in favor
993                       of ValuesFiles, for backwards compatibility the file defined here
994                       is merged before the ValuesFiles items. Ignored when omitted.
995                     type: string
996                   valuesFiles:
997                     description: Alternative list of values files to use as the chart
998                       values (values.yaml is not included by default), expected to be
999                       a relative path in the SourceRef. Values files are merged in the
1000                       order of this list with the last file overriding the first. Ignored
1001                       when omitted.
1002                     items:
1003                       type: string
1004                     type: array
1005                   version:
1006                     default: '*'
1007                     description: The chart version semver expression, ignored for charts
1008                       from GitRepository and Bucket sources. Defaults to latest when omitted.
1009                     type: string
1010                 required:
1011                 - chart
1012                 - interval
1013                 - sourceRef
1014                 type: object
1015               status:
1016                 default:
1017                   observedGeneration: -1
1018                 description: HelmChartStatus defines the observed state of the HelmChart.
1019                 properties:
1020                   artifact:
1021                     description: Artifact represents the output of the last successful
1022                       chart sync.
1023                     properties:
1024                       checksum:
1025                         description: Checksum is the SHA256 checksum of the artifact.
1026                         type: string
1027                       lastUpdateTime:
1028                         description: LastUpdateTime is the timestamp corresponding to
1029                           the last update of this artifact.
1030                         format: date-time
1031                         type: string
1032                       path:
1033                         description: Path is the relative file path of this artifact.
1034                         type: string
1035                       revision:
1036                         description: Revision is a human readable identifier traceable
1037                           in the origin source system. It can be a Git commit SHA, Git
1038                           tag, a Helm index timestamp, a Helm chart version, etc.
1039                         type: string
1040                       url:
1041                         description: URL is the HTTP address of this artifact.
1042                         type: string
1043                     required:
1044                     - path
1045                     - url
1046                     type: object
1047                   conditions:
1048                     description: Conditions holds the conditions for the HelmChart.
1049                     items:
1050                       description: "Condition contains details for one aspect of the current
1051                         state of this API Resource. --- This struct is intended for direct
1052                         use as an array at the field path .status.conditions.  For example,
1053                         type FooStatus struct{     // Represents the observations of a
1054                         foo's current state.     // Known .status.conditions.type are:
1055                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
1056                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
1057                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
1058                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
1059                         \n     // other fields }"
1060                       properties:
1061                         lastTransitionTime:
1062                           description: lastTransitionTime is the last time the condition
1063                             transitioned from one status to another. This should be when
1064                             the underlying condition changed.  If that is not known, then
1065                             using the time when the API field changed is acceptable.
1066                           format: date-time
1067                           type: string
1068                         message:
1069                           description: message is a human readable message indicating
1070                             details about the transition. This may be an empty string.
1071                           maxLength: 32768
1072                           type: string
1073                         observedGeneration:
1074                           description: observedGeneration represents the .metadata.generation
1075                             that the condition was set based upon. For instance, if .metadata.generation
1076                             is currently 12, but the .status.conditions[x].observedGeneration
1077                             is 9, the condition is out of date with respect to the current
1078                             state of the instance.
1079                           format: int64
1080                           minimum: 0
1081                           type: integer
1082                         reason:
1083                           description: reason contains a programmatic identifier indicating
1084                             the reason for the condition's last transition. Producers
1085                             of specific condition types may define expected values and
1086                             meanings for this field, and whether the values are considered
1087                             a guaranteed API. The value should be a CamelCase string.
1088                             This field may not be empty.
1089                           maxLength: 1024
1090                           minLength: 1
1091                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
1092                           type: string
1093                         status:
1094                           description: status of the condition, one of True, False, Unknown.
1095                           enum:
1096                           - "True"
1097                           - "False"
1098                           - Unknown
1099                           type: string
1100                         type:
1101                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
1102                             --- Many .condition.type values are consistent across resources
1103                             like Available, but because arbitrary conditions can be useful
1104                             (see .node.status.conditions), the ability to deconflict is
1105                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
1106                           maxLength: 316
1107                           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])$
1108                           type: string
1109                       required:
1110                       - lastTransitionTime
1111                       - message
1112                       - reason
1113                       - status
1114                       - type
1115                       type: object
1116                     type: array
1117                   lastHandledReconcileAt:
1118                     description: LastHandledReconcileAt holds the value of the most recent
1119                       reconcile request value, so a change can be detected.
1120                     type: string
1121                   observedGeneration:
1122                     description: ObservedGeneration is the last observed generation.
1123                     format: int64
1124                     type: integer
1125                   url:
1126                     description: URL is the download link for the last chart pulled.
1127                     type: string
1128                 type: object
1129             type: object
1130         served: true
1131         storage: true
1132         subresources:
1133           status: {}
1134     status:
1135       acceptedNames:
1136         kind: ""
1137         plural: ""
1138       conditions: []
1139       storedVersions: []
1140     ---
1141     apiVersion: apiextensions.k8s.io/v1
1142     kind: CustomResourceDefinition
1143     metadata:
1144       annotations:
1145         controller-gen.kubebuilder.io/version: v0.7.0
1146       creationTimestamp: null
1147       labels:
1148         app.kubernetes.io/instance: flux-system
1149         app.kubernetes.io/part-of: flux
1150         app.kubernetes.io/version: v0.27.0
1151       name: helmreleases.helm.toolkit.fluxcd.io
1152     spec:
1153       group: helm.toolkit.fluxcd.io
1154       names:
1155         kind: HelmRelease
1156         listKind: HelmReleaseList
1157         plural: helmreleases
1158         shortNames:
1159         - hr
1160         singular: helmrelease
1161       scope: Namespaced
1162       versions:
1163       - additionalPrinterColumns:
1164         - jsonPath: .status.conditions[?(@.type=="Ready")].status
1165           name: Ready
1166           type: string
1167         - jsonPath: .status.conditions[?(@.type=="Ready")].message
1168           name: Status
1169           type: string
1170         - jsonPath: .metadata.creationTimestamp
1171           name: Age
1172           type: date
1173         name: v2beta1
1174         schema:
1175           openAPIV3Schema:
1176             description: HelmRelease is the Schema for the helmreleases API
1177             properties:
1178               apiVersion:
1179                 description: 'APIVersion defines the versioned schema of this representation
1180                   of an object. Servers should convert recognized schemas to the latest
1181                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
1182                 type: string
1183               kind:
1184                 description: 'Kind is a string value representing the REST resource this
1185                   object represents. Servers may infer this from the endpoint the client
1186                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
1187                 type: string
1188               metadata:
1189                 type: object
1190               spec:
1191                 description: HelmReleaseSpec defines the desired state of a Helm release.
1192                 properties:
1193                   chart:
1194                     description: Chart defines the template of the v1beta1.HelmChart that
1195                       should be created for this HelmRelease.
1196                     properties:
1197                       spec:
1198                         description: Spec holds the template for the v1beta1.HelmChartSpec
1199                           for this HelmRelease.
1200                         properties:
1201                           chart:
1202                             description: The name or path the Helm chart is available
1203                               at in the SourceRef.
1204                             type: string
1205                           interval:
1206                             description: Interval at which to check the v1beta1.Source
1207                               for updates. Defaults to 'HelmReleaseSpec.Interval'.
1208                             type: string
1209                           reconcileStrategy:
1210                             default: ChartVersion
1211                             description: Determines what enables the creation of a new
1212                               artifact. Valid values are ('ChartVersion', 'Revision').
1213                               See the documentation of the values for an explanation on
1214                               their behavior. Defaults to ChartVersion when omitted.
1215                             enum:
1216                             - ChartVersion
1217                             - Revision
1218                             type: string
1219                           sourceRef:
1220                             description: The name and namespace of the v1beta1.Source
1221                               the chart is available at.
1222                             properties:
1223                               apiVersion:
1224                                 description: APIVersion of the referent.
1225                                 type: string
1226                               kind:
1227                                 description: Kind of the referent.
1228                                 enum:
1229                                 - HelmRepository
1230                                 - GitRepository
1231                                 - Bucket
1232                                 type: string
1233                               name:
1234                                 description: Name of the referent.
1235                                 maxLength: 253
1236                                 minLength: 1
1237                                 type: string
1238                               namespace:
1239                                 description: Namespace of the referent.
1240                                 maxLength: 63
1241                                 minLength: 1
1242                                 type: string
1243                             required:
1244                             - name
1245                             type: object
1246                           valuesFile:
1247                             description: Alternative values file to use as the default
1248                               chart values, expected to be a relative path in the SourceRef.
1249                               Deprecated in favor of ValuesFiles, for backwards compatibility
1250                               the file defined here is merged before the ValuesFiles items.
1251                               Ignored when omitted.
1252                             type: string
1253                           valuesFiles:
1254                             description: Alternative list of values files to use as the
1255                               chart values (values.yaml is not included by default), expected
1256                               to be a relative path in the SourceRef. Values files are
1257                               merged in the order of this list with the last file overriding
1258                               the first. Ignored when omitted.
1259                             items:
1260                               type: string
1261                             type: array
1262                           version:
1263                             default: '*'
1264                             description: Version semver expression, ignored for charts
1265                               from v1beta1.GitRepository and v1beta1.Bucket sources. Defaults
1266                               to latest when omitted.
1267                             type: string
1268                         required:
1269                         - chart
1270                         - sourceRef
1271                         type: object
1272                     required:
1273                     - spec
1274                     type: object
1275                   dependsOn:
1276                     description: DependsOn may contain a dependency.CrossNamespaceDependencyReference
1277                       slice with references to HelmRelease resources that must be ready
1278                       before this HelmRelease can be reconciled.
1279                     items:
1280                       description: CrossNamespaceDependencyReference holds the reference
1281                         to a dependency.
1282                       properties:
1283                         name:
1284                           description: Name holds the name reference of a dependency.
1285                           type: string
1286                         namespace:
1287                           description: Namespace holds the namespace reference of a dependency.
1288                           type: string
1289                       required:
1290                       - name
1291                       type: object
1292                     type: array
1293                   install:
1294                     description: Install holds the configuration for Helm install actions
1295                       for this HelmRelease.
1296                     properties:
1297                       crds:
1298                         description: "CRDs upgrade CRDs from the Helm Chart's crds directory
1299                           according to the CRD upgrade policy provided here. Valid values
1300                           are `Skip`, `Create` or `CreateReplace`. Default is `Create`
1301                           and if omitted CRDs are installed but not updated. \n Skip:
1302                           do neither install nor replace (update) any CRDs. \n Create:
1303                           new CRDs are created, existing CRDs are neither updated nor
1304                           deleted. \n CreateReplace: new CRDs are created, existing CRDs
1305                           are updated (replaced) but not deleted. \n By default, CRDs
1306                           are applied (installed) during Helm install action. With this
1307                           option users can opt-in to CRD replace existing CRDs on Helm
1308                           install actions, which is not (yet) natively supported by Helm.
1309                           https://helm.sh/docs/chart_best_practices/custom_resource_definitions."
1310                         enum:
1311                         - Skip
1312                         - Create
1313                         - CreateReplace
1314                         type: string
1315                       createNamespace:
1316                         description: CreateNamespace tells the Helm install action to
1317                           create the HelmReleaseSpec.TargetNamespace if it does not exist
1318                           yet. On uninstall, the namespace will not be garbage collected.
1319                         type: boolean
1320                       disableHooks:
1321                         description: DisableHooks prevents hooks from running during the
1322                           Helm install action.
1323                         type: boolean
1324                       disableOpenAPIValidation:
1325                         description: DisableOpenAPIValidation prevents the Helm install
1326                           action from validating rendered templates against the Kubernetes
1327                           OpenAPI Schema.
1328                         type: boolean
1329                       disableWait:
1330                         description: DisableWait disables the waiting for resources to
1331                           be ready after a Helm install has been performed.
1332                         type: boolean
1333                       disableWaitForJobs:
1334                         description: DisableWaitForJobs disables waiting for jobs to complete
1335                           after a Helm install has been performed.
1336                         type: boolean
1337                       remediation:
1338                         description: Remediation holds the remediation configuration for
1339                           when the Helm install action for the HelmRelease fails. The
1340                           default is to not perform any action.
1341                         properties:
1342                           ignoreTestFailures:
1343                             description: IgnoreTestFailures tells the controller to skip
1344                               remediation when the Helm tests are run after an install
1345                               action but fail. Defaults to 'Test.IgnoreFailures'.
1346                             type: boolean
1347                           remediateLastFailure:
1348                             description: RemediateLastFailure tells the controller to
1349                               remediate the last failure, when no retries remain. Defaults
1350                               to 'false'.
1351                             type: boolean
1352                           retries:
1353                             description: Retries is the number of retries that should
1354                               be attempted on failures before bailing. Remediation, using
1355                               an uninstall, is performed between each attempt. Defaults
1356                               to '0', a negative integer equals to unlimited retries.
1357                             type: integer
1358                         type: object
1359                       replace:
1360                         description: Replace tells the Helm install action to re-use the
1361                           'ReleaseName', but only if that name is a deleted release which
1362                           remains in the history.
1363                         type: boolean
1364                       skipCRDs:
1365                         description: "SkipCRDs tells the Helm install action to not install
1366                           any CRDs. By default, CRDs are installed if not already present.
1367                           \n Deprecated use CRD policy (`crds`) attribute with value `Skip`
1368                           instead."
1369                         type: boolean
1370                       timeout:
1371                         description: Timeout is the time to wait for any individual Kubernetes
1372                           operation (like Jobs for hooks) during the performance of a
1373                           Helm install action. Defaults to 'HelmReleaseSpec.Timeout'.
1374                         type: string
1375                     type: object
1376                   interval:
1377                     description: Interval at which to reconcile the Helm release.
1378                     type: string
1379                   kubeConfig:
1380                     description: KubeConfig for reconciling the HelmRelease on a remote
1381                       cluster. When specified, KubeConfig takes precedence over ServiceAccountName.
1382                     properties:
1383                       secretRef:
1384                         description: SecretRef holds the name to a secret that contains
1385                           a 'value' key with the kubeconfig file as the value. It must
1386                           be in the same namespace as the HelmRelease. It is recommended
1387                           that the kubeconfig is self-contained, and the secret is regularly
1388                           updated if credentials such as a cloud-access-token expire.
1389                           Cloud specific `cmd-path` auth helpers will not function without
1390                           adding binaries and credentials to the Pod that is responsible
1391                           for reconciling the HelmRelease.
1392                         properties:
1393                           name:
1394                             description: Name of the referent
1395                             type: string
1396                         required:
1397                         - name
1398                         type: object
1399                     type: object
1400                   maxHistory:
1401                     description: MaxHistory is the number of revisions saved by Helm for
1402                       this HelmRelease. Use '0' for an unlimited number of revisions;
1403                       defaults to '10'.
1404                     type: integer
1405                   postRenderers:
1406                     description: PostRenderers holds an array of Helm PostRenderers, which
1407                       will be applied in order of their definition.
1408                     items:
1409                       description: PostRenderer contains a Helm PostRenderer specification.
1410                       properties:
1411                         kustomize:
1412                           description: Kustomization to apply as PostRenderer.
1413                           properties:
1414                             images:
1415                               description: Images is a list of (image name, new name,
1416                                 new tag or digest) for changing image names, tags or digests.
1417                                 This can also be achieved with a patch, but this operator
1418                                 is simpler to specify.
1419                               items:
1420                                 description: Image contains an image name, a new name,
1421                                   a new tag or digest, which will replace the original
1422                                   name and tag.
1423                                 properties:
1424                                   digest:
1425                                     description: Digest is the value used to replace the
1426                                       original image tag. If digest is present NewTag
1427                                       value is ignored.
1428                                     type: string
1429                                   name:
1430                                     description: Name is a tag-less image name.
1431                                     type: string
1432                                   newName:
1433                                     description: NewName is the value used to replace
1434                                       the original name.
1435                                     type: string
1436                                   newTag:
1437                                     description: NewTag is the value used to replace the
1438                                       original tag.
1439                                     type: string
1440                                 required:
1441                                 - name
1442                                 type: object
1443                               type: array
1444                             patchesJson6902:
1445                               description: JSON 6902 patches, defined as inline YAML objects.
1446                               items:
1447                                 description: JSON6902Patch contains a JSON6902 patch and
1448                                   the target the patch should be applied to.
1449                                 properties:
1450                                   patch:
1451                                     description: Patch contains the JSON6902 patch document
1452                                       with an array of operation objects.
1453                                     items:
1454                                       description: JSON6902 is a JSON6902 operation object.
1455                                         https://datatracker.ietf.org/doc/html/rfc6902#section-4
1456                                       properties:
1457                                         from:
1458                                           description: From contains a JSON-pointer value
1459                                             that references a location within the target
1460                                             document where the operation is performed.
1461                                             The meaning of the value depends on the value
1462                                             of Op, and is NOT taken into account by all
1463                                             operations.
1464                                           type: string
1465                                         op:
1466                                           description: Op indicates the operation to perform.
1467                                             Its value MUST be one of "add", "remove",
1468                                             "replace", "move", "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4
1469                                           enum:
1470                                           - test
1471                                           - remove
1472                                           - add
1473                                           - replace
1474                                           - move
1475                                           - copy
1476                                           type: string
1477                                         path:
1478                                           description: Path contains the JSON-pointer
1479                                             value that references a location within the
1480                                             target document where the operation is performed.
1481                                             The meaning of the value depends on the value
1482                                             of Op.
1483                                           type: string
1484                                         value:
1485                                           description: Value contains a valid JSON structure.
1486                                             The meaning of the value depends on the value
1487                                             of Op, and is NOT taken into account by all
1488                                             operations.
1489                                           x-kubernetes-preserve-unknown-fields: true
1490                                       required:
1491                                       - op
1492                                       - path
1493                                       type: object
1494                                     type: array
1495                                   target:
1496                                     description: Target points to the resources that the
1497                                       patch document should be applied to.
1498                                     properties:
1499                                       annotationSelector:
1500                                         description: AnnotationSelector is a string that
1501                                           follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1502                                           It matches with the resource annotations.
1503                                         type: string
1504                                       group:
1505                                         description: Group is the API group to select
1506                                           resources from. Together with Version and Kind
1507                                           it is capable of unambiguously identifying and/or
1508                                           selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1509                                         type: string
1510                                       kind:
1511                                         description: Kind of the API Group to select resources
1512                                           from. Together with Group and Version it is
1513                                           capable of unambiguously identifying and/or
1514                                           selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1515                                         type: string
1516                                       labelSelector:
1517                                         description: LabelSelector is a string that follows
1518                                           the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1519                                           It matches with the resource labels.
1520                                         type: string
1521                                       name:
1522                                         description: Name to match resources with.
1523                                         type: string
1524                                       namespace:
1525                                         description: Namespace to select resources from.
1526                                         type: string
1527                                       version:
1528                                         description: Version of the API Group to select
1529                                           resources from. Together with Group and Kind
1530                                           it is capable of unambiguously identifying and/or
1531                                           selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1532                                         type: string
1533                                     type: object
1534                                 required:
1535                                 - patch
1536                                 - target
1537                                 type: object
1538                               type: array
1539                             patchesStrategicMerge:
1540                               description: Strategic merge patches, defined as inline
1541                                 YAML objects.
1542                               items:
1543                                 x-kubernetes-preserve-unknown-fields: true
1544                               type: array
1545                           type: object
1546                       type: object
1547                     type: array
1548                   releaseName:
1549                     description: ReleaseName used for the Helm release. Defaults to a
1550                       composition of '[TargetNamespace-]Name'.
1551                     maxLength: 53
1552                     minLength: 1
1553                     type: string
1554                   rollback:
1555                     description: Rollback holds the configuration for Helm rollback actions
1556                       for this HelmRelease.
1557                     properties:
1558                       cleanupOnFail:
1559                         description: CleanupOnFail allows deletion of new resources created
1560                           during the Helm rollback action when it fails.
1561                         type: boolean
1562                       disableHooks:
1563                         description: DisableHooks prevents hooks from running during the
1564                           Helm rollback action.
1565                         type: boolean
1566                       disableWait:
1567                         description: DisableWait disables the waiting for resources to
1568                           be ready after a Helm rollback has been performed.
1569                         type: boolean
1570                       disableWaitForJobs:
1571                         description: DisableWaitForJobs disables waiting for jobs to complete
1572                           after a Helm rollback has been performed.
1573                         type: boolean
1574                       force:
1575                         description: Force forces resource updates through a replacement
1576                           strategy.
1577                         type: boolean
1578                       recreate:
1579                         description: Recreate performs pod restarts for the resource if
1580                           applicable.
1581                         type: boolean
1582                       timeout:
1583                         description: Timeout is the time to wait for any individual Kubernetes
1584                           operation (like Jobs for hooks) during the performance of a
1585                           Helm rollback action. Defaults to 'HelmReleaseSpec.Timeout'.
1586                         type: string
1587                     type: object
1588                   serviceAccountName:
1589                     description: The name of the Kubernetes service account to impersonate
1590                       when reconciling this HelmRelease.
1591                     type: string
1592                   storageNamespace:
1593                     description: StorageNamespace used for the Helm storage. Defaults
1594                       to the namespace of the HelmRelease.
1595                     maxLength: 63
1596                     minLength: 1
1597                     type: string
1598                   suspend:
1599                     description: Suspend tells the controller to suspend reconciliation
1600                       for this HelmRelease, it does not apply to already started reconciliations.
1601                       Defaults to false.
1602                     type: boolean
1603                   targetNamespace:
1604                     description: TargetNamespace to target when performing operations
1605                       for the HelmRelease. Defaults to the namespace of the HelmRelease.
1606                     maxLength: 63
1607                     minLength: 1
1608                     type: string
1609                   test:
1610                     description: Test holds the configuration for Helm test actions for
1611                       this HelmRelease.
1612                     properties:
1613                       enable:
1614                         description: Enable enables Helm test actions for this HelmRelease
1615                           after an Helm install or upgrade action has been performed.
1616                         type: boolean
1617                       ignoreFailures:
1618                         description: IgnoreFailures tells the controller to skip remediation
1619                           when the Helm tests are run but fail. Can be overwritten for
1620                           tests run after install or upgrade actions in 'Install.IgnoreTestFailures'
1621                           and 'Upgrade.IgnoreTestFailures'.
1622                         type: boolean
1623                       timeout:
1624                         description: Timeout is the time to wait for any individual Kubernetes
1625                           operation during the performance of a Helm test action. Defaults
1626                           to 'HelmReleaseSpec.Timeout'.
1627                         type: string
1628                     type: object
1629                   timeout:
1630                     description: Timeout is the time to wait for any individual Kubernetes
1631                       operation (like Jobs for hooks) during the performance of a Helm
1632                       action. Defaults to '5m0s'.
1633                     type: string
1634                   uninstall:
1635                     description: Uninstall holds the configuration for Helm uninstall
1636                       actions for this HelmRelease.
1637                     properties:
1638                       disableHooks:
1639                         description: DisableHooks prevents hooks from running during the
1640                           Helm rollback action.
1641                         type: boolean
1642                       disableWait:
1643                         description: DisableWait disables waiting for all the resources
1644                           to be deleted after a Helm uninstall is performed.
1645                         type: boolean
1646                       keepHistory:
1647                         description: KeepHistory tells Helm to remove all associated resources
1648                           and mark the release as deleted, but retain the release history.
1649                         type: boolean
1650                       timeout:
1651                         description: Timeout is the time to wait for any individual Kubernetes
1652                           operation (like Jobs for hooks) during the performance of a
1653                           Helm uninstall action. Defaults to 'HelmReleaseSpec.Timeout'.
1654                         type: string
1655                     type: object
1656                   upgrade:
1657                     description: Upgrade holds the configuration for Helm upgrade actions
1658                       for this HelmRelease.
1659                     properties:
1660                       cleanupOnFail:
1661                         description: CleanupOnFail allows deletion of new resources created
1662                           during the Helm upgrade action when it fails.
1663                         type: boolean
1664                       crds:
1665                         description: "CRDs upgrade CRDs from the Helm Chart's crds directory
1666                           according to the CRD upgrade policy provided here. Valid values
1667                           are `Skip`, `Create` or `CreateReplace`. Default is `Skip` and
1668                           if omitted CRDs are neither installed nor upgraded. \n Skip:
1669                           do neither install nor replace (update) any CRDs. \n Create:
1670                           new CRDs are created, existing CRDs are neither updated nor
1671                           deleted. \n CreateReplace: new CRDs are created, existing CRDs
1672                           are updated (replaced) but not deleted. \n By default, CRDs
1673                           are not applied during Helm upgrade action. With this option
1674                           users can opt-in to CRD upgrade, which is not (yet) natively
1675                           supported by Helm. https://helm.sh/docs/chart_best_practices/custom_resource_definitions."
1676                         enum:
1677                         - Skip
1678                         - Create
1679                         - CreateReplace
1680                         type: string
1681                       disableHooks:
1682                         description: DisableHooks prevents hooks from running during the
1683                           Helm upgrade action.
1684                         type: boolean
1685                       disableOpenAPIValidation:
1686                         description: DisableOpenAPIValidation prevents the Helm upgrade
1687                           action from validating rendered templates against the Kubernetes
1688                           OpenAPI Schema.
1689                         type: boolean
1690                       disableWait:
1691                         description: DisableWait disables the waiting for resources to
1692                           be ready after a Helm upgrade has been performed.
1693                         type: boolean
1694                       disableWaitForJobs:
1695                         description: DisableWaitForJobs disables waiting for jobs to complete
1696                           after a Helm upgrade has been performed.
1697                         type: boolean
1698                       force:
1699                         description: Force forces resource updates through a replacement
1700                           strategy.
1701                         type: boolean
1702                       preserveValues:
1703                         description: PreserveValues will make Helm reuse the last release's
1704                           values and merge in overrides from 'Values'. Setting this flag
1705                           makes the HelmRelease non-declarative.
1706                         type: boolean
1707                       remediation:
1708                         description: Remediation holds the remediation configuration for
1709                           when the Helm upgrade action for the HelmRelease fails. The
1710                           default is to not perform any action.
1711                         properties:
1712                           ignoreTestFailures:
1713                             description: IgnoreTestFailures tells the controller to skip
1714                               remediation when the Helm tests are run after an upgrade
1715                               action but fail. Defaults to 'Test.IgnoreFailures'.
1716                             type: boolean
1717                           remediateLastFailure:
1718                             description: RemediateLastFailure tells the controller to
1719                               remediate the last failure, when no retries remain. Defaults
1720                               to 'false' unless 'Retries' is greater than 0.
1721                             type: boolean
1722                           retries:
1723                             description: Retries is the number of retries that should
1724                               be attempted on failures before bailing. Remediation, using
1725                               'Strategy', is performed between each attempt. Defaults
1726                               to '0', a negative integer equals to unlimited retries.
1727                             type: integer
1728                           strategy:
1729                             description: Strategy to use for failure remediation. Defaults
1730                               to 'rollback'.
1731                             enum:
1732                             - rollback
1733                             - uninstall
1734                             type: string
1735                         type: object
1736                       timeout:
1737                         description: Timeout is the time to wait for any individual Kubernetes
1738                           operation (like Jobs for hooks) during the performance of a
1739                           Helm upgrade action. Defaults to 'HelmReleaseSpec.Timeout'.
1740                         type: string
1741                     type: object
1742                   values:
1743                     description: Values holds the values for this Helm release.
1744                     x-kubernetes-preserve-unknown-fields: true
1745                   valuesFrom:
1746                     description: ValuesFrom holds references to resources containing Helm
1747                       values for this HelmRelease, and information about how they should
1748                       be merged.
1749                     items:
1750                       description: ValuesReference contains a reference to a resource
1751                         containing Helm values, and optionally the key they can be found
1752                         at.
1753                       properties:
1754                         kind:
1755                           description: Kind of the values referent, valid values are ('Secret',
1756                             'ConfigMap').
1757                           enum:
1758                           - Secret
1759                           - ConfigMap
1760                           type: string
1761                         name:
1762                           description: Name of the values referent. Should reside in the
1763                             same namespace as the referring resource.
1764                           maxLength: 253
1765                           minLength: 1
1766                           type: string
1767                         optional:
1768                           description: Optional marks this ValuesReference as optional.
1769                             When set, a not found error for the values reference is ignored,
1770                             but any ValuesKey, TargetPath or transient error will still
1771                             result in a reconciliation failure.
1772                           type: boolean
1773                         targetPath:
1774                           description: TargetPath is the YAML dot notation path the value
1775                             should be merged at. When set, the ValuesKey is expected to
1776                             be a single flat value. Defaults to 'None', which results
1777                             in the values getting merged at the root.
1778                           type: string
1779                         valuesKey:
1780                           description: ValuesKey is the data key where the values.yaml
1781                             or a specific value can be found at. Defaults to 'values.yaml'.
1782                           type: string
1783                       required:
1784                       - kind
1785                       - name
1786                       type: object
1787                     type: array
1788                 required:
1789                 - chart
1790                 - interval
1791                 type: object
1792               status:
1793                 default:
1794                   observedGeneration: -1
1795                 description: HelmReleaseStatus defines the observed state of a HelmRelease.
1796                 properties:
1797                   conditions:
1798                     description: Conditions holds the conditions for the HelmRelease.
1799                     items:
1800                       description: "Condition contains details for one aspect of the current
1801                         state of this API Resource. --- This struct is intended for direct
1802                         use as an array at the field path .status.conditions.  For example,
1803                         type FooStatus struct{     // Represents the observations of a
1804                         foo's current state.     // Known .status.conditions.type are:
1805                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
1806                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
1807                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
1808                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
1809                         \n     // other fields }"
1810                       properties:
1811                         lastTransitionTime:
1812                           description: lastTransitionTime is the last time the condition
1813                             transitioned from one status to another. This should be when
1814                             the underlying condition changed.  If that is not known, then
1815                             using the time when the API field changed is acceptable.
1816                           format: date-time
1817                           type: string
1818                         message:
1819                           description: message is a human readable message indicating
1820                             details about the transition. This may be an empty string.
1821                           maxLength: 32768
1822                           type: string
1823                         observedGeneration:
1824                           description: observedGeneration represents the .metadata.generation
1825                             that the condition was set based upon. For instance, if .metadata.generation
1826                             is currently 12, but the .status.conditions[x].observedGeneration
1827                             is 9, the condition is out of date with respect to the current
1828                             state of the instance.
1829                           format: int64
1830                           minimum: 0
1831                           type: integer
1832                         reason:
1833                           description: reason contains a programmatic identifier indicating
1834                             the reason for the condition's last transition. Producers
1835                             of specific condition types may define expected values and
1836                             meanings for this field, and whether the values are considered
1837                             a guaranteed API. The value should be a CamelCase string.
1838                             This field may not be empty.
1839                           maxLength: 1024
1840                           minLength: 1
1841                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
1842                           type: string
1843                         status:
1844                           description: status of the condition, one of True, False, Unknown.
1845                           enum:
1846                           - "True"
1847                           - "False"
1848                           - Unknown
1849                           type: string
1850                         type:
1851                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
1852                             --- Many .condition.type values are consistent across resources
1853                             like Available, but because arbitrary conditions can be useful
1854                             (see .node.status.conditions), the ability to deconflict is
1855                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
1856                           maxLength: 316
1857                           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])$
1858                           type: string
1859                       required:
1860                       - lastTransitionTime
1861                       - message
1862                       - reason
1863                       - status
1864                       - type
1865                       type: object
1866                     type: array
1867                   failures:
1868                     description: Failures is the reconciliation failure count against
1869                       the latest desired state. It is reset after a successful reconciliation.
1870                     format: int64
1871                     type: integer
1872                   helmChart:
1873                     description: HelmChart is the namespaced name of the HelmChart resource
1874                       created by the controller for the HelmRelease.
1875                     type: string
1876                   installFailures:
1877                     description: InstallFailures is the install failure count against
1878                       the latest desired state. It is reset after a successful reconciliation.
1879                     format: int64
1880                     type: integer
1881                   lastAppliedRevision:
1882                     description: LastAppliedRevision is the revision of the last successfully
1883                       applied source.
1884                     type: string
1885                   lastAttemptedRevision:
1886                     description: LastAttemptedRevision is the revision of the last reconciliation
1887                       attempt.
1888                     type: string
1889                   lastAttemptedValuesChecksum:
1890                     description: LastAttemptedValuesChecksum is the SHA1 checksum of the
1891                       values of the last reconciliation attempt.
1892                     type: string
1893                   lastHandledReconcileAt:
1894                     description: LastHandledReconcileAt holds the value of the most recent
1895                       reconcile request value, so a change can be detected.
1896                     type: string
1897                   lastReleaseRevision:
1898                     description: LastReleaseRevision is the revision of the last successful
1899                       Helm release.
1900                     type: integer
1901                   observedGeneration:
1902                     description: ObservedGeneration is the last observed generation.
1903                     format: int64
1904                     type: integer
1905                   upgradeFailures:
1906                     description: UpgradeFailures is the upgrade failure count against
1907                       the latest desired state. It is reset after a successful reconciliation.
1908                     format: int64
1909                     type: integer
1910                 type: object
1911             type: object
1912         served: true
1913         storage: true
1914         subresources:
1915           status: {}
1916     status:
1917       acceptedNames:
1918         kind: ""
1919         plural: ""
1920       conditions: []
1921       storedVersions: []
1922     ---
1923     apiVersion: apiextensions.k8s.io/v1
1924     kind: CustomResourceDefinition
1925     metadata:
1926       annotations:
1927         controller-gen.kubebuilder.io/version: v0.7.0
1928       creationTimestamp: null
1929       labels:
1930         app.kubernetes.io/instance: flux-system
1931         app.kubernetes.io/part-of: flux
1932         app.kubernetes.io/version: v0.27.0
1933       name: helmrepositories.source.toolkit.fluxcd.io
1934     spec:
1935       group: source.toolkit.fluxcd.io
1936       names:
1937         kind: HelmRepository
1938         listKind: HelmRepositoryList
1939         plural: helmrepositories
1940         shortNames:
1941         - helmrepo
1942         singular: helmrepository
1943       scope: Namespaced
1944       versions:
1945       - additionalPrinterColumns:
1946         - jsonPath: .spec.url
1947           name: URL
1948           type: string
1949         - jsonPath: .status.conditions[?(@.type=="Ready")].status
1950           name: Ready
1951           type: string
1952         - jsonPath: .status.conditions[?(@.type=="Ready")].message
1953           name: Status
1954           type: string
1955         - jsonPath: .metadata.creationTimestamp
1956           name: Age
1957           type: date
1958         name: v1beta1
1959         schema:
1960           openAPIV3Schema:
1961             description: HelmRepository is the Schema for the helmrepositories API
1962             properties:
1963               apiVersion:
1964                 description: 'APIVersion defines the versioned schema of this representation
1965                   of an object. Servers should convert recognized schemas to the latest
1966                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
1967                 type: string
1968               kind:
1969                 description: 'Kind is a string value representing the REST resource this
1970                   object represents. Servers may infer this from the endpoint the client
1971                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
1972                 type: string
1973               metadata:
1974                 type: object
1975               spec:
1976                 description: HelmRepositorySpec defines the reference to a Helm repository.
1977                 properties:
1978                   accessFrom:
1979                     description: AccessFrom defines an Access Control List for allowing
1980                       cross-namespace references to this object.
1981                     properties:
1982                       namespaceSelectors:
1983                         description: NamespaceSelectors is the list of namespace selectors
1984                           to which this ACL applies. Items in this list are evaluated
1985                           using a logical OR operation.
1986                         items:
1987                           description: NamespaceSelector selects the namespaces to which
1988                             this ACL applies. An empty map of MatchLabels matches all
1989                             namespaces in a cluster.
1990                           properties:
1991                             matchLabels:
1992                               additionalProperties:
1993                                 type: string
1994                               description: MatchLabels is a map of {key,value} pairs.
1995                                 A single {key,value} in the matchLabels map is equivalent
1996                                 to an element of matchExpressions, whose key field is
1997                                 "key", the operator is "In", and the values array contains
1998                                 only "value". The requirements are ANDed.
1999                               type: object
2000                           type: object
2001                         type: array
2002                     required:
2003                     - namespaceSelectors
2004                     type: object
2005                   interval:
2006                     description: The interval at which to check the upstream for updates.
2007                     type: string
2008                   passCredentials:
2009                     description: PassCredentials allows the credentials from the SecretRef
2010                       to be passed on to a host that does not match the host as defined
2011                       in URL. This may be required if the host of the advertised chart
2012                       URLs in the index differ from the defined URL. Enabling this should
2013                       be done with caution, as it can potentially result in credentials
2014                       getting stolen in a MITM-attack.
2015                     type: boolean
2016                   secretRef:
2017                     description: The name of the secret containing authentication credentials
2018                       for the Helm repository. For HTTP/S basic auth the secret must contain
2019                       username and password fields. For TLS the secret must contain a
2020                       certFile and keyFile, and/or caCert fields.
2021                     properties:
2022                       name:
2023                         description: Name of the referent
2024                         type: string
2025                     required:
2026                     - name
2027                     type: object
2028                   suspend:
2029                     description: This flag tells the controller to suspend the reconciliation
2030                       of this source.
2031                     type: boolean
2032                   timeout:
2033                     default: 60s
2034                     description: The timeout of index downloading, defaults to 60s.
2035                     type: string
2036                   url:
2037                     description: The Helm repository URL, a valid URL contains at least
2038                       a protocol and host.
2039                     type: string
2040                 required:
2041                 - interval
2042                 - url
2043                 type: object
2044               status:
2045                 default:
2046                   observedGeneration: -1
2047                 description: HelmRepositoryStatus defines the observed state of the HelmRepository.
2048                 properties:
2049                   artifact:
2050                     description: Artifact represents the output of the last successful
2051                       repository sync.
2052                     properties:
2053                       checksum:
2054                         description: Checksum is the SHA256 checksum of the artifact.
2055                         type: string
2056                       lastUpdateTime:
2057                         description: LastUpdateTime is the timestamp corresponding to
2058                           the last update of this artifact.
2059                         format: date-time
2060                         type: string
2061                       path:
2062                         description: Path is the relative file path of this artifact.
2063                         type: string
2064                       revision:
2065                         description: Revision is a human readable identifier traceable
2066                           in the origin source system. It can be a Git commit SHA, Git
2067                           tag, a Helm index timestamp, a Helm chart version, etc.
2068                         type: string
2069                       url:
2070                         description: URL is the HTTP address of this artifact.
2071                         type: string
2072                     required:
2073                     - path
2074                     - url
2075                     type: object
2076                   conditions:
2077                     description: Conditions holds the conditions for the HelmRepository.
2078                     items:
2079                       description: "Condition contains details for one aspect of the current
2080                         state of this API Resource. --- This struct is intended for direct
2081                         use as an array at the field path .status.conditions.  For example,
2082                         type FooStatus struct{     // Represents the observations of a
2083                         foo's current state.     // Known .status.conditions.type are:
2084                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
2085                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
2086                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
2087                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
2088                         \n     // other fields }"
2089                       properties:
2090                         lastTransitionTime:
2091                           description: lastTransitionTime is the last time the condition
2092                             transitioned from one status to another. This should be when
2093                             the underlying condition changed.  If that is not known, then
2094                             using the time when the API field changed is acceptable.
2095                           format: date-time
2096                           type: string
2097                         message:
2098                           description: message is a human readable message indicating
2099                             details about the transition. This may be an empty string.
2100                           maxLength: 32768
2101                           type: string
2102                         observedGeneration:
2103                           description: observedGeneration represents the .metadata.generation
2104                             that the condition was set based upon. For instance, if .metadata.generation
2105                             is currently 12, but the .status.conditions[x].observedGeneration
2106                             is 9, the condition is out of date with respect to the current
2107                             state of the instance.
2108                           format: int64
2109                           minimum: 0
2110                           type: integer
2111                         reason:
2112                           description: reason contains a programmatic identifier indicating
2113                             the reason for the condition's last transition. Producers
2114                             of specific condition types may define expected values and
2115                             meanings for this field, and whether the values are considered
2116                             a guaranteed API. The value should be a CamelCase string.
2117                             This field may not be empty.
2118                           maxLength: 1024
2119                           minLength: 1
2120                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
2121                           type: string
2122                         status:
2123                           description: status of the condition, one of True, False, Unknown.
2124                           enum:
2125                           - "True"
2126                           - "False"
2127                           - Unknown
2128                           type: string
2129                         type:
2130                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
2131                             --- Many .condition.type values are consistent across resources
2132                             like Available, but because arbitrary conditions can be useful
2133                             (see .node.status.conditions), the ability to deconflict is
2134                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
2135                           maxLength: 316
2136                           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])$
2137                           type: string
2138                       required:
2139                       - lastTransitionTime
2140                       - message
2141                       - reason
2142                       - status
2143                       - type
2144                       type: object
2145                     type: array
2146                   lastHandledReconcileAt:
2147                     description: LastHandledReconcileAt holds the value of the most recent
2148                       reconcile request value, so a change can be detected.
2149                     type: string
2150                   observedGeneration:
2151                     description: ObservedGeneration is the last observed generation.
2152                     format: int64
2153                     type: integer
2154                   url:
2155                     description: URL is the download link for the last index fetched.
2156                     type: string
2157                 type: object
2158             type: object
2159         served: true
2160         storage: true
2161         subresources:
2162           status: {}
2163     status:
2164       acceptedNames:
2165         kind: ""
2166         plural: ""
2167       conditions: []
2168       storedVersions: []
2169     ---
2170     apiVersion: apiextensions.k8s.io/v1
2171     kind: CustomResourceDefinition
2172     metadata:
2173       annotations:
2174         controller-gen.kubebuilder.io/version: v0.7.0
2175       creationTimestamp: null
2176       labels:
2177         app.kubernetes.io/instance: flux-system
2178         app.kubernetes.io/part-of: flux
2179         app.kubernetes.io/version: v0.27.0
2180       name: kustomizations.kustomize.toolkit.fluxcd.io
2181     spec:
2182       group: kustomize.toolkit.fluxcd.io
2183       names:
2184         kind: Kustomization
2185         listKind: KustomizationList
2186         plural: kustomizations
2187         shortNames:
2188         - ks
2189         singular: kustomization
2190       scope: Namespaced
2191       versions:
2192       - additionalPrinterColumns:
2193         - jsonPath: .status.conditions[?(@.type=="Ready")].status
2194           name: Ready
2195           type: string
2196         - jsonPath: .status.conditions[?(@.type=="Ready")].message
2197           name: Status
2198           type: string
2199         - jsonPath: .metadata.creationTimestamp
2200           name: Age
2201           type: date
2202         name: v1beta1
2203         schema:
2204           openAPIV3Schema:
2205             description: Kustomization is the Schema for the kustomizations API.
2206             properties:
2207               apiVersion:
2208                 description: 'APIVersion defines the versioned schema of this representation
2209                   of an object. Servers should convert recognized schemas to the latest
2210                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
2211                 type: string
2212               kind:
2213                 description: 'Kind is a string value representing the REST resource this
2214                   object represents. Servers may infer this from the endpoint the client
2215                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
2216                 type: string
2217               metadata:
2218                 type: object
2219               spec:
2220                 description: KustomizationSpec defines the desired state of a kustomization.
2221                 properties:
2222                   decryption:
2223                     description: Decrypt Kubernetes secrets before applying them on the
2224                       cluster.
2225                     properties:
2226                       provider:
2227                         description: Provider is the name of the decryption engine.
2228                         enum:
2229                         - sops
2230                         type: string
2231                       secretRef:
2232                         description: The secret name containing the private OpenPGP keys
2233                           used for decryption.
2234                         properties:
2235                           name:
2236                             description: Name of the referent
2237                             type: string
2238                         required:
2239                         - name
2240                         type: object
2241                     required:
2242                     - provider
2243                     type: object
2244                   dependsOn:
2245                     description: DependsOn may contain a dependency.CrossNamespaceDependencyReference
2246                       slice with references to Kustomization resources that must be ready
2247                       before this Kustomization can be reconciled.
2248                     items:
2249                       description: CrossNamespaceDependencyReference holds the reference
2250                         to a dependency.
2251                       properties:
2252                         name:
2253                           description: Name holds the name reference of a dependency.
2254                           type: string
2255                         namespace:
2256                           description: Namespace holds the namespace reference of a dependency.
2257                           type: string
2258                       required:
2259                       - name
2260                       type: object
2261                     type: array
2262                   force:
2263                     default: false
2264                     description: Force instructs the controller to recreate resources
2265                       when patching fails due to an immutable field change.
2266                     type: boolean
2267                   healthChecks:
2268                     description: A list of resources to be included in the health assessment.
2269                     items:
2270                       description: NamespacedObjectKindReference contains enough information
2271                         to let you locate the typed referenced object in any namespace
2272                       properties:
2273                         apiVersion:
2274                           description: API version of the referent, if not specified the
2275                             Kubernetes preferred version will be used
2276                           type: string
2277                         kind:
2278                           description: Kind of the referent
2279                           type: string
2280                         name:
2281                           description: Name of the referent
2282                           type: string
2283                         namespace:
2284                           description: Namespace of the referent, when not specified it
2285                             acts as LocalObjectReference
2286                           type: string
2287                       required:
2288                       - kind
2289                       - name
2290                       type: object
2291                     type: array
2292                   images:
2293                     description: Images is a list of (image name, new name, new tag or
2294                       digest) for changing image names, tags or digests. This can also
2295                       be achieved with a patch, but this operator is simpler to specify.
2296                     items:
2297                       description: Image contains an image name, a new name, a new tag
2298                         or digest, which will replace the original name and tag.
2299                       properties:
2300                         digest:
2301                           description: Digest is the value used to replace the original
2302                             image tag. If digest is present NewTag value is ignored.
2303                           type: string
2304                         name:
2305                           description: Name is a tag-less image name.
2306                           type: string
2307                         newName:
2308                           description: NewName is the value used to replace the original
2309                             name.
2310                           type: string
2311                         newTag:
2312                           description: NewTag is the value used to replace the original
2313                             tag.
2314                           type: string
2315                       required:
2316                       - name
2317                       type: object
2318                     type: array
2319                   interval:
2320                     description: The interval at which to reconcile the Kustomization.
2321                     type: string
2322                   kubeConfig:
2323                     description: The KubeConfig for reconciling the Kustomization on a
2324                       remote cluster. When specified, KubeConfig takes precedence over
2325                       ServiceAccountName.
2326                     properties:
2327                       secretRef:
2328                         description: SecretRef holds the name to a secret that contains
2329                           a 'value' key with the kubeconfig file as the value. It must
2330                           be in the same namespace as the Kustomization. It is recommended
2331                           that the kubeconfig is self-contained, and the secret is regularly
2332                           updated if credentials such as a cloud-access-token expire.
2333                           Cloud specific `cmd-path` auth helpers will not function without
2334                           adding binaries and credentials to the Pod that is responsible
2335                           for reconciling the Kustomization.
2336                         properties:
2337                           name:
2338                             description: Name of the referent
2339                             type: string
2340                         required:
2341                         - name
2342                         type: object
2343                     type: object
2344                   patches:
2345                     description: Strategic merge and JSON patches, defined as inline YAML
2346                       objects, capable of targeting objects based on kind, label and annotation
2347                       selectors.
2348                     items:
2349                       description: Patch contains an inline StrategicMerge or JSON6902
2350                         patch, and the target the patch should be applied to.
2351                       properties:
2352                         patch:
2353                           description: Patch contains an inline StrategicMerge patch or
2354                             an inline JSON6902 patch with an array of operation objects.
2355                           type: string
2356                         target:
2357                           description: Target points to the resources that the patch document
2358                             should be applied to.
2359                           properties:
2360                             annotationSelector:
2361                               description: AnnotationSelector is a string that follows
2362                                 the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2363                                 It matches with the resource annotations.
2364                               type: string
2365                             group:
2366                               description: Group is the API group to select resources
2367                                 from. Together with Version and Kind it is capable of
2368                                 unambiguously identifying and/or selecting resources.
2369                                 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2370                               type: string
2371                             kind:
2372                               description: Kind of the API Group to select resources from.
2373                                 Together with Group and Version it is capable of unambiguously
2374                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2375                               type: string
2376                             labelSelector:
2377                               description: LabelSelector is a string that follows the
2378                                 label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2379                                 It matches with the resource labels.
2380                               type: string
2381                             name:
2382                               description: Name to match resources with.
2383                               type: string
2384                             namespace:
2385                               description: Namespace to select resources from.
2386                               type: string
2387                             version:
2388                               description: Version of the API Group to select resources
2389                                 from. Together with Group and Kind it is capable of unambiguously
2390                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2391                               type: string
2392                           type: object
2393                       type: object
2394                     type: array
2395                   patchesJson6902:
2396                     description: JSON 6902 patches, defined as inline YAML objects.
2397                     items:
2398                       description: JSON6902Patch contains a JSON6902 patch and the target
2399                         the patch should be applied to.
2400                       properties:
2401                         patch:
2402                           description: Patch contains the JSON6902 patch document with
2403                             an array of operation objects.
2404                           items:
2405                             description: JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4
2406                             properties:
2407                               from:
2408                                 description: From contains a JSON-pointer value that references
2409                                   a location within the target document where the operation
2410                                   is performed. The meaning of the value depends on the
2411                                   value of Op, and is NOT taken into account by all operations.
2412                                 type: string
2413                               op:
2414                                 description: Op indicates the operation to perform. Its
2415                                   value MUST be one of "add", "remove", "replace", "move",
2416                                   "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4
2417                                 enum:
2418                                 - test
2419                                 - remove
2420                                 - add
2421                                 - replace
2422                                 - move
2423                                 - copy
2424                                 type: string
2425                               path:
2426                                 description: Path contains the JSON-pointer value that
2427                                   references a location within the target document where
2428                                   the operation is performed. The meaning of the value
2429                                   depends on the value of Op.
2430                                 type: string
2431                               value:
2432                                 description: Value contains a valid JSON structure. The
2433                                   meaning of the value depends on the value of Op, and
2434                                   is NOT taken into account by all operations.
2435                                 x-kubernetes-preserve-unknown-fields: true
2436                             required:
2437                             - op
2438                             - path
2439                             type: object
2440                           type: array
2441                         target:
2442                           description: Target points to the resources that the patch document
2443                             should be applied to.
2444                           properties:
2445                             annotationSelector:
2446                               description: AnnotationSelector is a string that follows
2447                                 the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2448                                 It matches with the resource annotations.
2449                               type: string
2450                             group:
2451                               description: Group is the API group to select resources
2452                                 from. Together with Version and Kind it is capable of
2453                                 unambiguously identifying and/or selecting resources.
2454                                 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2455                               type: string
2456                             kind:
2457                               description: Kind of the API Group to select resources from.
2458                                 Together with Group and Version it is capable of unambiguously
2459                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2460                               type: string
2461                             labelSelector:
2462                               description: LabelSelector is a string that follows the
2463                                 label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2464                                 It matches with the resource labels.
2465                               type: string
2466                             name:
2467                               description: Name to match resources with.
2468                               type: string
2469                             namespace:
2470                               description: Namespace to select resources from.
2471                               type: string
2472                             version:
2473                               description: Version of the API Group to select resources
2474                                 from. Together with Group and Kind it is capable of unambiguously
2475                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2476                               type: string
2477                           type: object
2478                       required:
2479                       - patch
2480                       - target
2481                       type: object
2482                     type: array
2483                   patchesStrategicMerge:
2484                     description: Strategic merge patches, defined as inline YAML objects.
2485                     items:
2486                       x-kubernetes-preserve-unknown-fields: true
2487                     type: array
2488                   path:
2489                     description: Path to the directory containing the kustomization.yaml
2490                       file, or the set of plain YAMLs a kustomization.yaml should be generated
2491                       for. Defaults to 'None', which translates to the root path of the
2492                       SourceRef.
2493                     type: string
2494                   postBuild:
2495                     description: PostBuild describes which actions to perform on the YAML
2496                       manifest generated by building the kustomize overlay.
2497                     properties:
2498                       substitute:
2499                         additionalProperties:
2500                           type: string
2501                         description: Substitute holds a map of key/value pairs. The variables
2502                           defined in your YAML manifests that match any of the keys defined
2503                           in the map will be substituted with the set value. Includes
2504                           support for bash string replacement functions e.g. ${var:=default},
2505                           ${var:position} and ${var/substring/replacement}.
2506                         type: object
2507                       substituteFrom:
2508                         description: SubstituteFrom holds references to ConfigMaps and
2509                           Secrets containing the variables and their values to be substituted
2510                           in the YAML manifests. The ConfigMap and the Secret data keys
2511                           represent the var names and they must match the vars declared
2512                           in the manifests for the substitution to happen.
2513                         items:
2514                           description: SubstituteReference contains a reference to a resource
2515                             containing the variables name and value.
2516                           properties:
2517                             kind:
2518                               description: Kind of the values referent, valid values are
2519                                 ('Secret', 'ConfigMap').
2520                               enum:
2521                               - Secret
2522                               - ConfigMap
2523                               type: string
2524                             name:
2525                               description: Name of the values referent. Should reside
2526                                 in the same namespace as the referring resource.
2527                               maxLength: 253
2528                               minLength: 1
2529                               type: string
2530                           required:
2531                           - kind
2532                           - name
2533                           type: object
2534                         type: array
2535                     type: object
2536                   prune:
2537                     description: Prune enables garbage collection.
2538                     type: boolean
2539                   retryInterval:
2540                     description: The interval at which to retry a previously failed reconciliation.
2541                       When not specified, the controller uses the KustomizationSpec.Interval
2542                       value to retry failures.
2543                     type: string
2544                   serviceAccountName:
2545                     description: The name of the Kubernetes service account to impersonate
2546                       when reconciling this Kustomization.
2547                     type: string
2548                   sourceRef:
2549                     description: Reference of the source where the kustomization file
2550                       is.
2551                     properties:
2552                       apiVersion:
2553                         description: API version of the referent
2554                         type: string
2555                       kind:
2556                         description: Kind of the referent
2557                         enum:
2558                         - GitRepository
2559                         - Bucket
2560                         type: string
2561                       name:
2562                         description: Name of the referent
2563                         type: string
2564                       namespace:
2565                         description: Namespace of the referent, defaults to the Kustomization
2566                           namespace
2567                         type: string
2568                     required:
2569                     - kind
2570                     - name
2571                     type: object
2572                   suspend:
2573                     description: This flag tells the controller to suspend subsequent
2574                       kustomize executions, it does not apply to already started executions.
2575                       Defaults to false.
2576                     type: boolean
2577                   targetNamespace:
2578                     description: TargetNamespace sets or overrides the namespace in the
2579                       kustomization.yaml file.
2580                     maxLength: 63
2581                     minLength: 1
2582                     type: string
2583                   timeout:
2584                     description: Timeout for validation, apply and health checking operations.
2585                       Defaults to 'Interval' duration.
2586                     type: string
2587                   validation:
2588                     description: Validate the Kubernetes objects before applying them
2589                       on the cluster. The validation strategy can be 'client' (local dry-run),
2590                       'server' (APIServer dry-run) or 'none'. When 'Force' is 'true',
2591                       validation will fallback to 'client' if set to 'server' because
2592                       server-side validation is not supported in this scenario.
2593                     enum:
2594                     - none
2595                     - client
2596                     - server
2597                     type: string
2598                 required:
2599                 - interval
2600                 - prune
2601                 - sourceRef
2602                 type: object
2603               status:
2604                 default:
2605                   observedGeneration: -1
2606                 description: KustomizationStatus defines the observed state of a kustomization.
2607                 properties:
2608                   conditions:
2609                     items:
2610                       description: "Condition contains details for one aspect of the current
2611                         state of this API Resource. --- This struct is intended for direct
2612                         use as an array at the field path .status.conditions.  For example,
2613                         type FooStatus struct{     // Represents the observations of a
2614                         foo's current state.     // Known .status.conditions.type are:
2615                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
2616                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
2617                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
2618                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
2619                         \n     // other fields }"
2620                       properties:
2621                         lastTransitionTime:
2622                           description: lastTransitionTime is the last time the condition
2623                             transitioned from one status to another. This should be when
2624                             the underlying condition changed.  If that is not known, then
2625                             using the time when the API field changed is acceptable.
2626                           format: date-time
2627                           type: string
2628                         message:
2629                           description: message is a human readable message indicating
2630                             details about the transition. This may be an empty string.
2631                           maxLength: 32768
2632                           type: string
2633                         observedGeneration:
2634                           description: observedGeneration represents the .metadata.generation
2635                             that the condition was set based upon. For instance, if .metadata.generation
2636                             is currently 12, but the .status.conditions[x].observedGeneration
2637                             is 9, the condition is out of date with respect to the current
2638                             state of the instance.
2639                           format: int64
2640                           minimum: 0
2641                           type: integer
2642                         reason:
2643                           description: reason contains a programmatic identifier indicating
2644                             the reason for the condition's last transition. Producers
2645                             of specific condition types may define expected values and
2646                             meanings for this field, and whether the values are considered
2647                             a guaranteed API. The value should be a CamelCase string.
2648                             This field may not be empty.
2649                           maxLength: 1024
2650                           minLength: 1
2651                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
2652                           type: string
2653                         status:
2654                           description: status of the condition, one of True, False, Unknown.
2655                           enum:
2656                           - "True"
2657                           - "False"
2658                           - Unknown
2659                           type: string
2660                         type:
2661                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
2662                             --- Many .condition.type values are consistent across resources
2663                             like Available, but because arbitrary conditions can be useful
2664                             (see .node.status.conditions), the ability to deconflict is
2665                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
2666                           maxLength: 316
2667                           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])$
2668                           type: string
2669                       required:
2670                       - lastTransitionTime
2671                       - message
2672                       - reason
2673                       - status
2674                       - type
2675                       type: object
2676                     type: array
2677                   lastAppliedRevision:
2678                     description: The last successfully applied revision. The revision
2679                       format for Git sources is <branch|tag>/<commit-sha>.
2680                     type: string
2681                   lastAttemptedRevision:
2682                     description: LastAttemptedRevision is the revision of the last reconciliation
2683                       attempt.
2684                     type: string
2685                   lastHandledReconcileAt:
2686                     description: LastHandledReconcileAt holds the value of the most recent
2687                       reconcile request value, so a change can be detected.
2688                     type: string
2689                   observedGeneration:
2690                     description: ObservedGeneration is the last reconciled generation.
2691                     format: int64
2692                     type: integer
2693                   snapshot:
2694                     description: The last successfully applied revision metadata.
2695                     properties:
2696                       checksum:
2697                         description: The manifests sha1 checksum.
2698                         type: string
2699                       entries:
2700                         description: A list of Kubernetes kinds grouped by namespace.
2701                         items:
2702                           description: Snapshot holds the metadata of namespaced Kubernetes
2703                             objects
2704                           properties:
2705                             kinds:
2706                               additionalProperties:
2707                                 type: string
2708                               description: The list of Kubernetes kinds.
2709                               type: object
2710                             namespace:
2711                               description: The namespace of this entry.
2712                               type: string
2713                           required:
2714                           - kinds
2715                           type: object
2716                         type: array
2717                     required:
2718                     - checksum
2719                     - entries
2720                     type: object
2721                 type: object
2722             type: object
2723         served: true
2724         storage: false
2725         subresources:
2726           status: {}
2727       - additionalPrinterColumns:
2728         - jsonPath: .status.conditions[?(@.type=="Ready")].status
2729           name: Ready
2730           type: string
2731         - jsonPath: .status.conditions[?(@.type=="Ready")].message
2732           name: Status
2733           type: string
2734         - jsonPath: .metadata.creationTimestamp
2735           name: Age
2736           type: date
2737         name: v1beta2
2738         schema:
2739           openAPIV3Schema:
2740             description: Kustomization is the Schema for the kustomizations API.
2741             properties:
2742               apiVersion:
2743                 description: 'APIVersion defines the versioned schema of this representation
2744                   of an object. Servers should convert recognized schemas to the latest
2745                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
2746                 type: string
2747               kind:
2748                 description: 'Kind is a string value representing the REST resource this
2749                   object represents. Servers may infer this from the endpoint the client
2750                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
2751                 type: string
2752               metadata:
2753                 type: object
2754               spec:
2755                 description: KustomizationSpec defines the configuration to calculate
2756                   the desired state from a Source using Kustomize.
2757                 properties:
2758                   decryption:
2759                     description: Decrypt Kubernetes secrets before applying them on the
2760                       cluster.
2761                     properties:
2762                       provider:
2763                         description: Provider is the name of the decryption engine.
2764                         enum:
2765                         - sops
2766                         type: string
2767                       secretRef:
2768                         description: The secret name containing the private OpenPGP keys
2769                           used for decryption.
2770                         properties:
2771                           name:
2772                             description: Name of the referent
2773                             type: string
2774                         required:
2775                         - name
2776                         type: object
2777                     required:
2778                     - provider
2779                     type: object
2780                   dependsOn:
2781                     description: DependsOn may contain a dependency.CrossNamespaceDependencyReference
2782                       slice with references to Kustomization resources that must be ready
2783                       before this Kustomization can be reconciled.
2784                     items:
2785                       description: CrossNamespaceDependencyReference holds the reference
2786                         to a dependency.
2787                       properties:
2788                         name:
2789                           description: Name holds the name reference of a dependency.
2790                           type: string
2791                         namespace:
2792                           description: Namespace holds the namespace reference of a dependency.
2793                           type: string
2794                       required:
2795                       - name
2796                       type: object
2797                     type: array
2798                   force:
2799                     default: false
2800                     description: Force instructs the controller to recreate resources
2801                       when patching fails due to an immutable field change.
2802                     type: boolean
2803                   healthChecks:
2804                     description: A list of resources to be included in the health assessment.
2805                     items:
2806                       description: NamespacedObjectKindReference contains enough information
2807                         to let you locate the typed referenced object in any namespace
2808                       properties:
2809                         apiVersion:
2810                           description: API version of the referent, if not specified the
2811                             Kubernetes preferred version will be used
2812                           type: string
2813                         kind:
2814                           description: Kind of the referent
2815                           type: string
2816                         name:
2817                           description: Name of the referent
2818                           type: string
2819                         namespace:
2820                           description: Namespace of the referent, when not specified it
2821                             acts as LocalObjectReference
2822                           type: string
2823                       required:
2824                       - kind
2825                       - name
2826                       type: object
2827                     type: array
2828                   images:
2829                     description: Images is a list of (image name, new name, new tag or
2830                       digest) for changing image names, tags or digests. This can also
2831                       be achieved with a patch, but this operator is simpler to specify.
2832                     items:
2833                       description: Image contains an image name, a new name, a new tag
2834                         or digest, which will replace the original name and tag.
2835                       properties:
2836                         digest:
2837                           description: Digest is the value used to replace the original
2838                             image tag. If digest is present NewTag value is ignored.
2839                           type: string
2840                         name:
2841                           description: Name is a tag-less image name.
2842                           type: string
2843                         newName:
2844                           description: NewName is the value used to replace the original
2845                             name.
2846                           type: string
2847                         newTag:
2848                           description: NewTag is the value used to replace the original
2849                             tag.
2850                           type: string
2851                       required:
2852                       - name
2853                       type: object
2854                     type: array
2855                   interval:
2856                     description: The interval at which to reconcile the Kustomization.
2857                     type: string
2858                   kubeConfig:
2859                     description: The KubeConfig for reconciling the Kustomization on a
2860                       remote cluster. When specified, KubeConfig takes precedence over
2861                       ServiceAccountName.
2862                     properties:
2863                       secretRef:
2864                         description: SecretRef holds the name to a secret that contains
2865                           a 'value' key with the kubeconfig file as the value. It must
2866                           be in the same namespace as the Kustomization. It is recommended
2867                           that the kubeconfig is self-contained, and the secret is regularly
2868                           updated if credentials such as a cloud-access-token expire.
2869                           Cloud specific `cmd-path` auth helpers will not function without
2870                           adding binaries and credentials to the Pod that is responsible
2871                           for reconciling the Kustomization.
2872                         properties:
2873                           name:
2874                             description: Name of the referent
2875                             type: string
2876                         required:
2877                         - name
2878                         type: object
2879                     type: object
2880                   patches:
2881                     description: Strategic merge and JSON patches, defined as inline YAML
2882                       objects, capable of targeting objects based on kind, label and annotation
2883                       selectors.
2884                     items:
2885                       description: Patch contains an inline StrategicMerge or JSON6902
2886                         patch, and the target the patch should be applied to.
2887                       properties:
2888                         patch:
2889                           description: Patch contains an inline StrategicMerge patch or
2890                             an inline JSON6902 patch with an array of operation objects.
2891                           type: string
2892                         target:
2893                           description: Target points to the resources that the patch document
2894                             should be applied to.
2895                           properties:
2896                             annotationSelector:
2897                               description: AnnotationSelector is a string that follows
2898                                 the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2899                                 It matches with the resource annotations.
2900                               type: string
2901                             group:
2902                               description: Group is the API group to select resources
2903                                 from. Together with Version and Kind it is capable of
2904                                 unambiguously identifying and/or selecting resources.
2905                                 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2906                               type: string
2907                             kind:
2908                               description: Kind of the API Group to select resources from.
2909                                 Together with Group and Version it is capable of unambiguously
2910                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2911                               type: string
2912                             labelSelector:
2913                               description: LabelSelector is a string that follows the
2914                                 label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2915                                 It matches with the resource labels.
2916                               type: string
2917                             name:
2918                               description: Name to match resources with.
2919                               type: string
2920                             namespace:
2921                               description: Namespace to select resources from.
2922                               type: string
2923                             version:
2924                               description: Version of the API Group to select resources
2925                                 from. Together with Group and Kind it is capable of unambiguously
2926                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2927                               type: string
2928                           type: object
2929                       type: object
2930                     type: array
2931                   patchesJson6902:
2932                     description: 'JSON 6902 patches, defined as inline YAML objects. Deprecated:
2933                       Use Patches instead.'
2934                     items:
2935                       description: JSON6902Patch contains a JSON6902 patch and the target
2936                         the patch should be applied to.
2937                       properties:
2938                         patch:
2939                           description: Patch contains the JSON6902 patch document with
2940                             an array of operation objects.
2941                           items:
2942                             description: JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4
2943                             properties:
2944                               from:
2945                                 description: From contains a JSON-pointer value that references
2946                                   a location within the target document where the operation
2947                                   is performed. The meaning of the value depends on the
2948                                   value of Op, and is NOT taken into account by all operations.
2949                                 type: string
2950                               op:
2951                                 description: Op indicates the operation to perform. Its
2952                                   value MUST be one of "add", "remove", "replace", "move",
2953                                   "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4
2954                                 enum:
2955                                 - test
2956                                 - remove
2957                                 - add
2958                                 - replace
2959                                 - move
2960                                 - copy
2961                                 type: string
2962                               path:
2963                                 description: Path contains the JSON-pointer value that
2964                                   references a location within the target document where
2965                                   the operation is performed. The meaning of the value
2966                                   depends on the value of Op.
2967                                 type: string
2968                               value:
2969                                 description: Value contains a valid JSON structure. The
2970                                   meaning of the value depends on the value of Op, and
2971                                   is NOT taken into account by all operations.
2972                                 x-kubernetes-preserve-unknown-fields: true
2973                             required:
2974                             - op
2975                             - path
2976                             type: object
2977                           type: array
2978                         target:
2979                           description: Target points to the resources that the patch document
2980                             should be applied to.
2981                           properties:
2982                             annotationSelector:
2983                               description: AnnotationSelector is a string that follows
2984                                 the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2985                                 It matches with the resource annotations.
2986                               type: string
2987                             group:
2988                               description: Group is the API group to select resources
2989                                 from. Together with Version and Kind it is capable of
2990                                 unambiguously identifying and/or selecting resources.
2991                                 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2992                               type: string
2993                             kind:
2994                               description: Kind of the API Group to select resources from.
2995                                 Together with Group and Version it is capable of unambiguously
2996                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2997                               type: string
2998                             labelSelector:
2999                               description: LabelSelector is a string that follows the
3000                                 label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
3001                                 It matches with the resource labels.
3002                               type: string
3003                             name:
3004                               description: Name to match resources with.
3005                               type: string
3006                             namespace:
3007                               description: Namespace to select resources from.
3008                               type: string
3009                             version:
3010                               description: Version of the API Group to select resources
3011                                 from. Together with Group and Kind it is capable of unambiguously
3012                                 identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
3013                               type: string
3014                           type: object
3015                       required:
3016                       - patch
3017                       - target
3018                       type: object
3019                     type: array
3020                   patchesStrategicMerge:
3021                     description: 'Strategic merge patches, defined as inline YAML objects.
3022                       Deprecated: Use Patches instead.'
3023                     items:
3024                       x-kubernetes-preserve-unknown-fields: true
3025                     type: array
3026                   path:
3027                     description: Path to the directory containing the kustomization.yaml
3028                       file, or the set of plain YAMLs a kustomization.yaml should be generated
3029                       for. Defaults to 'None', which translates to the root path of the
3030                       SourceRef.
3031                     type: string
3032                   postBuild:
3033                     description: PostBuild describes which actions to perform on the YAML
3034                       manifest generated by building the kustomize overlay.
3035                     properties:
3036                       substitute:
3037                         additionalProperties:
3038                           type: string
3039                         description: Substitute holds a map of key/value pairs. The variables
3040                           defined in your YAML manifests that match any of the keys defined
3041                           in the map will be substituted with the set value. Includes
3042                           support for bash string replacement functions e.g. ${var:=default},
3043                           ${var:position} and ${var/substring/replacement}.
3044                         type: object
3045                       substituteFrom:
3046                         description: SubstituteFrom holds references to ConfigMaps and
3047                           Secrets containing the variables and their values to be substituted
3048                           in the YAML manifests. The ConfigMap and the Secret data keys
3049                           represent the var names and they must match the vars declared
3050                           in the manifests for the substitution to happen.
3051                         items:
3052                           description: SubstituteReference contains a reference to a resource
3053                             containing the variables name and value.
3054                           properties:
3055                             kind:
3056                               description: Kind of the values referent, valid values are
3057                                 ('Secret', 'ConfigMap').
3058                               enum:
3059                               - Secret
3060                               - ConfigMap
3061                               type: string
3062                             name:
3063                               description: Name of the values referent. Should reside
3064                                 in the same namespace as the referring resource.
3065                               maxLength: 253
3066                               minLength: 1
3067                               type: string
3068                             optional:
3069                               default: false
3070                               description: Optional indicates whether the referenced resource
3071                                 must exist, or whether to tolerate its absence. If true
3072                                 and the referenced resource is absent, proceed as if the
3073                                 resource was present but empty, without any variables
3074                                 defined.
3075                               type: boolean
3076                           required:
3077                           - kind
3078                           - name
3079                           type: object
3080                         type: array
3081                     type: object
3082                   prune:
3083                     description: Prune enables garbage collection.
3084                     type: boolean
3085                   retryInterval:
3086                     description: The interval at which to retry a previously failed reconciliation.
3087                       When not specified, the controller uses the KustomizationSpec.Interval
3088                       value to retry failures.
3089                     type: string
3090                   serviceAccountName:
3091                     description: The name of the Kubernetes service account to impersonate
3092                       when reconciling this Kustomization.
3093                     type: string
3094                   sourceRef:
3095                     description: Reference of the source where the kustomization file
3096                       is.
3097                     properties:
3098                       apiVersion:
3099                         description: API version of the referent.
3100                         type: string
3101                       kind:
3102                         description: Kind of the referent.
3103                         enum:
3104                         - GitRepository
3105                         - Bucket
3106                         type: string
3107                       name:
3108                         description: Name of the referent.
3109                         type: string
3110                       namespace:
3111                         description: Namespace of the referent, defaults to the namespace
3112                           of the Kubernetes resource object that contains the reference.
3113                         type: string
3114                     required:
3115                     - kind
3116                     - name
3117                     type: object
3118                   suspend:
3119                     description: This flag tells the controller to suspend subsequent
3120                       kustomize executions, it does not apply to already started executions.
3121                       Defaults to false.
3122                     type: boolean
3123                   targetNamespace:
3124                     description: TargetNamespace sets or overrides the namespace in the
3125                       kustomization.yaml file.
3126                     maxLength: 63
3127                     minLength: 1
3128                     type: string
3129                   timeout:
3130                     description: Timeout for validation, apply and health checking operations.
3131                       Defaults to 'Interval' duration.
3132                     type: string
3133                   validation:
3134                     description: 'Deprecated: Not used in v1beta2.'
3135                     enum:
3136                     - none
3137                     - client
3138                     - server
3139                     type: string
3140                   wait:
3141                     description: Wait instructs the controller to check the health of
3142                       all the reconciled resources. When enabled, the HealthChecks are
3143                       ignored. Defaults to false.
3144                     type: boolean
3145                 required:
3146                 - interval
3147                 - prune
3148                 - sourceRef
3149                 type: object
3150               status:
3151                 default:
3152                   observedGeneration: -1
3153                 description: KustomizationStatus defines the observed state of a kustomization.
3154                 properties:
3155                   conditions:
3156                     items:
3157                       description: "Condition contains details for one aspect of the current
3158                         state of this API Resource. --- This struct is intended for direct
3159                         use as an array at the field path .status.conditions.  For example,
3160                         type FooStatus struct{     // Represents the observations of a
3161                         foo's current state.     // Known .status.conditions.type are:
3162                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
3163                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
3164                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
3165                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
3166                         \n     // other fields }"
3167                       properties:
3168                         lastTransitionTime:
3169                           description: lastTransitionTime is the last time the condition
3170                             transitioned from one status to another. This should be when
3171                             the underlying condition changed.  If that is not known, then
3172                             using the time when the API field changed is acceptable.
3173                           format: date-time
3174                           type: string
3175                         message:
3176                           description: message is a human readable message indicating
3177                             details about the transition. This may be an empty string.
3178                           maxLength: 32768
3179                           type: string
3180                         observedGeneration:
3181                           description: observedGeneration represents the .metadata.generation
3182                             that the condition was set based upon. For instance, if .metadata.generation
3183                             is currently 12, but the .status.conditions[x].observedGeneration
3184                             is 9, the condition is out of date with respect to the current
3185                             state of the instance.
3186                           format: int64
3187                           minimum: 0
3188                           type: integer
3189                         reason:
3190                           description: reason contains a programmatic identifier indicating
3191                             the reason for the condition's last transition. Producers
3192                             of specific condition types may define expected values and
3193                             meanings for this field, and whether the values are considered
3194                             a guaranteed API. The value should be a CamelCase string.
3195                             This field may not be empty.
3196                           maxLength: 1024
3197                           minLength: 1
3198                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
3199                           type: string
3200                         status:
3201                           description: status of the condition, one of True, False, Unknown.
3202                           enum:
3203                           - "True"
3204                           - "False"
3205                           - Unknown
3206                           type: string
3207                         type:
3208                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
3209                             --- Many .condition.type values are consistent across resources
3210                             like Available, but because arbitrary conditions can be useful
3211                             (see .node.status.conditions), the ability to deconflict is
3212                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
3213                           maxLength: 316
3214                           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])$
3215                           type: string
3216                       required:
3217                       - lastTransitionTime
3218                       - message
3219                       - reason
3220                       - status
3221                       - type
3222                       type: object
3223                     type: array
3224                   inventory:
3225                     description: Inventory contains the list of Kubernetes resource object
3226                       references that have been successfully applied.
3227                     properties:
3228                       entries:
3229                         description: Entries of Kubernetes resource object references.
3230                         items:
3231                           description: ResourceRef contains the information necessary
3232                             to locate a resource within a cluster.
3233                           properties:
3234                             id:
3235                               description: ID is the string representation of the Kubernetes
3236                                 resource object's metadata, in the format '<namespace>_<name>_<group>_<kind>'.
3237                               type: string
3238                             v:
3239                               description: Version is the API version of the Kubernetes
3240                                 resource object's kind.
3241                               type: string
3242                           required:
3243                           - id
3244                           - v
3245                           type: object
3246                         type: array
3247                     required:
3248                     - entries
3249                     type: object
3250                   lastAppliedRevision:
3251                     description: The last successfully applied revision. The revision
3252                       format for Git sources is <branch|tag>/<commit-sha>.
3253                     type: string
3254                   lastAttemptedRevision:
3255                     description: LastAttemptedRevision is the revision of the last reconciliation
3256                       attempt.
3257                     type: string
3258                   lastHandledReconcileAt:
3259                     description: LastHandledReconcileAt holds the value of the most recent
3260                       reconcile request value, so a change can be detected.
3261                     type: string
3262                   observedGeneration:
3263                     description: ObservedGeneration is the last reconciled generation.
3264                     format: int64
3265                     type: integer
3266                 type: object
3267             type: object
3268         served: true
3269         storage: true
3270         subresources:
3271           status: {}
3272     status:
3273       acceptedNames:
3274         kind: ""
3275         plural: ""
3276       conditions: []
3277       storedVersions: []
3278     ---
3279     apiVersion: apiextensions.k8s.io/v1
3280     kind: CustomResourceDefinition
3281     metadata:
3282       annotations:
3283         controller-gen.kubebuilder.io/version: v0.7.0
3284       creationTimestamp: null
3285       labels:
3286         app.kubernetes.io/instance: flux-system
3287         app.kubernetes.io/part-of: flux
3288         app.kubernetes.io/version: v0.27.0
3289       name: providers.notification.toolkit.fluxcd.io
3290     spec:
3291       group: notification.toolkit.fluxcd.io
3292       names:
3293         kind: Provider
3294         listKind: ProviderList
3295         plural: providers
3296         singular: provider
3297       scope: Namespaced
3298       versions:
3299       - additionalPrinterColumns:
3300         - jsonPath: .status.conditions[?(@.type=="Ready")].status
3301           name: Ready
3302           type: string
3303         - jsonPath: .status.conditions[?(@.type=="Ready")].message
3304           name: Status
3305           type: string
3306         - jsonPath: .metadata.creationTimestamp
3307           name: Age
3308           type: date
3309         name: v1beta1
3310         schema:
3311           openAPIV3Schema:
3312             description: Provider is the Schema for the providers API
3313             properties:
3314               apiVersion:
3315                 description: 'APIVersion defines the versioned schema of this representation
3316                   of an object. Servers should convert recognized schemas to the latest
3317                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
3318                 type: string
3319               kind:
3320                 description: 'Kind is a string value representing the REST resource this
3321                   object represents. Servers may infer this from the endpoint the client
3322                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
3323                 type: string
3324               metadata:
3325                 type: object
3326               spec:
3327                 description: ProviderSpec defines the desired state of Provider
3328                 properties:
3329                   address:
3330                     description: HTTP/S webhook address of this provider
3331                     pattern: ^(http|https)://
3332                     type: string
3333                   certSecretRef:
3334                     description: CertSecretRef can be given the name of a secret containing
3335                       a PEM-encoded CA certificate (`caFile`)
3336                     properties:
3337                       name:
3338                         description: Name of the referent
3339                         type: string
3340                     required:
3341                     - name
3342                     type: object
3343                   channel:
3344                     description: Alert channel for this provider
3345                     type: string
3346                   proxy:
3347                     description: HTTP/S address of the proxy
3348                     pattern: ^(http|https)://
3349                     type: string
3350                   secretRef:
3351                     description: Secret reference containing the provider webhook URL
3352                       using "address" as data key
3353                     properties:
3354                       name:
3355                         description: Name of the referent
3356                         type: string
3357                     required:
3358                     - name
3359                     type: object
3360                   suspend:
3361                     description: This flag tells the controller to suspend subsequent
3362                       events handling. Defaults to false.
3363                     type: boolean
3364                   type:
3365                     description: Type of provider
3366                     enum:
3367                     - slack
3368                     - discord
3369                     - msteams
3370                     - rocket
3371                     - generic
3372                     - github
3373                     - gitlab
3374                     - bitbucket
3375                     - azuredevops
3376                     - googlechat
3377                     - webex
3378                     - sentry
3379                     - azureeventhub
3380                     - telegram
3381                     - lark
3382                     - matrix
3383                     - opsgenie
3384                     - alertmanager
3385                     - grafana
3386                     type: string
3387                   username:
3388                     description: Bot username for this provider
3389                     type: string
3390                 required:
3391                 - type
3392                 type: object
3393               status:
3394                 default:
3395                   observedGeneration: -1
3396                 description: ProviderStatus defines the observed state of Provider
3397                 properties:
3398                   conditions:
3399                     items:
3400                       description: "Condition contains details for one aspect of the current
3401                         state of this API Resource. --- This struct is intended for direct
3402                         use as an array at the field path .status.conditions.  For example,
3403                         type FooStatus struct{     // Represents the observations of a
3404                         foo's current state.     // Known .status.conditions.type are:
3405                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
3406                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
3407                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
3408                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
3409                         \n     // other fields }"
3410                       properties:
3411                         lastTransitionTime:
3412                           description: lastTransitionTime is the last time the condition
3413                             transitioned from one status to another. This should be when
3414                             the underlying condition changed.  If that is not known, then
3415                             using the time when the API field changed is acceptable.
3416                           format: date-time
3417                           type: string
3418                         message:
3419                           description: message is a human readable message indicating
3420                             details about the transition. This may be an empty string.
3421                           maxLength: 32768
3422                           type: string
3423                         observedGeneration:
3424                           description: observedGeneration represents the .metadata.generation
3425                             that the condition was set based upon. For instance, if .metadata.generation
3426                             is currently 12, but the .status.conditions[x].observedGeneration
3427                             is 9, the condition is out of date with respect to the current
3428                             state of the instance.
3429                           format: int64
3430                           minimum: 0
3431                           type: integer
3432                         reason:
3433                           description: reason contains a programmatic identifier indicating
3434                             the reason for the condition's last transition. Producers
3435                             of specific condition types may define expected values and
3436                             meanings for this field, and whether the values are considered
3437                             a guaranteed API. The value should be a CamelCase string.
3438                             This field may not be empty.
3439                           maxLength: 1024
3440                           minLength: 1
3441                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
3442                           type: string
3443                         status:
3444                           description: status of the condition, one of True, False, Unknown.
3445                           enum:
3446                           - "True"
3447                           - "False"
3448                           - Unknown
3449                           type: string
3450                         type:
3451                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
3452                             --- Many .condition.type values are consistent across resources
3453                             like Available, but because arbitrary conditions can be useful
3454                             (see .node.status.conditions), the ability to deconflict is
3455                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
3456                           maxLength: 316
3457                           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])$
3458                           type: string
3459                       required:
3460                       - lastTransitionTime
3461                       - message
3462                       - reason
3463                       - status
3464                       - type
3465                       type: object
3466                     type: array
3467                   observedGeneration:
3468                     description: ObservedGeneration is the last reconciled generation.
3469                     format: int64
3470                     type: integer
3471                 type: object
3472             type: object
3473         served: true
3474         storage: true
3475         subresources:
3476           status: {}
3477     status:
3478       acceptedNames:
3479         kind: ""
3480         plural: ""
3481       conditions: []
3482       storedVersions: []
3483     ---
3484     apiVersion: apiextensions.k8s.io/v1
3485     kind: CustomResourceDefinition
3486     metadata:
3487       annotations:
3488         controller-gen.kubebuilder.io/version: v0.7.0
3489       creationTimestamp: null
3490       labels:
3491         app.kubernetes.io/instance: flux-system
3492         app.kubernetes.io/part-of: flux
3493         app.kubernetes.io/version: v0.27.0
3494       name: receivers.notification.toolkit.fluxcd.io
3495     spec:
3496       group: notification.toolkit.fluxcd.io
3497       names:
3498         kind: Receiver
3499         listKind: ReceiverList
3500         plural: receivers
3501         singular: receiver
3502       scope: Namespaced
3503       versions:
3504       - additionalPrinterColumns:
3505         - jsonPath: .status.conditions[?(@.type=="Ready")].status
3506           name: Ready
3507           type: string
3508         - jsonPath: .status.conditions[?(@.type=="Ready")].message
3509           name: Status
3510           type: string
3511         - jsonPath: .metadata.creationTimestamp
3512           name: Age
3513           type: date
3514         name: v1beta1
3515         schema:
3516           openAPIV3Schema:
3517             description: Receiver is the Schema for the receivers API
3518             properties:
3519               apiVersion:
3520                 description: 'APIVersion defines the versioned schema of this representation
3521                   of an object. Servers should convert recognized schemas to the latest
3522                   internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
3523                 type: string
3524               kind:
3525                 description: 'Kind is a string value representing the REST resource this
3526                   object represents. Servers may infer this from the endpoint the client
3527                   submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
3528                 type: string
3529               metadata:
3530                 type: object
3531               spec:
3532                 description: ReceiverSpec defines the desired state of Receiver
3533                 properties:
3534                   events:
3535                     description: A list of events to handle, e.g. 'push' for GitHub or
3536                       'Push Hook' for GitLab.
3537                     items:
3538                       type: string
3539                     type: array
3540                   resources:
3541                     description: A list of resources to be notified about changes.
3542                     items:
3543                       description: CrossNamespaceObjectReference contains enough information
3544                         to let you locate the typed referenced object at cluster level
3545                       properties:
3546                         apiVersion:
3547                           description: API version of the referent
3548                           type: string
3549                         kind:
3550                           description: Kind of the referent
3551                           enum:
3552                           - Bucket
3553                           - GitRepository
3554                           - Kustomization
3555                           - HelmRelease
3556                           - HelmChart
3557                           - HelmRepository
3558                           - ImageRepository
3559                           - ImagePolicy
3560                           - ImageUpdateAutomation
3561                           type: string
3562                         matchLabels:
3563                           additionalProperties:
3564                             type: string
3565                           description: MatchLabels is a map of {key,value} pairs. A single
3566                             {key,value} in the matchLabels map is equivalent to an element
3567                             of matchExpressions, whose key field is "key", the operator
3568                             is "In", and the values array contains only "value". The requirements
3569                             are ANDed.
3570                           type: object
3571                         name:
3572                           description: Name of the referent
3573                           maxLength: 53
3574                           minLength: 1
3575                           type: string
3576                         namespace:
3577                           description: Namespace of the referent
3578                           maxLength: 53
3579                           minLength: 1
3580                           type: string
3581                       required:
3582                       - name
3583                       type: object
3584                     type: array
3585                   secretRef:
3586                     description: Secret reference containing the token used to validate
3587                       the payload authenticity
3588                     properties:
3589                       name:
3590                         description: Name of the referent
3591                         type: string
3592                     required:
3593                     - name
3594                     type: object
3595                   suspend:
3596                     description: This flag tells the controller to suspend subsequent
3597                       events handling. Defaults to false.
3598                     type: boolean
3599                   type:
3600                     description: Type of webhook sender, used to determine the validation
3601                       procedure and payload deserialization.
3602                     enum:
3603                     - generic
3604                     - generic-hmac
3605                     - github
3606                     - gitlab
3607                     - bitbucket
3608                     - harbor
3609                     - dockerhub
3610                     - quay
3611                     - gcr
3612                     - nexus
3613                     - acr
3614                     type: string
3615                 required:
3616                 - resources
3617                 - type
3618                 type: object
3619               status:
3620                 default:
3621                   observedGeneration: -1
3622                 description: ReceiverStatus defines the observed state of Receiver
3623                 properties:
3624                   conditions:
3625                     items:
3626                       description: "Condition contains details for one aspect of the current
3627                         state of this API Resource. --- This struct is intended for direct
3628                         use as an array at the field path .status.conditions.  For example,
3629                         type FooStatus struct{     // Represents the observations of a
3630                         foo's current state.     // Known .status.conditions.type are:
3631                         \"Available\", \"Progressing\", and \"Degraded\"     // +patchMergeKey=type
3632                         \    // +patchStrategy=merge     // +listType=map     // +listMapKey=type
3633                         \    Conditions []metav1.Condition `json:\"conditions,omitempty\"
3634                         patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`
3635                         \n     // other fields }"
3636                       properties:
3637                         lastTransitionTime:
3638                           description: lastTransitionTime is the last time the condition
3639                             transitioned from one status to another. This should be when
3640                             the underlying condition changed.  If that is not known, then
3641                             using the time when the API field changed is acceptable.
3642                           format: date-time
3643                           type: string
3644                         message:
3645                           description: message is a human readable message indicating
3646                             details about the transition. This may be an empty string.
3647                           maxLength: 32768
3648                           type: string
3649                         observedGeneration:
3650                           description: observedGeneration represents the .metadata.generation
3651                             that the condition was set based upon. For instance, if .metadata.generation
3652                             is currently 12, but the .status.conditions[x].observedGeneration
3653                             is 9, the condition is out of date with respect to the current
3654                             state of the instance.
3655                           format: int64
3656                           minimum: 0
3657                           type: integer
3658                         reason:
3659                           description: reason contains a programmatic identifier indicating
3660                             the reason for the condition's last transition. Producers
3661                             of specific condition types may define expected values and
3662                             meanings for this field, and whether the values are considered
3663                             a guaranteed API. The value should be a CamelCase string.
3664                             This field may not be empty.
3665                           maxLength: 1024
3666                           minLength: 1
3667                           pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
3668                           type: string
3669                         status:
3670                           description: status of the condition, one of True, False, Unknown.
3671                           enum:
3672                           - "True"
3673                           - "False"
3674                           - Unknown
3675                           type: string
3676                         type:
3677                           description: type of condition in CamelCase or in foo.example.com/CamelCase.
3678                             --- Many .condition.type values are consistent across resources
3679                             like Available, but because arbitrary conditions can be useful
3680                             (see .node.status.conditions), the ability to deconflict is
3681                             important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
3682                           maxLength: 316
3683                           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])$
3684                           type: string
3685                       required:
3686                       - lastTransitionTime
3687                       - message
3688                       - reason
3689                       - status
3690                       - type
3691                       type: object
3692                     type: array
3693                   observedGeneration:
3694                     description: ObservedGeneration is the last observed generation.
3695                     format: int64
3696                     type: integer
3697                   url:
3698                     description: Generated webhook URL in the format of '/hook/sha256sum(token+name+namespace)'.
3699                     type: string
3700                 type: object
3701             type: object
3702         served: true
3703         storage: true
3704         subresources:
3705           status: {}
3706     status:
3707       acceptedNames:
3708         kind: ""
3709         plural: ""
3710       conditions: []
3711       storedVersions: []
3712     ---
3713     apiVersion: v1
3714     kind: ServiceAccount
3715     metadata:
3716       labels:
3717         app.kubernetes.io/instance: flux-system
3718         app.kubernetes.io/part-of: flux
3719         app.kubernetes.io/version: v0.27.0
3720       name: helm-controller
3721       namespace: flux-system
3722     ---
3723     apiVersion: v1
3724     kind: ServiceAccount
3725     metadata:
3726       labels:
3727         app.kubernetes.io/instance: flux-system
3728         app.kubernetes.io/part-of: flux
3729         app.kubernetes.io/version: v0.27.0
3730       name: kustomize-controller
3731       namespace: flux-system
3732     ---
3733     apiVersion: v1
3734     kind: ServiceAccount
3735     metadata:
3736       labels:
3737         app.kubernetes.io/instance: flux-system
3738         app.kubernetes.io/part-of: flux
3739         app.kubernetes.io/version: v0.27.0
3740       name: notification-controller
3741       namespace: flux-system
3742     ---
3743     apiVersion: v1
3744     kind: ServiceAccount
3745     metadata:
3746       labels:
3747         app.kubernetes.io/instance: flux-system
3748         app.kubernetes.io/part-of: flux
3749         app.kubernetes.io/version: v0.27.0
3750       name: source-controller
3751       namespace: flux-system
3752     ---
3753     apiVersion: rbac.authorization.k8s.io/v1
3754     kind: ClusterRole
3755     metadata:
3756       labels:
3757         app.kubernetes.io/instance: flux-system
3758         app.kubernetes.io/part-of: flux
3759         app.kubernetes.io/version: v0.27.0
3760       name: crd-controller-flux-system
3761     rules:
3762     - apiGroups:
3763       - source.toolkit.fluxcd.io
3764       resources:
3765       - '*'
3766       verbs:
3767       - '*'
3768     - apiGroups:
3769       - kustomize.toolkit.fluxcd.io
3770       resources:
3771       - '*'
3772       verbs:
3773       - '*'
3774     - apiGroups:
3775       - helm.toolkit.fluxcd.io
3776       resources:
3777       - '*'
3778       verbs:
3779       - '*'
3780     - apiGroups:
3781       - notification.toolkit.fluxcd.io
3782       resources:
3783       - '*'
3784       verbs:
3785       - '*'
3786     - apiGroups:
3787       - image.toolkit.fluxcd.io
3788       resources:
3789       - '*'
3790       verbs:
3791       - '*'
3792     - apiGroups:
3793       - ""
3794       resources:
3795       - namespaces
3796       - secrets
3797       verbs:
3798       - get
3799       - list
3800       - watch
3801     - apiGroups:
3802       - ""
3803       resources:
3804       - events
3805       verbs:
3806       - create
3807       - patch
3808     - apiGroups:
3809       - ""
3810       resources:
3811       - configmaps
3812       - configmaps/status
3813       verbs:
3814       - get
3815       - list
3816       - watch
3817       - create
3818       - update
3819       - patch
3820       - delete
3821     - apiGroups:
3822       - coordination.k8s.io
3823       resources:
3824       - leases
3825       verbs:
3826       - get
3827       - list
3828       - watch
3829       - create
3830       - update
3831       - patch
3832       - delete
3833     ---
3834     apiVersion: rbac.authorization.k8s.io/v1
3835     kind: ClusterRoleBinding
3836     metadata:
3837       labels:
3838         app.kubernetes.io/instance: flux-system
3839         app.kubernetes.io/part-of: flux
3840         app.kubernetes.io/version: v0.27.0
3841       name: cluster-reconciler-flux-system
3842     roleRef:
3843       apiGroup: rbac.authorization.k8s.io
3844       kind: ClusterRole
3845       name: cluster-admin
3846     subjects:
3847     - kind: ServiceAccount
3848       name: kustomize-controller
3849       namespace: flux-system
3850     - kind: ServiceAccount
3851       name: helm-controller
3852       namespace: flux-system
3853     ---
3854     apiVersion: rbac.authorization.k8s.io/v1
3855     kind: ClusterRoleBinding
3856     metadata:
3857       labels:
3858         app.kubernetes.io/instance: flux-system
3859         app.kubernetes.io/part-of: flux
3860         app.kubernetes.io/version: v0.27.0
3861       name: crd-controller-flux-system
3862     roleRef:
3863       apiGroup: rbac.authorization.k8s.io
3864       kind: ClusterRole
3865       name: crd-controller-flux-system
3866     subjects:
3867     - kind: ServiceAccount
3868       name: kustomize-controller
3869       namespace: flux-system
3870     - kind: ServiceAccount
3871       name: helm-controller
3872       namespace: flux-system
3873     - kind: ServiceAccount
3874       name: source-controller
3875       namespace: flux-system
3876     - kind: ServiceAccount
3877       name: notification-controller
3878       namespace: flux-system
3879     - kind: ServiceAccount
3880       name: image-reflector-controller
3881       namespace: flux-system
3882     - kind: ServiceAccount
3883       name: image-automation-controller
3884       namespace: flux-system
3885     ---
3886     apiVersion: v1
3887     kind: Service
3888     metadata:
3889       labels:
3890         app.kubernetes.io/instance: flux-system
3891         app.kubernetes.io/part-of: flux
3892         app.kubernetes.io/version: v0.27.0
3893         control-plane: controller
3894       name: notification-controller
3895       namespace: flux-system
3896     spec:
3897       ports:
3898       - name: http
3899         port: 80
3900         protocol: TCP
3901         targetPort: http
3902       selector:
3903         app: notification-controller
3904       type: ClusterIP
3905     ---
3906     apiVersion: v1
3907     kind: Service
3908     metadata:
3909       labels:
3910         app.kubernetes.io/instance: flux-system
3911         app.kubernetes.io/part-of: flux
3912         app.kubernetes.io/version: v0.27.0
3913         control-plane: controller
3914       name: source-controller
3915       namespace: flux-system
3916     spec:
3917       ports:
3918       - name: http
3919         port: 80
3920         protocol: TCP
3921         targetPort: http
3922       selector:
3923         app: source-controller
3924       type: ClusterIP
3925     ---
3926     apiVersion: v1
3927     kind: Service
3928     metadata:
3929       labels:
3930         app.kubernetes.io/instance: flux-system
3931         app.kubernetes.io/part-of: flux
3932         app.kubernetes.io/version: v0.27.0
3933         control-plane: controller
3934       name: webhook-receiver
3935       namespace: flux-system
3936     spec:
3937       ports:
3938       - name: http
3939         port: 80
3940         protocol: TCP
3941         targetPort: http-webhook
3942       selector:
3943         app: notification-controller
3944       type: ClusterIP
3945     ---
3946     apiVersion: apps/v1
3947     kind: Deployment
3948     metadata:
3949       labels:
3950         app.kubernetes.io/instance: flux-system
3951         app.kubernetes.io/part-of: flux
3952         app.kubernetes.io/version: v0.27.0
3953         control-plane: controller
3954       name: helm-controller
3955       namespace: flux-system
3956     spec:
3957       replicas: 1
3958       selector:
3959         matchLabels:
3960           app: helm-controller
3961       template:
3962         metadata:
3963           annotations:
3964             prometheus.io/port: "8080"
3965             prometheus.io/scrape: "true"
3966           labels:
3967             app: helm-controller
3968         spec:
3969           containers:
3970           - args:
3971             - --events-addr=http://notification-controller.flux-system.svc.cluster.local/
3972             - --watch-all-namespaces=true
3973             - --log-level=info
3974             - --log-encoding=json
3975             - --enable-leader-election
3976             env:
3977             - name: RUNTIME_NAMESPACE
3978               valueFrom:
3979                 fieldRef:
3980                   fieldPath: metadata.namespace
3981             image: ghcr.io/fluxcd/helm-controller:v0.17.0
3982             imagePullPolicy: IfNotPresent
3983             livenessProbe:
3984               httpGet:
3985                 path: /healthz
3986                 port: healthz
3987             name: manager
3988             ports:
3989             - containerPort: 8080
3990               name: http-prom
3991               protocol: TCP
3992             - containerPort: 9440
3993               name: healthz
3994               protocol: TCP
3995             readinessProbe:
3996               httpGet:
3997                 path: /readyz
3998                 port: healthz
3999             resources:
4000               limits:
4001                 cpu: 1000m
4002                 memory: 1Gi
4003               requests:
4004                 cpu: 100m
4005                 memory: 64Mi
4006             securityContext:
4007               allowPrivilegeEscalation: false
4008               capabilities:
4009                 drop:
4010                 - ALL
4011               readOnlyRootFilesystem: true
4012               runAsNonRoot: true
4013               runAsUser: 65534
4014               seccompProfile:
4015                 type: RuntimeDefault
4016             volumeMounts:
4017             - mountPath: /tmp
4018               name: temp
4019           nodeSelector:
4020             kubernetes.io/os: linux
4021           serviceAccountName: helm-controller
4022           terminationGracePeriodSeconds: 600
4023           volumes:
4024           - emptyDir: {}
4025             name: temp
4026     ---
4027     apiVersion: apps/v1
4028     kind: Deployment
4029     metadata:
4030       labels:
4031         app.kubernetes.io/instance: flux-system
4032         app.kubernetes.io/part-of: flux
4033         app.kubernetes.io/version: v0.27.0
4034         control-plane: controller
4035       name: kustomize-controller
4036       namespace: flux-system
4037     spec:
4038       replicas: 1
4039       selector:
4040         matchLabels:
4041           app: kustomize-controller
4042       template:
4043         metadata:
4044           annotations:
4045             prometheus.io/port: "8080"
4046             prometheus.io/scrape: "true"
4047           labels:
4048             app: kustomize-controller
4049         spec:
4050           containers:
4051           - args:
4052             - --events-addr=http://notification-controller.flux-system.svc.cluster.local/
4053             - --watch-all-namespaces=true
4054             - --log-level=info
4055             - --log-encoding=json
4056             - --enable-leader-election
4057             env:
4058             - name: RUNTIME_NAMESPACE
4059               valueFrom:
4060                 fieldRef:
4061                   fieldPath: metadata.namespace
4062             image: ghcr.io/fluxcd/kustomize-controller:v0.21.0
4063             imagePullPolicy: IfNotPresent
4064             livenessProbe:
4065               httpGet:
4066                 path: /healthz
4067                 port: healthz
4068             name: manager
4069             ports:
4070             - containerPort: 8080
4071               name: http-prom
4072               protocol: TCP
4073             - containerPort: 9440
4074               name: healthz
4075               protocol: TCP
4076             readinessProbe:
4077               httpGet:
4078                 path: /readyz
4079                 port: healthz
4080             resources:
4081               limits:
4082                 cpu: 1000m
4083                 memory: 1Gi
4084               requests:
4085                 cpu: 100m
4086                 memory: 64Mi
4087             securityContext:
4088               allowPrivilegeEscalation: false
4089               capabilities:
4090                 drop:
4091                 - ALL
4092               readOnlyRootFilesystem: true
4093               runAsNonRoot: true
4094               runAsUser: 65534
4095               seccompProfile:
4096                 type: RuntimeDefault
4097             volumeMounts:
4098             - mountPath: /tmp
4099               name: temp
4100           nodeSelector:
4101             kubernetes.io/os: linux
4102           securityContext:
4103             fsGroup: 1337
4104           serviceAccountName: kustomize-controller
4105           terminationGracePeriodSeconds: 60
4106           volumes:
4107           - emptyDir: {}
4108             name: temp
4109     ---
4110     apiVersion: apps/v1
4111     kind: Deployment
4112     metadata:
4113       labels:
4114         app.kubernetes.io/instance: flux-system
4115         app.kubernetes.io/part-of: flux
4116         app.kubernetes.io/version: v0.27.0
4117         control-plane: controller
4118       name: notification-controller
4119       namespace: flux-system
4120     spec:
4121       replicas: 1
4122       selector:
4123         matchLabels:
4124           app: notification-controller
4125       template:
4126         metadata:
4127           annotations:
4128             prometheus.io/port: "8080"
4129             prometheus.io/scrape: "true"
4130           labels:
4131             app: notification-controller
4132         spec:
4133           containers:
4134           - args:
4135             - --watch-all-namespaces=true
4136             - --log-level=info
4137             - --log-encoding=json
4138             - --enable-leader-election
4139             env:
4140             - name: RUNTIME_NAMESPACE
4141               valueFrom:
4142                 fieldRef:
4143                   fieldPath: metadata.namespace
4144             image: ghcr.io/fluxcd/notification-controller:v0.22.0
4145             imagePullPolicy: IfNotPresent
4146             livenessProbe:
4147               httpGet:
4148                 path: /healthz
4149                 port: healthz
4150             name: manager
4151             ports:
4152             - containerPort: 9090
4153               name: http
4154               protocol: TCP
4155             - containerPort: 9292
4156               name: http-webhook
4157               protocol: TCP
4158             - containerPort: 8080
4159               name: http-prom
4160               protocol: TCP
4161             - containerPort: 9440
4162               name: healthz
4163               protocol: TCP
4164             readinessProbe:
4165               httpGet:
4166                 path: /readyz
4167                 port: healthz
4168             resources:
4169               limits:
4170                 cpu: 1000m
4171                 memory: 1Gi
4172               requests:
4173                 cpu: 100m
4174                 memory: 64Mi
4175             securityContext:
4176               allowPrivilegeEscalation: false
4177               capabilities:
4178                 drop:
4179                 - ALL
4180               readOnlyRootFilesystem: true
4181               runAsNonRoot: true
4182               runAsUser: 65534
4183               seccompProfile:
4184                 type: RuntimeDefault
4185             volumeMounts:
4186             - mountPath: /tmp
4187               name: temp
4188           nodeSelector:
4189             kubernetes.io/os: linux
4190           serviceAccountName: notification-controller
4191           terminationGracePeriodSeconds: 10
4192           volumes:
4193           - emptyDir: {}
4194             name: temp
4195     ---
4196     apiVersion: apps/v1
4197     kind: Deployment
4198     metadata:
4199       labels:
4200         app.kubernetes.io/instance: flux-system
4201         app.kubernetes.io/part-of: flux
4202         app.kubernetes.io/version: v0.27.0
4203         control-plane: controller
4204       name: source-controller
4205       namespace: flux-system
4206     spec:
4207       replicas: 1
4208       selector:
4209         matchLabels:
4210           app: source-controller
4211       strategy:
4212         type: Recreate
4213       template:
4214         metadata:
4215           annotations:
4216             prometheus.io/port: "8080"
4217             prometheus.io/scrape: "true"
4218           labels:
4219             app: source-controller
4220         spec:
4221           containers:
4222           - args:
4223             - --events-addr=http://notification-controller.flux-system.svc.cluster.local/
4224             - --watch-all-namespaces=true
4225             - --log-level=info
4226             - --log-encoding=json
4227             - --enable-leader-election
4228             - --storage-path=/data
4229             - --storage-adv-addr=source-controller.$(RUNTIME_NAMESPACE).svc.cluster.local.
4230             env:
4231             - name: RUNTIME_NAMESPACE
4232               valueFrom:
4233                 fieldRef:
4234                   fieldPath: metadata.namespace
4235             image: ghcr.io/fluxcd/source-controller:v0.21.2
4236             imagePullPolicy: IfNotPresent
4237             livenessProbe:
4238               httpGet:
4239                 path: /healthz
4240                 port: healthz
4241             name: manager
4242             ports:
4243             - containerPort: 9090
4244               name: http
4245               protocol: TCP
4246             - containerPort: 8080
4247               name: http-prom
4248               protocol: TCP
4249             - containerPort: 9440
4250               name: healthz
4251               protocol: TCP
4252             readinessProbe:
4253               httpGet:
4254                 path: /
4255                 port: http
4256             resources:
4257               limits:
4258                 cpu: 1000m
4259                 memory: 1Gi
4260               requests:
4261                 cpu: 50m
4262                 memory: 64Mi
4263             securityContext:
4264               allowPrivilegeEscalation: false
4265               capabilities:
4266                 drop:
4267                 - ALL
4268               readOnlyRootFilesystem: true
4269               runAsNonRoot: true
4270               runAsUser: 65534
4271               seccompProfile:
4272                 type: RuntimeDefault
4273             volumeMounts:
4274             - mountPath: /data
4275               name: data
4276             - mountPath: /tmp
4277               name: tmp
4278           nodeSelector:
4279             kubernetes.io/os: linux
4280           securityContext:
4281             fsGroup: 1337
4282           serviceAccountName: source-controller
4283           terminationGracePeriodSeconds: 10
4284           volumes:
4285           - emptyDir: {}
4286             name: data
4287           - emptyDir: {}
4288             name: tmp
4289     ---
4290     apiVersion: networking.k8s.io/v1
4291     kind: NetworkPolicy
4292     metadata:
4293       labels:
4294         app.kubernetes.io/instance: flux-system
4295         app.kubernetes.io/part-of: flux
4296         app.kubernetes.io/version: v0.27.0
4297       name: allow-egress
4298       namespace: flux-system
4299     spec:
4300       egress:
4301       - {}
4302       ingress:
4303       - from:
4304         - podSelector: {}
4305       podSelector: {}
4306       policyTypes:
4307       - Ingress
4308       - Egress
4309     ---
4310     apiVersion: networking.k8s.io/v1
4311     kind: NetworkPolicy
4312     metadata:
4313       labels:
4314         app.kubernetes.io/instance: flux-system
4315         app.kubernetes.io/part-of: flux
4316         app.kubernetes.io/version: v0.27.0
4317       name: allow-scraping
4318       namespace: flux-system
4319     spec:
4320       ingress:
4321       - from:
4322         - namespaceSelector: {}
4323         ports:
4324         - port: 8080
4325           protocol: TCP
4326       podSelector: {}
4327       policyTypes:
4328       - Ingress
4329     ---
4330     apiVersion: networking.k8s.io/v1
4331     kind: NetworkPolicy
4332     metadata:
4333       labels:
4334         app.kubernetes.io/instance: flux-system
4335         app.kubernetes.io/part-of: flux
4336         app.kubernetes.io/version: v0.27.0
4337       name: allow-webhooks
4338       namespace: flux-system
4339     spec:
4340       ingress:
4341       - from:
4342         - namespaceSelector: {}
4343       podSelector:
4344         matchLabels:
4345           app: notification-controller
4346       policyTypes:
4347       - Ingress
4348     ---
4349     apiVersion: rbac.authorization.k8s.io/v1
4350     kind: RoleBinding
4351     metadata:
4352       name: psp:privileged:flux-system
4353       namespace: flux-system
4354     roleRef:
4355       apiGroup: rbac.authorization.k8s.io
4356       kind: ClusterRole
4357       name: psp:privileged
4358     subjects:
4359     - kind: Group
4360       name: system:serviceaccounts:flux-system
4361       apiGroup: rbac.authorization.k8s.io
4362   sync.yaml: |
4363     {{- if .Values.flux.decryptionSecret }}
4364     ---
4365     apiVersion: v1
4366     type: Opaque
4367     kind: Secret
4368     metadata:
4369       name: {{ .Values.flux.repositoryName }}-{{ .Values.flux.branch }}-sops-gpg
4370       namespace: flux-system
4371     data:
4372       sops.asc: {{ .Values.flux.decryptionSecret | b64enc }}
4373     {{- end }}
4374     ---
4375     apiVersion: source.toolkit.fluxcd.io/v1beta1
4376     kind: GitRepository
4377     metadata:
4378       name: {{ .Values.flux.repositoryName }}
4379       namespace: flux-system
4380     spec:
4381       gitImplementation: go-git
4382       interval: 1m0s
4383       ref:
4384         branch: {{ .Values.flux.branch }}
4385       timeout: 20s
4386       url: {{ .Values.flux.url }}
4387     ---
4388     apiVersion: kustomize.toolkit.fluxcd.io/v1beta2
4389     kind: Kustomization
4390     metadata:
4391       name: {{ .Values.clusterName }}-flux-sync
4392       namespace: flux-system
4393     spec:
4394       interval: 10m0s
4395       path: {{ .Values.flux.path }}
4396       prune: true
4397       sourceRef:
4398         kind: GitRepository
4399         name: {{ .Values.flux.repositoryName }}
4400     {{- if .Values.flux.decryptionSecret }}
4401       decryption:
4402         provider: sops
4403         secretRef:
4404           name: {{ .Values.flux.repositoryName }}-{{ .Values.flux.branch }}-sops-gpg
4405     {{- end }}
4406 kind: ConfigMap
4407 metadata:
4408   creationTimestamp: null
4409   name: {{ .Values.clusterName }}-flux-addon
4410 {{- end }}