1---
2apiVersion: apiextensions.k8s.io/v1
3kind: CustomResourceDefinition
4metadata:
5 annotations:
6 controller-gen.kubebuilder.io/version: (unknown)
7 name: helmrepositories.source.toolkit.fluxcd.io
8spec:
9 group: source.toolkit.fluxcd.io
10 names:
11 kind: HelmRepository
12 listKind: HelmRepositoryList
13 plural: helmrepositories
14 shortNames:
15 - helmrepo
16 singular: helmrepository
17 scope: Namespaced
18 versions:
19 - additionalPrinterColumns:
20 - jsonPath: .spec.url
21 name: URL
22 type: string
23 - jsonPath: .metadata.creationTimestamp
24 name: Age
25 type: date
26 - jsonPath: .status.conditions[?(@.type=="Ready")].status
27 name: Ready
28 type: string
29 - jsonPath: .status.conditions[?(@.type=="Ready")].message
30 name: Status
31 type: string
32 name: v1
33 schema:
34 openAPIV3Schema:
35 description: HelmRepository is the Schema for the helmrepositories API.
36 properties:
37 apiVersion:
38 description: |-
39 APIVersion defines the versioned schema of this representation of an object.
40 Servers should convert recognized schemas to the latest internal value, and
41 may reject unrecognized values.
42 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
43 type: string
44 kind:
45 description: |-
46 Kind is a string value representing the REST resource this object represents.
47 Servers may infer this from the endpoint the client submits requests to.
48 Cannot be updated.
49 In CamelCase.
50 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
51 type: string
52 metadata:
53 type: object
54 spec:
55 description: |-
56 HelmRepositorySpec specifies the required configuration to produce an
57 Artifact for a Helm repository index YAML.
58 properties:
59 accessFrom:
60 description: |-
61 AccessFrom specifies an Access Control List for allowing cross-namespace
62 references to this object.
63 NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
64 properties:
65 namespaceSelectors:
66 description: |-
67 NamespaceSelectors is the list of namespace selectors to which this ACL applies.
68 Items in this list are evaluated using a logical OR operation.
69 items:
70 description: |-
71 NamespaceSelector selects the namespaces to which this ACL applies.
72 An empty map of MatchLabels matches all namespaces in a cluster.
73 properties:
74 matchLabels:
75 additionalProperties:
76 type: string
77 description: |-
78 MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
79 map is equivalent to an element of matchExpressions, whose key field is "key", the
80 operator is "In", and the values array contains only "value". The requirements are ANDed.
81 type: object
82 type: object
83 type: array
84 required:
85 - namespaceSelectors
86 type: object
87 certSecretRef:
88 description: |-
89 CertSecretRef can be given the name of a Secret containing
90 either or both of
91
92
93 - a PEM-encoded client certificate (`tls.crt`) and private
94 key (`tls.key`);
95 - a PEM-encoded CA certificate (`ca.crt`)
96
97
98 and whichever are supplied, will be used for connecting to the
99 registry. The client cert and key are useful if you are
100 authenticating with a certificate; the CA cert is useful if
101 you are using a self-signed server certificate. The Secret must
102 be of type `Opaque` or `kubernetes.io/tls`.
103
104
105 It takes precedence over the values specified in the Secret referred
106 to by `.spec.secretRef`.
107 properties:
108 name:
109 description: Name of the referent.
110 type: string
111 required:
112 - name
113 type: object
114 insecure:
115 description: |-
116 Insecure allows connecting to a non-TLS HTTP container registry.
117 This field is only taken into account if the .spec.type field is set to 'oci'.
118 type: boolean
119 interval:
120 description: |-
121 Interval at which the HelmRepository URL is checked for updates.
122 This interval is approximate and may be subject to jitter to ensure
123 efficient use of resources.
124 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
125 type: string
126 passCredentials:
127 description: |-
128 PassCredentials allows the credentials from the SecretRef to be passed
129 on to a host that does not match the host as defined in URL.
130 This may be required if the host of the advertised chart URLs in the
131 index differ from the defined URL.
132 Enabling this should be done with caution, as it can potentially result
133 in credentials getting stolen in a MITM-attack.
134 type: boolean
135 provider:
136 default: generic
137 description: |-
138 Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
139 This field is optional, and only taken into account if the .spec.type field is set to 'oci'.
140 When not specified, defaults to 'generic'.
141 enum:
142 - generic
143 - aws
144 - azure
145 - gcp
146 type: string
147 secretRef:
148 description: |-
149 SecretRef specifies the Secret containing authentication credentials
150 for the HelmRepository.
151 For HTTP/S basic auth the secret must contain 'username' and 'password'
152 fields.
153 Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile'
154 keys is deprecated. Please use `.spec.certSecretRef` instead.
155 properties:
156 name:
157 description: Name of the referent.
158 type: string
159 required:
160 - name
161 type: object
162 suspend:
163 description: |-
164 Suspend tells the controller to suspend the reconciliation of this
165 HelmRepository.
166 type: boolean
167 timeout:
168 description: |-
169 Timeout is used for the index fetch operation for an HTTPS helm repository,
170 and for remote OCI Repository operations like pulling for an OCI helm
171 chart by the associated HelmChart.
172 Its default value is 60s.
173 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
174 type: string
175 type:
176 description: |-
177 Type of the HelmRepository.
178 When this field is set to "oci", the URL field value must be prefixed with "oci://".
179 enum:
180 - default
181 - oci
182 type: string
183 url:
184 description: |-
185 URL of the Helm repository, a valid URL contains at least a protocol and
186 host.
187 pattern: ^(http|https|oci)://.*$
188 type: string
189 required:
190 - url
191 type: object
192 status:
193 default:
194 observedGeneration: -1
195 description: HelmRepositoryStatus records the observed state of the HelmRepository.
196 properties:
197 artifact:
198 description: Artifact represents the last successful HelmRepository
199 reconciliation.
200 properties:
201 digest:
202 description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
203 pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
204 type: string
205 lastUpdateTime:
206 description: |-
207 LastUpdateTime is the timestamp corresponding to the last update of the
208 Artifact.
209 format: date-time
210 type: string
211 metadata:
212 additionalProperties:
213 type: string
214 description: Metadata holds upstream information such as OCI annotations.
215 type: object
216 path:
217 description: |-
218 Path is the relative file path of the Artifact. It can be used to locate
219 the file in the root of the Artifact storage on the local file system of
220 the controller managing the Source.
221 type: string
222 revision:
223 description: |-
224 Revision is a human-readable identifier traceable in the origin source
225 system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
226 type: string
227 size:
228 description: Size is the number of bytes in the file.
229 format: int64
230 type: integer
231 url:
232 description: |-
233 URL is the HTTP address of the Artifact as exposed by the controller
234 managing the Source. It can be used to retrieve the Artifact for
235 consumption, e.g. by another controller applying the Artifact contents.
236 type: string
237 required:
238 - lastUpdateTime
239 - path
240 - revision
241 - url
242 type: object
243 conditions:
244 description: Conditions holds the conditions for the HelmRepository.
245 items:
246 description: "Condition contains details for one aspect of the current
247 state of this API Resource.\n---\nThis struct is intended for
248 direct use as an array at the field path .status.conditions. For
249 example,\n\n\n\ttype FooStatus struct{\n\t // Represents the
250 observations of a foo's current state.\n\t // Known .status.conditions.type
251 are: \"Available\", \"Progressing\", and \"Degraded\"\n\t //
252 +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t
253 \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\"
254 patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t
255 \ // other fields\n\t}"
256 properties:
257 lastTransitionTime:
258 description: |-
259 lastTransitionTime is the last time the condition transitioned from one status to another.
260 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
261 format: date-time
262 type: string
263 message:
264 description: |-
265 message is a human readable message indicating details about the transition.
266 This may be an empty string.
267 maxLength: 32768
268 type: string
269 observedGeneration:
270 description: |-
271 observedGeneration represents the .metadata.generation that the condition was set based upon.
272 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
273 with respect to the current state of the instance.
274 format: int64
275 minimum: 0
276 type: integer
277 reason:
278 description: |-
279 reason contains a programmatic identifier indicating the reason for the condition's last transition.
280 Producers of specific condition types may define expected values and meanings for this field,
281 and whether the values are considered a guaranteed API.
282 The value should be a CamelCase string.
283 This field may not be empty.
284 maxLength: 1024
285 minLength: 1
286 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
287 type: string
288 status:
289 description: status of the condition, one of True, False, Unknown.
290 enum:
291 - "True"
292 - "False"
293 - Unknown
294 type: string
295 type:
296 description: |-
297 type of condition in CamelCase or in foo.example.com/CamelCase.
298 ---
299 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
300 useful (see .node.status.conditions), the ability to deconflict is important.
301 The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
302 maxLength: 316
303 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])$
304 type: string
305 required:
306 - lastTransitionTime
307 - message
308 - reason
309 - status
310 - type
311 type: object
312 type: array
313 lastHandledReconcileAt:
314 description: |-
315 LastHandledReconcileAt holds the value of the most recent
316 reconcile request value, so a change of the annotation value
317 can be detected.
318 type: string
319 observedGeneration:
320 description: |-
321 ObservedGeneration is the last observed generation of the HelmRepository
322 object.
323 format: int64
324 type: integer
325 url:
326 description: |-
327 URL is the dynamic fetch link for the latest Artifact.
328 It is provided on a "best effort" basis, and using the precise
329 HelmRepositoryStatus.Artifact data is recommended.
330 type: string
331 type: object
332 type: object
333 served: true
334 storage: true
335 subresources:
336 status: {}
337 - additionalPrinterColumns:
338 - jsonPath: .spec.url
339 name: URL
340 type: string
341 - jsonPath: .status.conditions[?(@.type=="Ready")].status
342 name: Ready
343 type: string
344 - jsonPath: .status.conditions[?(@.type=="Ready")].message
345 name: Status
346 type: string
347 - jsonPath: .metadata.creationTimestamp
348 name: Age
349 type: date
350 deprecated: true
351 deprecationWarning: v1beta1 HelmRepository is deprecated, upgrade to v1
352 name: v1beta1
353 schema:
354 openAPIV3Schema:
355 description: HelmRepository is the Schema for the helmrepositories API
356 properties:
357 apiVersion:
358 description: |-
359 APIVersion defines the versioned schema of this representation of an object.
360 Servers should convert recognized schemas to the latest internal value, and
361 may reject unrecognized values.
362 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
363 type: string
364 kind:
365 description: |-
366 Kind is a string value representing the REST resource this object represents.
367 Servers may infer this from the endpoint the client submits requests to.
368 Cannot be updated.
369 In CamelCase.
370 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
371 type: string
372 metadata:
373 type: object
374 spec:
375 description: HelmRepositorySpec defines the reference to a Helm repository.
376 properties:
377 accessFrom:
378 description: AccessFrom defines an Access Control List for allowing
379 cross-namespace references to this object.
380 properties:
381 namespaceSelectors:
382 description: |-
383 NamespaceSelectors is the list of namespace selectors to which this ACL applies.
384 Items in this list are evaluated using a logical OR operation.
385 items:
386 description: |-
387 NamespaceSelector selects the namespaces to which this ACL applies.
388 An empty map of MatchLabels matches all namespaces in a cluster.
389 properties:
390 matchLabels:
391 additionalProperties:
392 type: string
393 description: |-
394 MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
395 map is equivalent to an element of matchExpressions, whose key field is "key", the
396 operator is "In", and the values array contains only "value". The requirements are ANDed.
397 type: object
398 type: object
399 type: array
400 required:
401 - namespaceSelectors
402 type: object
403 interval:
404 description: The interval at which to check the upstream for updates.
405 type: string
406 passCredentials:
407 description: |-
408 PassCredentials allows the credentials from the SecretRef to be passed on to
409 a host that does not match the host as defined in URL.
410 This may be required if the host of the advertised chart URLs in the index
411 differ from the defined URL.
412 Enabling this should be done with caution, as it can potentially result in
413 credentials getting stolen in a MITM-attack.
414 type: boolean
415 secretRef:
416 description: |-
417 The name of the secret containing authentication credentials for the Helm
418 repository.
419 For HTTP/S basic auth the secret must contain username and
420 password fields.
421 For TLS the secret must contain a certFile and keyFile, and/or
422 caFile fields.
423 properties:
424 name:
425 description: Name of the referent.
426 type: string
427 required:
428 - name
429 type: object
430 suspend:
431 description: This flag tells the controller to suspend the reconciliation
432 of this source.
433 type: boolean
434 timeout:
435 default: 60s
436 description: The timeout of index downloading, defaults to 60s.
437 type: string
438 url:
439 description: The Helm repository URL, a valid URL contains at least
440 a protocol and host.
441 type: string
442 required:
443 - interval
444 - url
445 type: object
446 status:
447 default:
448 observedGeneration: -1
449 description: HelmRepositoryStatus defines the observed state of the HelmRepository.
450 properties:
451 artifact:
452 description: Artifact represents the output of the last successful
453 repository sync.
454 properties:
455 checksum:
456 description: Checksum is the SHA256 checksum of the artifact.
457 type: string
458 lastUpdateTime:
459 description: |-
460 LastUpdateTime is the timestamp corresponding to the last update of this
461 artifact.
462 format: date-time
463 type: string
464 path:
465 description: Path is the relative file path of this artifact.
466 type: string
467 revision:
468 description: |-
469 Revision is a human readable identifier traceable in the origin source
470 system. It can be a Git commit SHA, Git tag, a Helm index timestamp, a Helm
471 chart version, etc.
472 type: string
473 url:
474 description: URL is the HTTP address of this artifact.
475 type: string
476 required:
477 - path
478 - url
479 type: object
480 conditions:
481 description: Conditions holds the conditions for the HelmRepository.
482 items:
483 description: "Condition contains details for one aspect of the current
484 state of this API Resource.\n---\nThis struct is intended for
485 direct use as an array at the field path .status.conditions. For
486 example,\n\n\n\ttype FooStatus struct{\n\t // Represents the
487 observations of a foo's current state.\n\t // Known .status.conditions.type
488 are: \"Available\", \"Progressing\", and \"Degraded\"\n\t //
489 +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t
490 \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\"
491 patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t
492 \ // other fields\n\t}"
493 properties:
494 lastTransitionTime:
495 description: |-
496 lastTransitionTime is the last time the condition transitioned from one status to another.
497 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
498 format: date-time
499 type: string
500 message:
501 description: |-
502 message is a human readable message indicating details about the transition.
503 This may be an empty string.
504 maxLength: 32768
505 type: string
506 observedGeneration:
507 description: |-
508 observedGeneration represents the .metadata.generation that the condition was set based upon.
509 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
510 with respect to the current state of the instance.
511 format: int64
512 minimum: 0
513 type: integer
514 reason:
515 description: |-
516 reason contains a programmatic identifier indicating the reason for the condition's last transition.
517 Producers of specific condition types may define expected values and meanings for this field,
518 and whether the values are considered a guaranteed API.
519 The value should be a CamelCase string.
520 This field may not be empty.
521 maxLength: 1024
522 minLength: 1
523 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
524 type: string
525 status:
526 description: status of the condition, one of True, False, Unknown.
527 enum:
528 - "True"
529 - "False"
530 - Unknown
531 type: string
532 type:
533 description: |-
534 type of condition in CamelCase or in foo.example.com/CamelCase.
535 ---
536 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
537 useful (see .node.status.conditions), the ability to deconflict is important.
538 The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
539 maxLength: 316
540 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])$
541 type: string
542 required:
543 - lastTransitionTime
544 - message
545 - reason
546 - status
547 - type
548 type: object
549 type: array
550 lastHandledReconcileAt:
551 description: |-
552 LastHandledReconcileAt holds the value of the most recent
553 reconcile request value, so a change of the annotation value
554 can be detected.
555 type: string
556 observedGeneration:
557 description: ObservedGeneration is the last observed generation.
558 format: int64
559 type: integer
560 url:
561 description: URL is the download link for the last index fetched.
562 type: string
563 type: object
564 type: object
565 served: true
566 storage: false
567 subresources:
568 status: {}
569 - additionalPrinterColumns:
570 - jsonPath: .spec.url
571 name: URL
572 type: string
573 - jsonPath: .metadata.creationTimestamp
574 name: Age
575 type: date
576 - jsonPath: .status.conditions[?(@.type=="Ready")].status
577 name: Ready
578 type: string
579 - jsonPath: .status.conditions[?(@.type=="Ready")].message
580 name: Status
581 type: string
582 deprecated: true
583 deprecationWarning: v1beta2 HelmRepository is deprecated, upgrade to v1
584 name: v1beta2
585 schema:
586 openAPIV3Schema:
587 description: HelmRepository is the Schema for the helmrepositories API.
588 properties:
589 apiVersion:
590 description: |-
591 APIVersion defines the versioned schema of this representation of an object.
592 Servers should convert recognized schemas to the latest internal value, and
593 may reject unrecognized values.
594 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
595 type: string
596 kind:
597 description: |-
598 Kind is a string value representing the REST resource this object represents.
599 Servers may infer this from the endpoint the client submits requests to.
600 Cannot be updated.
601 In CamelCase.
602 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
603 type: string
604 metadata:
605 type: object
606 spec:
607 description: |-
608 HelmRepositorySpec specifies the required configuration to produce an
609 Artifact for a Helm repository index YAML.
610 properties:
611 accessFrom:
612 description: |-
613 AccessFrom specifies an Access Control List for allowing cross-namespace
614 references to this object.
615 NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
616 properties:
617 namespaceSelectors:
618 description: |-
619 NamespaceSelectors is the list of namespace selectors to which this ACL applies.
620 Items in this list are evaluated using a logical OR operation.
621 items:
622 description: |-
623 NamespaceSelector selects the namespaces to which this ACL applies.
624 An empty map of MatchLabels matches all namespaces in a cluster.
625 properties:
626 matchLabels:
627 additionalProperties:
628 type: string
629 description: |-
630 MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
631 map is equivalent to an element of matchExpressions, whose key field is "key", the
632 operator is "In", and the values array contains only "value". The requirements are ANDed.
633 type: object
634 type: object
635 type: array
636 required:
637 - namespaceSelectors
638 type: object
639 certSecretRef:
640 description: |-
641 CertSecretRef can be given the name of a Secret containing
642 either or both of
643
644
645 - a PEM-encoded client certificate (`tls.crt`) and private
646 key (`tls.key`);
647 - a PEM-encoded CA certificate (`ca.crt`)
648
649
650 and whichever are supplied, will be used for connecting to the
651 registry. The client cert and key are useful if you are
652 authenticating with a certificate; the CA cert is useful if
653 you are using a self-signed server certificate. The Secret must
654 be of type `Opaque` or `kubernetes.io/tls`.
655
656
657 It takes precedence over the values specified in the Secret referred
658 to by `.spec.secretRef`.
659 properties:
660 name:
661 description: Name of the referent.
662 type: string
663 required:
664 - name
665 type: object
666 insecure:
667 description: |-
668 Insecure allows connecting to a non-TLS HTTP container registry.
669 This field is only taken into account if the .spec.type field is set to 'oci'.
670 type: boolean
671 interval:
672 description: |-
673 Interval at which the HelmRepository URL is checked for updates.
674 This interval is approximate and may be subject to jitter to ensure
675 efficient use of resources.
676 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
677 type: string
678 passCredentials:
679 description: |-
680 PassCredentials allows the credentials from the SecretRef to be passed
681 on to a host that does not match the host as defined in URL.
682 This may be required if the host of the advertised chart URLs in the
683 index differ from the defined URL.
684 Enabling this should be done with caution, as it can potentially result
685 in credentials getting stolen in a MITM-attack.
686 type: boolean
687 provider:
688 default: generic
689 description: |-
690 Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
691 This field is optional, and only taken into account if the .spec.type field is set to 'oci'.
692 When not specified, defaults to 'generic'.
693 enum:
694 - generic
695 - aws
696 - azure
697 - gcp
698 type: string
699 secretRef:
700 description: |-
701 SecretRef specifies the Secret containing authentication credentials
702 for the HelmRepository.
703 For HTTP/S basic auth the secret must contain 'username' and 'password'
704 fields.
705 Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile'
706 keys is deprecated. Please use `.spec.certSecretRef` instead.
707 properties:
708 name:
709 description: Name of the referent.
710 type: string
711 required:
712 - name
713 type: object
714 suspend:
715 description: |-
716 Suspend tells the controller to suspend the reconciliation of this
717 HelmRepository.
718 type: boolean
719 timeout:
720 description: |-
721 Timeout is used for the index fetch operation for an HTTPS helm repository,
722 and for remote OCI Repository operations like pulling for an OCI helm
723 chart by the associated HelmChart.
724 Its default value is 60s.
725 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
726 type: string
727 type:
728 description: |-
729 Type of the HelmRepository.
730 When this field is set to "oci", the URL field value must be prefixed with "oci://".
731 enum:
732 - default
733 - oci
734 type: string
735 url:
736 description: |-
737 URL of the Helm repository, a valid URL contains at least a protocol and
738 host.
739 pattern: ^(http|https|oci)://.*$
740 type: string
741 required:
742 - url
743 type: object
744 status:
745 default:
746 observedGeneration: -1
747 description: HelmRepositoryStatus records the observed state of the HelmRepository.
748 properties:
749 artifact:
750 description: Artifact represents the last successful HelmRepository
751 reconciliation.
752 properties:
753 digest:
754 description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
755 pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
756 type: string
757 lastUpdateTime:
758 description: |-
759 LastUpdateTime is the timestamp corresponding to the last update of the
760 Artifact.
761 format: date-time
762 type: string
763 metadata:
764 additionalProperties:
765 type: string
766 description: Metadata holds upstream information such as OCI annotations.
767 type: object
768 path:
769 description: |-
770 Path is the relative file path of the Artifact. It can be used to locate
771 the file in the root of the Artifact storage on the local file system of
772 the controller managing the Source.
773 type: string
774 revision:
775 description: |-
776 Revision is a human-readable identifier traceable in the origin source
777 system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
778 type: string
779 size:
780 description: Size is the number of bytes in the file.
781 format: int64
782 type: integer
783 url:
784 description: |-
785 URL is the HTTP address of the Artifact as exposed by the controller
786 managing the Source. It can be used to retrieve the Artifact for
787 consumption, e.g. by another controller applying the Artifact contents.
788 type: string
789 required:
790 - lastUpdateTime
791 - path
792 - revision
793 - url
794 type: object
795 conditions:
796 description: Conditions holds the conditions for the HelmRepository.
797 items:
798 description: "Condition contains details for one aspect of the current
799 state of this API Resource.\n---\nThis struct is intended for
800 direct use as an array at the field path .status.conditions. For
801 example,\n\n\n\ttype FooStatus struct{\n\t // Represents the
802 observations of a foo's current state.\n\t // Known .status.conditions.type
803 are: \"Available\", \"Progressing\", and \"Degraded\"\n\t //
804 +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t
805 \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\"
806 patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t
807 \ // other fields\n\t}"
808 properties:
809 lastTransitionTime:
810 description: |-
811 lastTransitionTime is the last time the condition transitioned from one status to another.
812 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
813 format: date-time
814 type: string
815 message:
816 description: |-
817 message is a human readable message indicating details about the transition.
818 This may be an empty string.
819 maxLength: 32768
820 type: string
821 observedGeneration:
822 description: |-
823 observedGeneration represents the .metadata.generation that the condition was set based upon.
824 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
825 with respect to the current state of the instance.
826 format: int64
827 minimum: 0
828 type: integer
829 reason:
830 description: |-
831 reason contains a programmatic identifier indicating the reason for the condition's last transition.
832 Producers of specific condition types may define expected values and meanings for this field,
833 and whether the values are considered a guaranteed API.
834 The value should be a CamelCase string.
835 This field may not be empty.
836 maxLength: 1024
837 minLength: 1
838 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
839 type: string
840 status:
841 description: status of the condition, one of True, False, Unknown.
842 enum:
843 - "True"
844 - "False"
845 - Unknown
846 type: string
847 type:
848 description: |-
849 type of condition in CamelCase or in foo.example.com/CamelCase.
850 ---
851 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
852 useful (see .node.status.conditions), the ability to deconflict is important.
853 The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
854 maxLength: 316
855 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])$
856 type: string
857 required:
858 - lastTransitionTime
859 - message
860 - reason
861 - status
862 - type
863 type: object
864 type: array
865 lastHandledReconcileAt:
866 description: |-
867 LastHandledReconcileAt holds the value of the most recent
868 reconcile request value, so a change of the annotation value
869 can be detected.
870 type: string
871 observedGeneration:
872 description: |-
873 ObservedGeneration is the last observed generation of the HelmRepository
874 object.
875 format: int64
876 type: integer
877 url:
878 description: |-
879 URL is the dynamic fetch link for the latest Artifact.
880 It is provided on a "best effort" basis, and using the precise
881 HelmRepositoryStatus.Artifact data is recommended.
882 type: string
883 type: object
884 type: object
885 served: true
886 storage: false
887 subresources:
888 status: {}
View as plain text