@@ -70,6 +70,8 @@ type HelmReleaseSpec struct {
70
70
Chart HelmChartTemplate `json:"chart"`
71
71
72
72
// Interval at which to reconcile the Helm release.
73
+ // +kubebuilder:validation:Type=string
74
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$"
73
75
// +required
74
76
Interval metav1.Duration `json:"interval"`
75
77
@@ -120,6 +122,8 @@ type HelmReleaseSpec struct {
120
122
121
123
// Timeout is the time to wait for any individual Kubernetes operation (like Jobs
122
124
// for hooks) during the performance of a Helm action. Defaults to '5m0s'.
125
+ // +kubebuilder:validation:Type=string
126
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$"
123
127
// +optional
124
128
Timeout * metav1.Duration `json:"timeout,omitempty"`
125
129
@@ -254,6 +258,8 @@ type HelmChartTemplateSpec struct {
254
258
255
259
// Interval at which to check the v1beta2.Source for updates. Defaults to
256
260
// 'HelmReleaseSpec.Interval'.
261
+ // +kubebuilder:validation:Type=string
262
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$"
257
263
// +optional
258
264
Interval * metav1.Duration `json:"interval,omitempty"`
259
265
@@ -326,6 +332,8 @@ type Install struct {
326
332
// Timeout is the time to wait for any individual Kubernetes operation (like
327
333
// Jobs for hooks) during the performance of a Helm install action. Defaults to
328
334
// 'HelmReleaseSpec.Timeout'.
335
+ // +kubebuilder:validation:Type=string
336
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$"
329
337
// +optional
330
338
Timeout * metav1.Duration `json:"timeout,omitempty"`
331
339
@@ -502,6 +510,8 @@ type Upgrade struct {
502
510
// Timeout is the time to wait for any individual Kubernetes operation (like
503
511
// Jobs for hooks) during the performance of a Helm upgrade action. Defaults to
504
512
// 'HelmReleaseSpec.Timeout'.
513
+ // +kubebuilder:validation:Type=string
514
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$"
505
515
// +optional
506
516
Timeout * metav1.Duration `json:"timeout,omitempty"`
507
517
@@ -683,6 +693,8 @@ type Test struct {
683
693
684
694
// Timeout is the time to wait for any individual Kubernetes operation during
685
695
// the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'.
696
+ // +kubebuilder:validation:Type=string
697
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$"
686
698
// +optional
687
699
Timeout * metav1.Duration `json:"timeout,omitempty"`
688
700
@@ -708,6 +720,8 @@ type Rollback struct {
708
720
// Timeout is the time to wait for any individual Kubernetes operation (like
709
721
// Jobs for hooks) during the performance of a Helm rollback action. Defaults to
710
722
// 'HelmReleaseSpec.Timeout'.
723
+ // +kubebuilder:validation:Type=string
724
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$"
711
725
// +optional
712
726
Timeout * metav1.Duration `json:"timeout,omitempty"`
713
727
@@ -754,6 +768,8 @@ type Uninstall struct {
754
768
// Timeout is the time to wait for any individual Kubernetes operation (like
755
769
// Jobs for hooks) during the performance of a Helm uninstall action. Defaults
756
770
// to 'HelmReleaseSpec.Timeout'.
771
+ // +kubebuilder:validation:Type=string
772
+ // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$"
757
773
// +optional
758
774
Timeout * metav1.Duration `json:"timeout,omitempty"`
759
775
0 commit comments