From 29f7835531434873720471469d070aefd5164e5f Mon Sep 17 00:00:00 2001 From: sebhoss Date: Fri, 24 Nov 2023 10:00:16 +0000 Subject: [PATCH] Update upstream specifications to their latest version --- .../v1alpha1/limitadors.yaml | 2 +- .../v1beta1/vmalertmanagerconfigs.yaml | 9 + .../apps.kubeblocks.io/v1alpha1/clusters.yaml | 4 - .../argoproj.io/v1alpha1/applications.yaml | 380 ++++- .../argoproj.io/v1alpha1/applicationsets.yaml | 1495 ++++++++++++++++- .../argoproj.io/v1alpha1/appprojects.yaml | 4 +- .../v1alpha1/cachesubnetgroups.yaml | 13 +- .../v1alpha1/replicationgroups.yaml | 32 + .../integration.rock8s.com/v1beta1/plugs.yaml | 12 +- .../v1beta1/sockets.yaml | 12 +- .../v1beta1/managedclusters.yaml | 10 + .../v1alpha1/clustersecretstores.yaml | 5 + .../v1alpha1/secretstores.yaml | 5 + .../v1beta1/clustersecretstores.yaml | 5 + .../v1beta1/secretstores.yaml | 5 + .../v2beta1/helmreleases.yaml | 90 +- .../v2beta2/helmreleases.yaml | 762 +++++++++ .../v1beta2/imagerepositories.yaml | 3 + .../v1beta2/providers.yaml | 1 + .../v1beta2/helmrepositories.yaml | 8 +- .../v1beta1/grafanas.yaml | 5 + .../loki/loki.grafana.com/v1/lokistacks.yaml | 10 + .../v2/teleportprovisiontokens.yaml | 23 + .../hazelcast.com/v1alpha1/hazelcasts.yaml | 1 + .../v1alpha1/multiclusterservices.yaml | 12 +- .../kiali.io/v1alpha1/kialis.yaml | 3 + .../v1alpha1/clusteroutputs.yaml | 240 +++ .../v1alpha1/outputs.yaml | 240 +++ .../v1beta1/clusteroutputs.yaml | 240 +++ .../v1beta1/outputs.yaml | 240 +++ .../v1beta1/syslogngclusteroutputs.yaml | 72 + .../v1beta1/syslogngoutputs.yaml | 72 + .../v1/verticalpodautoscalers.yaml | 6 +- .../appprotect.f5.com/v1beta1/appolicies.yaml | 381 ++++- .../v1alpha1/featureflagconfigurations.yaml | 2 +- .../v1alpha2/featureflagconfigurations.yaml | 2 +- .../v1/controllerconfigs.yaml | 219 ++- .../v1/machineconfigpools.yaml | 1 - .../v1alpha3/clientintents.yaml | 4 + .../monitoring.coreos.com/v1/podmonitors.yaml | 3 + .../v1/servicemonitors.yaml | 3 + .../v1alpha1/scrapeconfigs.yaml | 3 + .../v1beta2/pulps.yaml | 55 +- .../kuberay/ray.io/v1/rayclusters.yaml | 402 ++++- .../kuberay/ray.io/v1/rayjobs.yaml | 590 ++++++- .../kuberay/ray.io/v1/rayservices.yaml | 423 ++++- .../kuberay/ray.io/v1alpha1/rayclusters.yaml | 402 ++++- .../kuberay/ray.io/v1alpha1/rayjobs.yaml | 590 ++++++- .../kuberay/ray.io/v1alpha1/rayservices.yaml | 423 ++++- .../v1alpha1/patterns.yaml | 4 +- .../src/argoproj_io/v1alpha1/applications.rs | 404 ++++- .../src/argoproj_io/v1alpha1/appprojects.rs | 4 +- .../v1/verticalpodautoscalers.rs | 6 +- .../v1alpha1/bindablekinds.rs | 2 +- .../src/bus_volcano_sh/v1alpha1/commands.rs | 2 +- .../src/cilium_io/v2/ciliumendpoints.rs | 2 +- .../v2alpha1/ciliumendpointslices.rs | 2 +- .../v1beta1/managedclusters.rs | 3 + .../config_grafana_com/v1/projectconfigs.rs | 2 +- ...esourceinterpreterwebhookconfigurations.rs | 2 +- .../v1alpha1/cachesubnetgroups.rs | 22 +- .../v1alpha1/replicationgroups.rs | 58 + .../v1alpha1/clustersecretstores.rs | 12 +- .../v1alpha1/secretstores.rs | 12 +- .../v1beta1/clustersecretstores.rs | 12 +- .../v1beta1/secretstores.rs | 12 +- .../v1alpha1/patterns.rs | 2 +- .../src/helm_toolkit_fluxcd_io/mod.rs | 1 + .../v2beta1/helmreleases.rs | 73 + .../v2beta2/helmreleases.rs | 745 ++++++++ .../src/helm_toolkit_fluxcd_io/v2beta2/mod.rs | 1 + .../v1beta2/imagerepositories.rs | 3 + .../integration_rock8s_com/v1beta1/plugs.rs | 14 +- .../integration_rock8s_com/v1beta1/sockets.rs | 14 +- .../v1alpha3/clientintents.rs | 3 + kube-custom-resources-rs/src/lib.rs | 4 + .../v1alpha1/limitadors.rs | 2 +- .../v1alpha1/clusteroutputs.rs | 303 ++++ .../v1alpha1/outputs.rs | 303 ++++ .../v1beta1/clusteroutputs.rs | 303 ++++ .../logging_banzaicloud_io/v1beta1/outputs.rs | 303 ++++ .../v1beta1/syslogngclusteroutputs.rs | 144 ++ .../v1beta1/syslogngoutputs.rs | 144 ++ .../src/loki_grafana_com/v1/lokistacks.rs | 10 + .../v1/controllerconfigs.rs | 102 +- .../v1/machineconfigpools.rs | 3 +- .../v1alpha1/controllerrevisions.rs | 4 +- .../monitoring_coreos_com/v1/podmonitors.rs | 4 + .../v1/servicemonitors.rs | 4 + .../v1alpha1/scrapeconfigs.rs | 3 + .../v1alpha1/gateways.rs | 2 +- .../v1alpha1/memberclusterannounces.rs | 4 +- .../v1alpha2/clusterclaims.rs | 4 +- .../v1alpha1/serviceexports.rs | 2 +- .../v1alpha1/multiclusterservices.rs | 10 +- .../v1beta2/providers.rs | 2 + .../src/pkg_crossplane_io/v1beta1/locks.rs | 2 +- .../src/ray_io/v1/rayclusters.rs | 207 +++ .../src/ray_io/v1/rayjobs.rs | 307 ++++ .../src/ray_io/v1/rayservices.rs | 221 ++- .../src/ray_io/v1alpha1/rayclusters.rs | 207 +++ .../src/ray_io/v1alpha1/rayjobs.rs | 307 ++++ .../src/ray_io/v1alpha1/rayservices.rs | 221 ++- .../v1beta2/helmrepositories.rs | 8 +- .../v1beta1/constraintpodstatuses.rs | 2 +- .../v1beta1/constrainttemplatepodstatuses.rs | 2 +- .../v1beta1/expansiontemplatepodstatuses.rs | 2 +- .../v1beta1/mutatorpodstatuses.rs | 2 +- .../v1alpha1/noderesourcetopologies.rs | 2 +- .../v1alpha1/clusterpolicyreports.rs | 2 +- .../wgpolicyk8s_io/v1alpha1/policyreports.rs | 2 +- .../v1alpha2/clusterpolicyreports.rs | 2 +- .../wgpolicyk8s_io/v1alpha2/policyreports.rs | 2 +- .../v1beta1/clusterpolicyreports.rs | 2 +- .../wgpolicyk8s_io/v1beta1/policyreports.rs | 2 +- 115 files changed, 11833 insertions(+), 270 deletions(-) create mode 100644 crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta2/helmreleases.yaml create mode 100644 kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs create mode 100644 kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/mod.rs diff --git a/crd-catalog/Kuadrant/limitador-operator/limitador.kuadrant.io/v1alpha1/limitadors.yaml b/crd-catalog/Kuadrant/limitador-operator/limitador.kuadrant.io/v1alpha1/limitadors.yaml index 0eb87c0d0..0bab127f9 100644 --- a/crd-catalog/Kuadrant/limitador-operator/limitador.kuadrant.io/v1alpha1/limitadors.yaml +++ b/crd-catalog/Kuadrant/limitador-operator/limitador.kuadrant.io/v1alpha1/limitadors.yaml @@ -691,7 +691,7 @@ spec: description: LimitadorStatus defines the observed state of Limitador properties: conditions: - description: 'Represents the observations of a foo''s current state. Known .status.conditions.type are: "Available"' + description: 'Represents the observations of a foo''s current state. Known .status.conditions.type are: "Ready"' items: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: diff --git a/crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmalertmanagerconfigs.yaml b/crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmalertmanagerconfigs.yaml index 08de5e7af..a643cf6b5 100644 --- a/crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmalertmanagerconfigs.yaml +++ b/crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmalertmanagerconfigs.yaml @@ -306,6 +306,9 @@ spec: items: description: OpsGenieConfig configures notifications via OpsGenie. See https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config properties: + actions: + description: Comma separated list of actions that will be available for the alert. + type: string apiURL: description: The URL to send OpsGenie API requests to. type: string @@ -333,6 +336,9 @@ spec: type: string description: A set of arbitrary key/value pairs that provide further detail about the incident. type: object + entity: + description: Optional field that can be used to specify which domain alert is related to. + type: string http_config: description: HTTP client configuration. type: object @@ -377,6 +383,9 @@ spec: tags: description: Comma separated list of tags attached to the notifications. type: string + update_alerts: + description: Whether to update message and description of the alert in OpsGenie if it already exists By default, the alert is never updated in OpsGenie, the new message only appears in activity log. + type: boolean type: object type: array pagerduty_configs: diff --git a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml index bc11cca4d..b541ded7b 100644 --- a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml +++ b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml @@ -613,10 +613,6 @@ spec: x-kubernetes-validations: - message: duplicated component rule: self.all(x, size(self.filter(c, c.name == x.name)) == 1) - - message: component can not be added dynamically - rule: self.all(x, oldSelf.exists(y, y.name == x.name)) - - message: component can not be removed dynamically - rule: oldSelf.all(x, self.exists(y, y.name == x.name)) connectionCredentials: description: connectionCredentials defines the credentials used to access a cluster. items: diff --git a/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applications.yaml b/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applications.yaml index e2b29256a..561896527 100644 --- a/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applications.yaml +++ b/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applications.yaml @@ -286,6 +286,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -525,6 +556,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -638,13 +700,13 @@ spec: description: Destination is a reference to the target Kubernetes server and namespace properties: name: - description: Name is an alternate way of specifying the target cluster by its symbolic name + description: Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set. type: string namespace: description: Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace type: string server: - description: Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API + description: Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set. type: string type: object ignoreDifferences: @@ -854,6 +916,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -1093,6 +1186,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -1452,6 +1576,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -1691,6 +1846,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -2036,6 +2222,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -2275,6 +2492,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -2615,6 +2863,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -2854,6 +3133,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -3020,13 +3330,13 @@ spec: description: Destination is a reference to the application's destination used for comparison properties: name: - description: Name is an alternate way of specifying the target cluster by its symbolic name + description: Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set. type: string namespace: description: Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace type: string server: - description: Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API + description: Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set. type: string type: object ignoreDifferences: @@ -3216,6 +3526,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: @@ -3455,6 +3796,37 @@ spec: namespace: description: Namespace sets the namespace that Kustomize adds to all resources type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: description: Replicas is a list of Kustomize Replicas override specifications items: diff --git a/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applicationsets.yaml b/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applicationsets.yaml index 72d23d94a..934836895 100644 --- a/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applicationsets.yaml +++ b/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applicationsets.yaml @@ -258,6 +258,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -438,6 +468,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -777,6 +837,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -957,6 +1047,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -1300,6 +1420,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -1480,6 +1630,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -1803,6 +1983,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -1983,6 +2193,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -2330,6 +2570,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -2510,6 +2780,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -2849,6 +3149,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -3029,6 +3359,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -3366,12 +3726,42 @@ spec: items: type: string type: array - namePrefix: - type: string - nameSuffix: - type: string - namespace: - type: string + namePrefix: + type: string + nameSuffix: + type: string + namespace: + type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -3552,6 +3942,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -3875,6 +4295,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -4055,6 +4505,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -4388,6 +4868,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -4568,6 +5078,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -5081,6 +5621,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -5261,6 +5831,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -5553,6 +6153,8 @@ spec: type: string group: type: string + includeSharedProjects: + type: boolean includeSubgroups: type: boolean insecure: @@ -5567,6 +6169,8 @@ spec: - key - secretName type: object + topic: + type: string required: - group type: object @@ -5765,6 +6369,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -5945,6 +6579,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -6282,6 +6946,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -6462,6 +7156,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -6803,12 +7527,42 @@ spec: items: type: string type: array - namePrefix: - type: string - nameSuffix: - type: string - namespace: - type: string + namePrefix: + type: string + nameSuffix: + type: string + namespace: + type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -6989,6 +7743,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -7328,6 +8112,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -7508,6 +8322,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -7851,6 +8695,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -8031,6 +8905,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -8354,6 +9258,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -8534,6 +9468,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -8867,6 +9831,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -9047,6 +10041,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -9560,6 +10584,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -9740,6 +10794,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -10032,6 +11116,8 @@ spec: type: string group: type: string + includeSharedProjects: + type: boolean includeSubgroups: type: boolean insecure: @@ -10046,6 +11132,8 @@ spec: - key - secretName type: object + topic: + type: string required: - group type: object @@ -10244,6 +11332,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -10424,6 +11542,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -10765,6 +11913,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -10945,6 +12123,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -11275,6 +12483,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -11455,6 +12693,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -11968,6 +13236,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -12148,6 +13446,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -12440,6 +13768,8 @@ spec: type: string group: type: string + includeSharedProjects: + type: boolean includeSubgroups: type: boolean insecure: @@ -12454,6 +13784,8 @@ spec: - key - secretName type: object + topic: + type: string required: - group type: object @@ -12652,6 +13984,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -12832,6 +14194,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -12983,12 +14375,31 @@ spec: items: type: string type: array + ignoreApplicationDifferences: + items: + properties: + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + name: + type: string + type: object + type: array preservedFields: properties: annotations: items: type: string type: array + labels: + items: + type: string + type: array type: object strategy: properties: @@ -13225,6 +14636,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: @@ -13405,6 +14846,36 @@ spec: type: string namespace: type: string + patches: + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array replicas: items: properties: diff --git a/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/appprojects.yaml b/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/appprojects.yaml index 761dac5da..f6085aabd 100644 --- a/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/appprojects.yaml +++ b/crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/appprojects.yaml @@ -70,13 +70,13 @@ spec: description: ApplicationDestination holds information about the application's destination properties: name: - description: Name is an alternate way of specifying the target cluster by its symbolic name + description: Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set. type: string namespace: description: Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace type: string server: - description: Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API + description: Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set. type: string type: object type: array diff --git a/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/cachesubnetgroups.yaml b/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/cachesubnetgroups.yaml index 1f33b43ec..e45daf82d 100644 --- a/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/cachesubnetgroups.yaml +++ b/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/cachesubnetgroups.yaml @@ -40,6 +40,18 @@ spec: items: type: string type: array + subnetRefs: + items: + description: "AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: \n from: name: my-api" + properties: + from: + description: AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + properties: + name: + type: string + type: object + type: object + type: array tags: description: A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted. items: @@ -54,7 +66,6 @@ spec: required: - cacheSubnetGroupDescription - cacheSubnetGroupName - - subnetIDs type: object status: description: CacheSubnetGroupStatus defines the observed state of CacheSubnetGroup diff --git a/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/replicationgroups.yaml b/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/replicationgroups.yaml index 558b3df16..831e42d50 100644 --- a/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/replicationgroups.yaml +++ b/crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/replicationgroups.yaml @@ -57,6 +57,16 @@ spec: cacheParameterGroupName: description: "The name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. \n If you are running Redis version 3.2.4 or later, only one node group (shard), and want to use a default parameter group, we recommend that you specify the parameter group by name. \n * To create a Redis (cluster mode disabled) replication group, use CacheParameterGroupName=default.redis3.2. \n * To create a Redis (cluster mode enabled) replication group, use CacheParameterGroupName=default.redis3.2.cluster.on." type: string + cacheParameterGroupRef: + description: "AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: \n from: name: my-api" + properties: + from: + description: AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + properties: + name: + type: string + type: object + type: object cacheSecurityGroupNames: description: A list of cache security group names to associate with this replication group. items: @@ -65,6 +75,16 @@ spec: cacheSubnetGroupName: description: "The name of the cache subnet group to be used for the replication group. \n If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SubnetGroups.html)." type: string + cacheSubnetGroupRef: + description: "AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: \n from: name: my-api" + properties: + from: + description: AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + properties: + name: + type: string + type: object + type: object dataTieringEnabled: description: Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when using r6gd nodes. For more information, see Data tiering (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/data-tiering.html). type: boolean @@ -174,6 +194,18 @@ spec: items: type: string type: array + securityGroupRefs: + items: + description: "AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: \n from: name: my-api" + properties: + from: + description: AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + properties: + name: + type: string + type: object + type: object + type: array snapshotARNs: description: "A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new replication group. The Amazon S3 object name in the ARN cannot contain any commas. The new replication group will have the number of node groups (console: shards) specified by the parameter NumNodeGroups or the number of node groups configured by NodeGroupConfiguration regardless of the number of ARNs specified here. \n Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb" items: diff --git a/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/plugs.yaml b/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/plugs.yaml index 6fee1d171..395c50aa5 100644 --- a/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/plugs.yaml +++ b/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/plugs.yaml @@ -961,10 +961,12 @@ spec: type: string namespace: type: string + templateName: + type: string + templateNamespace: + type: string version: type: string - required: - - name type: object required: - name @@ -1013,10 +1015,12 @@ spec: type: string namespace: type: string + templateName: + type: string + templateNamespace: + type: string version: type: string - required: - - name type: object required: - name diff --git a/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/sockets.yaml b/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/sockets.yaml index bab939666..e8658c713 100644 --- a/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/sockets.yaml +++ b/crd-catalog/clayrisser/integration-operator/integration.rock8s.com/v1beta1/sockets.yaml @@ -1025,10 +1025,12 @@ spec: type: string namespace: type: string + templateName: + type: string + templateNamespace: + type: string version: type: string - required: - - name type: object required: - name @@ -1079,10 +1081,12 @@ spec: type: string namespace: type: string + templateName: + type: string + templateNamespace: + type: string version: type: string - required: - - name type: object required: - name diff --git a/crd-catalog/clusternet/clusternet/clusters.clusternet.io/v1beta1/managedclusters.yaml b/crd-catalog/clusternet/clusternet/clusters.clusternet.io/v1beta1/managedclusters.yaml index 0aa615cfe..349915bf9 100644 --- a/crd-catalog/clusternet/clusternet/clusters.clusternet.io/v1beta1/managedclusters.yaml +++ b/crd-catalog/clusternet/clusternet/clusters.clusternet.io/v1beta1/managedclusters.yaml @@ -60,6 +60,13 @@ spec: description: ClusterID, a Random (Version 4) UUID, is a unique value in time and space value representing for child cluster. It is typically generated by the clusternet agent on the successful creation of a "clusternet-agent" Lease in the child cluster. Also it is not allowed to change on PUT operations. pattern: '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}' type: string + clusterInitBaseName: + description: ClusterInitBaseName denotes the name of a Base used for initialization. Also a taint "clusters.clusternet.io/initialization:NoSchedule" will be added during the operation and removed after successful initialization. If this cluster has got an annotation "clusters.clusternet.io/skip-cluster-init", this field will be empty. Normally this field is fully managed by clusternet-controller-manager and immutable. + maxLength: 512 + type: string + x-kubernetes-validations: + - message: clusterInitBaseName is immutable + rule: self == oldSelf clusterType: description: ClusterType denotes the type of the child cluster. type: string @@ -97,6 +104,9 @@ spec: - clusterId - syncMode type: object + x-kubernetes-validations: + - message: clusterInitSubName is required once set + rule: '!has(oldSelf.clusterInitSubName) || has(self.clusterInitSubName)' status: description: ManagedClusterStatus defines the observed state of ManagedCluster properties: diff --git a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/clustersecretstores.yaml b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/clustersecretstores.yaml index 4cc365af8..d79e5af49 100644 --- a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/clustersecretstores.yaml +++ b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/clustersecretstores.yaml @@ -704,6 +704,11 @@ spec: type: string principalType: description: The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. + enum: + - '' + - UserPrincipal + - InstancePrincipal + - Workload type: string region: description: Region is the region where vault is located. diff --git a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/secretstores.yaml b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/secretstores.yaml index 96e0ce4fc..bab541571 100644 --- a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/secretstores.yaml +++ b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/secretstores.yaml @@ -704,6 +704,11 @@ spec: type: string principalType: description: The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. + enum: + - '' + - UserPrincipal + - InstancePrincipal + - Workload type: string region: description: Region is the region where vault is located. diff --git a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/clustersecretstores.yaml b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/clustersecretstores.yaml index 4bd1dafae..43425e9c2 100644 --- a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/clustersecretstores.yaml +++ b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/clustersecretstores.yaml @@ -1119,6 +1119,11 @@ spec: type: string principalType: description: The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. + enum: + - '' + - UserPrincipal + - InstancePrincipal + - Workload type: string region: description: Region is the region where vault is located. diff --git a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/secretstores.yaml b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/secretstores.yaml index 4e5c0e620..e5c8d805e 100644 --- a/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/secretstores.yaml +++ b/crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/secretstores.yaml @@ -1119,6 +1119,11 @@ spec: type: string principalType: description: The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. + enum: + - '' + - UserPrincipal + - InstancePrincipal + - Workload type: string region: description: Region is the region where vault is located. diff --git a/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta1/helmreleases.yaml b/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta1/helmreleases.yaml index 87792e5bc..95d2a64e1 100644 --- a/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta1/helmreleases.yaml +++ b/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta1/helmreleases.yaml @@ -613,6 +613,81 @@ spec: helmChart: description: HelmChart is the namespaced name of the HelmChart resource created by the controller for the HelmRelease. type: string + history: + description: "History holds the history of Helm releases performed for this HelmRelease up to the last successfully completed release. \n Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases." + items: + description: Snapshot captures a point-in-time copy of the status information for a Helm release, as managed by the controller. + properties: + apiVersion: + description: 'APIVersion is the API version of the Snapshot. Provisional: when the calculation method of the Digest field is changed, this field will be used to distinguish between the old and new methods.' + type: string + chartName: + description: ChartName is the chart name of the release object in storage. + type: string + chartVersion: + description: ChartVersion is the chart version of the release object in storage. + type: string + configDigest: + description: ConfigDigest is the checksum of the config (better known as "values") of the release object in storage. It has the format of `:`. + type: string + deleted: + description: Deleted is when the release was deleted. + format: date-time + type: string + digest: + description: Digest is the checksum of the release object in storage. It has the format of `:`. + type: string + firstDeployed: + description: FirstDeployed is when the release was first deployed. + format: date-time + type: string + lastDeployed: + description: LastDeployed is when the release was last deployed. + format: date-time + type: string + name: + description: Name is the name of the release. + type: string + namespace: + description: Namespace is the namespace the release is deployed to. + type: string + status: + description: Status is the current state of the release. + type: string + testHooks: + additionalProperties: + description: TestHookStatus holds the status information for a test hook as observed to be run by the controller. + properties: + lastCompleted: + description: LastCompleted is the time the test hook last completed. + format: date-time + type: string + lastStarted: + description: LastStarted is the time the test hook was last started. + format: date-time + type: string + phase: + description: Phase the test hook was observed to be in. + type: string + type: object + description: TestHooks is the list of test hooks for the release as observed to be run by the controller. + type: object + version: + description: Version is the version of the release object in storage. + type: integer + required: + - chartName + - chartVersion + - configDigest + - digest + - firstDeployed + - lastDeployed + - name + - namespace + - status + - version + type: object + type: array installFailures: description: InstallFailures is the install failure count against the latest desired state. It is reset after a successful reconciliation. format: int64 @@ -620,6 +695,16 @@ spec: lastAppliedRevision: description: LastAppliedRevision is the revision of the last successfully applied source. type: string + lastAttemptedConfigDigest: + description: "LastAttemptedConfigDigest is the digest for the config (better known as \"values\") of the last reconciliation attempt. \n Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases." + type: string + lastAttemptedGeneration: + description: "LastAttemptedGeneration is the last generation the controller attempted to reconcile. \n Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases." + format: int64 + type: integer + lastAttemptedReleaseAction: + description: "LastAttemptedReleaseAction is the last release action performed for this HelmRelease. It is used to determine the active remediation strategy. \n Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases." + type: string lastAttemptedRevision: description: LastAttemptedRevision is the revision of the last reconciliation attempt. type: string @@ -636,6 +721,9 @@ spec: description: ObservedGeneration is the last observed generation. format: int64 type: integer + storageNamespace: + description: "StorageNamespace is the namespace of the Helm release storage for the current release. \n Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases." + type: string upgradeFailures: description: UpgradeFailures is the upgrade failure count against the latest desired state. It is reset after a successful reconciliation. format: int64 @@ -643,6 +731,6 @@ spec: type: object type: object served: true - storage: true + storage: false subresources: status: {} diff --git a/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta2/helmreleases.yaml b/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta2/helmreleases.yaml new file mode 100644 index 000000000..ddffeccc2 --- /dev/null +++ b/crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta2/helmreleases.yaml @@ -0,0 +1,762 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.12.0 + name: helmreleases.helm.toolkit.fluxcd.io +spec: + group: helm.toolkit.fluxcd.io + names: + kind: HelmRelease + listKind: HelmReleaseList + plural: helmreleases + shortNames: + - hr + singular: helmrelease + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].message + name: Status + type: string + name: v2beta2 + schema: + openAPIV3Schema: + description: HelmRelease is the Schema for the helmreleases API + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: HelmReleaseSpec defines the desired state of a Helm release. + properties: + chart: + description: Chart defines the template of the v1beta2.HelmChart that should be created for this HelmRelease. + properties: + metadata: + description: ObjectMeta holds the template for metadata like labels and annotations. + properties: + annotations: + additionalProperties: + type: string + description: 'Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/' + type: object + labels: + additionalProperties: + type: string + description: 'Map of string keys and values that can be used to organize and categorize (scope and select) objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/' + type: object + type: object + spec: + description: Spec holds the template for the v1beta2.HelmChartSpec for this HelmRelease. + properties: + chart: + description: The name or path the Helm chart is available at in the SourceRef. + maxLength: 2048 + minLength: 1 + type: string + interval: + description: Interval at which to check the v1.Source for updates. Defaults to 'HelmReleaseSpec.Interval'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + reconcileStrategy: + default: ChartVersion + description: Determines what enables the creation of a new artifact. Valid values are ('ChartVersion', 'Revision'). See the documentation of the values for an explanation on their behavior. Defaults to ChartVersion when omitted. + enum: + - ChartVersion + - Revision + type: string + sourceRef: + description: The name and namespace of the v1.Source the chart is available at. + properties: + apiVersion: + description: APIVersion of the referent. + type: string + kind: + description: Kind of the referent. + enum: + - HelmRepository + - GitRepository + - Bucket + type: string + name: + description: Name of the referent. + maxLength: 253 + minLength: 1 + type: string + namespace: + description: Namespace of the referent. + maxLength: 63 + minLength: 1 + type: string + required: + - name + type: object + valuesFile: + description: Alternative values file to use as the default chart values, expected to be a relative path in the SourceRef. Deprecated in favor of ValuesFiles, for backwards compatibility the file defined here is merged before the ValuesFiles items. Ignored when omitted. + type: string + valuesFiles: + description: Alternative list of values files to use as the chart values (values.yaml is not included by default), expected to be a relative path in the SourceRef. Values files are merged in the order of this list with the last file overriding the first. Ignored when omitted. + items: + type: string + type: array + verify: + description: Verify contains the secret name containing the trusted public keys used to verify the signature and specifies which provider to use to check whether OCI image is authentic. This field is only supported for OCI sources. Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. + properties: + provider: + default: cosign + description: Provider specifies the technology used to sign the OCI Helm chart. + enum: + - cosign + type: string + secretRef: + description: SecretRef specifies the Kubernetes Secret containing the trusted public keys. + properties: + name: + description: Name of the referent. + type: string + required: + - name + type: object + required: + - provider + type: object + version: + default: '*' + description: Version semver expression, ignored for charts from v1beta2.GitRepository and v1beta2.Bucket sources. Defaults to latest when omitted. + type: string + required: + - chart + - sourceRef + type: object + required: + - spec + type: object + dependsOn: + description: DependsOn may contain a meta.NamespacedObjectReference slice with references to HelmRelease resources that must be ready before this HelmRelease can be reconciled. + items: + description: NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any namespace. + properties: + name: + description: Name of the referent. + type: string + namespace: + description: Namespace of the referent, when not specified it acts as LocalObjectReference. + type: string + required: + - name + type: object + type: array + install: + description: Install holds the configuration for Helm install actions for this HelmRelease. + properties: + crds: + description: "CRDs upgrade CRDs from the Helm Chart's crds directory according to the CRD upgrade policy provided here. Valid values are `Skip`, `Create` or `CreateReplace`. Default is `Create` and if omitted CRDs are installed but not updated. \n Skip: do neither install nor replace (update) any CRDs. \n Create: new CRDs are created, existing CRDs are neither updated nor deleted. \n CreateReplace: new CRDs are created, existing CRDs are updated (replaced) but not deleted. \n By default, CRDs are applied (installed) during Helm install action. With this option users can opt in to CRD replace existing CRDs on Helm install actions, which is not (yet) natively supported by Helm. https://helm.sh/docs/chart_best_practices/custom_resource_definitions." + enum: + - Skip + - Create + - CreateReplace + type: string + createNamespace: + description: CreateNamespace tells the Helm install action to create the HelmReleaseSpec.TargetNamespace if it does not exist yet. On uninstall, the namespace will not be garbage collected. + type: boolean + disableHooks: + description: DisableHooks prevents hooks from running during the Helm install action. + type: boolean + disableOpenAPIValidation: + description: DisableOpenAPIValidation prevents the Helm install action from validating rendered templates against the Kubernetes OpenAPI Schema. + type: boolean + disableWait: + description: DisableWait disables the waiting for resources to be ready after a Helm install has been performed. + type: boolean + disableWaitForJobs: + description: DisableWaitForJobs disables waiting for jobs to complete after a Helm install has been performed. + type: boolean + remediation: + description: Remediation holds the remediation configuration for when the Helm install action for the HelmRelease fails. The default is to not perform any action. + properties: + ignoreTestFailures: + description: IgnoreTestFailures tells the controller to skip remediation when the Helm tests are run after an install action but fail. Defaults to 'Test.IgnoreFailures'. + type: boolean + remediateLastFailure: + description: RemediateLastFailure tells the controller to remediate the last failure, when no retries remain. Defaults to 'false'. + type: boolean + retries: + description: Retries is the number of retries that should be attempted on failures before bailing. Remediation, using an uninstall, is performed between each attempt. Defaults to '0', a negative integer equals to unlimited retries. + type: integer + type: object + replace: + description: Replace tells the Helm install action to re-use the 'ReleaseName', but only if that name is a deleted release which remains in the history. + type: boolean + skipCRDs: + description: "SkipCRDs tells the Helm install action to not install any CRDs. By default, CRDs are installed if not already present. \n Deprecated use CRD policy (`crds`) attribute with value `Skip` instead." + type: boolean + timeout: + description: Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm install action. Defaults to 'HelmReleaseSpec.Timeout'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + type: object + interval: + description: Interval at which to reconcile the Helm release. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + kubeConfig: + description: KubeConfig for reconciling the HelmRelease on a remote cluster. When used in combination with HelmReleaseSpec.ServiceAccountName, forces the controller to act on behalf of that Service Account at the target cluster. If the --default-service-account flag is set, its value will be used as a controller level fallback for when HelmReleaseSpec.ServiceAccountName is empty. + properties: + secretRef: + description: SecretRef holds the name of a secret that contains a key with the kubeconfig file as the value. If no key is set, the key will default to 'value'. It is recommended that the kubeconfig is self-contained, and the secret is regularly updated if credentials such as a cloud-access-token expire. Cloud specific `cmd-path` auth helpers will not function without adding binaries and credentials to the Pod that is responsible for reconciling Kubernetes resources. + properties: + key: + description: Key in the Secret, when not specified an implementation-specific default key is used. + type: string + name: + description: Name of the Secret. + type: string + required: + - name + type: object + required: + - secretRef + type: object + maxHistory: + description: MaxHistory is the number of revisions saved by Helm for this HelmRelease. Use '0' for an unlimited number of revisions; defaults to '5'. + type: integer + persistentClient: + description: "PersistentClient tells the controller to use a persistent Kubernetes client for this release. When enabled, the client will be reused for the duration of the reconciliation, instead of being created and destroyed for each (step of a) Helm action. \n This can improve performance, but may cause issues with some Helm charts that for example do create Custom Resource Definitions during installation outside Helm's CRD lifecycle hooks, which are then not observed to be available by e.g. post-install hooks. \n If not set, it defaults to true." + type: boolean + postRenderers: + description: PostRenderers holds an array of Helm PostRenderers, which will be applied in order of their definition. + items: + description: PostRenderer contains a Helm PostRenderer specification. + properties: + kustomize: + description: Kustomization to apply as PostRenderer. + properties: + images: + description: Images is a list of (image name, new name, new tag or digest) for changing image names, tags or digests. This can also be achieved with a patch, but this operator is simpler to specify. + items: + description: Image contains an image name, a new name, a new tag or digest, which will replace the original name and tag. + properties: + digest: + description: Digest is the value used to replace the original image tag. If digest is present NewTag value is ignored. + type: string + name: + description: Name is a tag-less image name. + type: string + newName: + description: NewName is the value used to replace the original name. + type: string + newTag: + description: NewTag is the value used to replace the original tag. + type: string + required: + - name + type: object + type: array + patches: + description: Strategic merge and JSON patches, defined as inline YAML objects, capable of targeting objects based on kind, label and annotation selectors. + items: + description: Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should be applied to. + properties: + patch: + description: Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with an array of operation objects. + type: string + target: + description: Target points to the resources that the patch document should be applied to. + properties: + annotationSelector: + description: AnnotationSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource annotations. + type: string + group: + description: Group is the API group to select resources from. Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + type: string + kind: + description: Kind of the API Group to select resources from. Together with Group and Version it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + type: string + labelSelector: + description: LabelSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource labels. + type: string + name: + description: Name to match resources with. + type: string + namespace: + description: Namespace to select resources from. + type: string + version: + description: Version of the API Group to select resources from. Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + type: string + type: object + required: + - patch + type: object + type: array + patchesJson6902: + description: JSON 6902 patches, defined as inline YAML objects. + items: + description: JSON6902Patch contains a JSON6902 patch and the target the patch should be applied to. + properties: + patch: + description: Patch contains the JSON6902 patch document with an array of operation objects. + items: + description: JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4 + properties: + from: + description: From contains a JSON-pointer value that references a location within the target document where the operation is performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. + type: string + op: + description: Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4 + enum: + - test + - remove + - add + - replace + - move + - copy + type: string + path: + description: Path contains the JSON-pointer value that references a location within the target document where the operation is performed. The meaning of the value depends on the value of Op. + type: string + value: + description: Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. + x-kubernetes-preserve-unknown-fields: true + required: + - op + - path + type: object + type: array + target: + description: Target points to the resources that the patch document should be applied to. + properties: + annotationSelector: + description: AnnotationSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource annotations. + type: string + group: + description: Group is the API group to select resources from. Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + type: string + kind: + description: Kind of the API Group to select resources from. Together with Group and Version it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + type: string + labelSelector: + description: LabelSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource labels. + type: string + name: + description: Name to match resources with. + type: string + namespace: + description: Namespace to select resources from. + type: string + version: + description: Version of the API Group to select resources from. Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + type: string + type: object + required: + - patch + - target + type: object + type: array + patchesStrategicMerge: + description: Strategic merge patches, defined as inline YAML objects. + items: + x-kubernetes-preserve-unknown-fields: true + type: array + type: object + type: object + type: array + releaseName: + description: ReleaseName used for the Helm release. Defaults to a composition of '[TargetNamespace-]Name'. + maxLength: 53 + minLength: 1 + type: string + rollback: + description: Rollback holds the configuration for Helm rollback actions for this HelmRelease. + properties: + cleanupOnFail: + description: CleanupOnFail allows deletion of new resources created during the Helm rollback action when it fails. + type: boolean + disableHooks: + description: DisableHooks prevents hooks from running during the Helm rollback action. + type: boolean + disableWait: + description: DisableWait disables the waiting for resources to be ready after a Helm rollback has been performed. + type: boolean + disableWaitForJobs: + description: DisableWaitForJobs disables waiting for jobs to complete after a Helm rollback has been performed. + type: boolean + force: + description: Force forces resource updates through a replacement strategy. + type: boolean + recreate: + description: Recreate performs pod restarts for the resource if applicable. + type: boolean + timeout: + description: Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm rollback action. Defaults to 'HelmReleaseSpec.Timeout'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + type: object + serviceAccountName: + description: The name of the Kubernetes service account to impersonate when reconciling this HelmRelease. + maxLength: 253 + minLength: 1 + type: string + storageNamespace: + description: StorageNamespace used for the Helm storage. Defaults to the namespace of the HelmRelease. + maxLength: 63 + minLength: 1 + type: string + suspend: + description: Suspend tells the controller to suspend reconciliation for this HelmRelease, it does not apply to already started reconciliations. Defaults to false. + type: boolean + targetNamespace: + description: TargetNamespace to target when performing operations for the HelmRelease. Defaults to the namespace of the HelmRelease. + maxLength: 63 + minLength: 1 + type: string + test: + description: Test holds the configuration for Helm test actions for this HelmRelease. + properties: + enable: + description: Enable enables Helm test actions for this HelmRelease after an Helm install or upgrade action has been performed. + type: boolean + filters: + description: Filters is a list of tests to run or exclude from running. + items: + description: Filter holds the configuration for individual Helm test filters. + properties: + exclude: + description: Exclude specifies whether the named test should be excluded. + type: boolean + name: + description: Name is the name of the test. + maxLength: 253 + minLength: 1 + type: string + required: + - name + type: object + type: array + ignoreFailures: + description: IgnoreFailures tells the controller to skip remediation when the Helm tests are run but fail. Can be overwritten for tests run after install or upgrade actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. + type: boolean + timeout: + description: Timeout is the time to wait for any individual Kubernetes operation during the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + type: object + timeout: + description: Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm action. Defaults to '5m0s'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + uninstall: + description: Uninstall holds the configuration for Helm uninstall actions for this HelmRelease. + properties: + deletionPropagation: + default: background + description: DeletionPropagation specifies the deletion propagation policy when a Helm uninstall is performed. + enum: + - background + - foreground + - orphan + type: string + disableHooks: + description: DisableHooks prevents hooks from running during the Helm rollback action. + type: boolean + disableWait: + description: DisableWait disables waiting for all the resources to be deleted after a Helm uninstall is performed. + type: boolean + keepHistory: + description: KeepHistory tells Helm to remove all associated resources and mark the release as deleted, but retain the release history. + type: boolean + timeout: + description: Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm uninstall action. Defaults to 'HelmReleaseSpec.Timeout'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + type: object + upgrade: + description: Upgrade holds the configuration for Helm upgrade actions for this HelmRelease. + properties: + cleanupOnFail: + description: CleanupOnFail allows deletion of new resources created during the Helm upgrade action when it fails. + type: boolean + crds: + description: "CRDs upgrade CRDs from the Helm Chart's crds directory according to the CRD upgrade policy provided here. Valid values are `Skip`, `Create` or `CreateReplace`. Default is `Skip` and if omitted CRDs are neither installed nor upgraded. \n Skip: do neither install nor replace (update) any CRDs. \n Create: new CRDs are created, existing CRDs are neither updated nor deleted. \n CreateReplace: new CRDs are created, existing CRDs are updated (replaced) but not deleted. \n By default, CRDs are not applied during Helm upgrade action. With this option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. https://helm.sh/docs/chart_best_practices/custom_resource_definitions." + enum: + - Skip + - Create + - CreateReplace + type: string + disableHooks: + description: DisableHooks prevents hooks from running during the Helm upgrade action. + type: boolean + disableOpenAPIValidation: + description: DisableOpenAPIValidation prevents the Helm upgrade action from validating rendered templates against the Kubernetes OpenAPI Schema. + type: boolean + disableWait: + description: DisableWait disables the waiting for resources to be ready after a Helm upgrade has been performed. + type: boolean + disableWaitForJobs: + description: DisableWaitForJobs disables waiting for jobs to complete after a Helm upgrade has been performed. + type: boolean + force: + description: Force forces resource updates through a replacement strategy. + type: boolean + preserveValues: + description: PreserveValues will make Helm reuse the last release's values and merge in overrides from 'Values'. Setting this flag makes the HelmRelease non-declarative. + type: boolean + remediation: + description: Remediation holds the remediation configuration for when the Helm upgrade action for the HelmRelease fails. The default is to not perform any action. + properties: + ignoreTestFailures: + description: IgnoreTestFailures tells the controller to skip remediation when the Helm tests are run after an upgrade action but fail. Defaults to 'Test.IgnoreFailures'. + type: boolean + remediateLastFailure: + description: RemediateLastFailure tells the controller to remediate the last failure, when no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. + type: boolean + retries: + description: Retries is the number of retries that should be attempted on failures before bailing. Remediation, using 'Strategy', is performed between each attempt. Defaults to '0', a negative integer equals to unlimited retries. + type: integer + strategy: + description: Strategy to use for failure remediation. Defaults to 'rollback'. + enum: + - rollback + - uninstall + type: string + type: object + timeout: + description: Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 'HelmReleaseSpec.Timeout'. + pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ + type: string + type: object + values: + description: Values holds the values for this Helm release. + x-kubernetes-preserve-unknown-fields: true + valuesFrom: + description: ValuesFrom holds references to resources containing Helm values for this HelmRelease, and information about how they should be merged. + items: + description: ValuesReference contains a reference to a resource containing Helm values, and optionally the key they can be found at. + properties: + kind: + description: Kind of the values referent, valid values are ('Secret', 'ConfigMap'). + enum: + - Secret + - ConfigMap + type: string + name: + description: Name of the values referent. Should reside in the same namespace as the referring resource. + maxLength: 253 + minLength: 1 + type: string + optional: + description: Optional marks this ValuesReference as optional. When set, a not found error for the values reference is ignored, but any ValuesKey, TargetPath or transient error will still result in a reconciliation failure. + type: boolean + targetPath: + description: TargetPath is the YAML dot notation path the value should be merged at. When set, the ValuesKey is expected to be a single flat value. Defaults to 'None', which results in the values getting merged at the root. + maxLength: 250 + pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$ + type: string + valuesKey: + description: ValuesKey is the data key where the values.yaml or a specific value can be found at. Defaults to 'values.yaml'. + maxLength: 253 + pattern: ^[\-._a-zA-Z0-9]+$ + type: string + required: + - kind + - name + type: object + type: array + required: + - chart + - interval + type: object + status: + default: + observedGeneration: -1 + description: HelmReleaseStatus defines the observed state of a HelmRelease. + properties: + conditions: + description: Conditions holds the conditions for the HelmRelease. + items: + description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + properties: + lastTransitionTime: + description: lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: message is a human readable message indicating details about the transition. This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. + format: int64 + minimum: 0.0 + type: integer + reason: + description: reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - 'True' + - 'False' + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + maxLength: 316 + 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])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + failures: + description: Failures is the reconciliation failure count against the latest desired state. It is reset after a successful reconciliation. + format: int64 + type: integer + helmChart: + description: HelmChart is the namespaced name of the HelmChart resource created by the controller for the HelmRelease. + type: string + history: + description: History holds the history of Helm releases performed for this HelmRelease up to the last successfully completed release. + items: + description: Snapshot captures a point-in-time copy of the status information for a Helm release, as managed by the controller. + properties: + apiVersion: + description: 'APIVersion is the API version of the Snapshot. Provisional: when the calculation method of the Digest field is changed, this field will be used to distinguish between the old and new methods.' + type: string + chartName: + description: ChartName is the chart name of the release object in storage. + type: string + chartVersion: + description: ChartVersion is the chart version of the release object in storage. + type: string + configDigest: + description: ConfigDigest is the checksum of the config (better known as "values") of the release object in storage. It has the format of `:`. + type: string + deleted: + description: Deleted is when the release was deleted. + format: date-time + type: string + digest: + description: Digest is the checksum of the release object in storage. It has the format of `:`. + type: string + firstDeployed: + description: FirstDeployed is when the release was first deployed. + format: date-time + type: string + lastDeployed: + description: LastDeployed is when the release was last deployed. + format: date-time + type: string + name: + description: Name is the name of the release. + type: string + namespace: + description: Namespace is the namespace the release is deployed to. + type: string + status: + description: Status is the current state of the release. + type: string + testHooks: + additionalProperties: + description: TestHookStatus holds the status information for a test hook as observed to be run by the controller. + properties: + lastCompleted: + description: LastCompleted is the time the test hook last completed. + format: date-time + type: string + lastStarted: + description: LastStarted is the time the test hook was last started. + format: date-time + type: string + phase: + description: Phase the test hook was observed to be in. + type: string + type: object + description: TestHooks is the list of test hooks for the release as observed to be run by the controller. + type: object + version: + description: Version is the version of the release object in storage. + type: integer + required: + - chartName + - chartVersion + - configDigest + - digest + - firstDeployed + - lastDeployed + - name + - namespace + - status + - version + type: object + type: array + installFailures: + description: InstallFailures is the install failure count against the latest desired state. It is reset after a successful reconciliation. + format: int64 + type: integer + lastAppliedRevision: + description: 'LastAppliedRevision is the revision of the last successfully applied source. Deprecated: the revision can now be found in the History.' + type: string + lastAttemptedConfigDigest: + description: LastAttemptedConfigDigest is the digest for the config (better known as "values") of the last reconciliation attempt. + type: string + lastAttemptedGeneration: + description: LastAttemptedGeneration is the last generation the controller attempted to reconcile. + format: int64 + type: integer + lastAttemptedReleaseAction: + description: LastAttemptedReleaseAction is the last release action performed for this HelmRelease. It is used to determine the active remediation strategy. + enum: + - install + - upgrade + type: string + lastAttemptedRevision: + description: LastAttemptedRevision is the Source revision of the last reconciliation attempt. + type: string + lastAttemptedValuesChecksum: + description: 'LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last reconciliation attempt. Deprecated: Use LastAttemptedConfigDigest instead.' + type: string + lastHandledReconcileAt: + description: LastHandledReconcileAt holds the value of the most recent reconcile request value, so a change of the annotation value can be detected. + type: string + lastReleaseRevision: + description: 'LastReleaseRevision is the revision of the last successful Helm release. Deprecated: Use History instead.' + type: integer + observedGeneration: + description: ObservedGeneration is the last observed generation. + format: int64 + type: integer + storageNamespace: + description: StorageNamespace is the namespace of the Helm release storage for the current release. + maxLength: 63 + minLength: 1 + type: string + upgradeFailures: + description: UpgradeFailures is the upgrade failure count against the latest desired state. It is reset after a successful reconciliation. + format: int64 + type: integer + type: object + type: object + served: true + storage: true + subresources: + status: {} diff --git a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml index 09f982c85..7866fb7ef 100644 --- a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml +++ b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml @@ -74,6 +74,9 @@ spec: image: description: Image is the name of the image repository type: string + insecure: + description: Insecure allows connecting to a non-TLS HTTP container registry. + type: boolean interval: description: Interval is the length of time to wait between scans of the image repository. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml index f491cd32e..a4e703f15 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml @@ -93,6 +93,7 @@ spec: - github - gitlab - gitea + - bitbucketserver - bitbucket - azuredevops - googlechat diff --git a/crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/helmrepositories.yaml b/crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/helmrepositories.yaml index d535ef332..a24766f53 100644 --- a/crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/helmrepositories.yaml +++ b/crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/helmrepositories.yaml @@ -71,6 +71,9 @@ spec: required: - name type: object + insecure: + description: Insecure allows connecting to a non-TLS HTTP container registry. This field is only taken into account if the .spec.type field is set to 'oci'. + type: boolean interval: description: Interval at which the HelmRepository URL is checked for updates. This interval is approximate and may be subject to jitter to ensure efficient use of resources. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$ @@ -100,8 +103,7 @@ spec: description: Suspend tells the controller to suspend the reconciliation of this HelmRepository. type: boolean timeout: - default: 60s - description: Timeout is used for the index fetch operation for an HTTPS helm repository, and for remote OCI Repository operations like pulling for an OCI helm repository. Its default value is 60s. + description: Timeout is used for the index fetch operation for an HTTPS helm repository, and for remote OCI Repository operations like pulling for an OCI helm chart by the associated HelmChart. Its default value is 60s. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$ type: string type: @@ -112,9 +114,9 @@ spec: type: string url: description: URL of the Helm repository, a valid URL contains at least a protocol and host. + pattern: ^(http|https|oci)://.*$ type: string required: - - interval - url type: object status: diff --git a/crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanas.yaml b/crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanas.yaml index 4fb2b6d4a..d42dda1fd 100644 --- a/crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanas.yaml +++ b/crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanas.yaml @@ -3628,6 +3628,11 @@ spec: type: string type: object type: object + preferences: + properties: + homeDashboardUid: + type: string + type: object route: properties: metadata: diff --git a/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml b/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml index 9aec04642..25ae3d807 100644 --- a/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml +++ b/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml @@ -93,6 +93,10 @@ spec: description: MaxLineSize defines the maximum line size on ingestion path. Units in Bytes. format: int32 type: integer + perStreamDesiredRate: + description: PerStreamDesiredRate defines the desired ingestion rate per second that LokiStack should target applying automatic stream sharding. Units MB. + format: int32 + type: integer perStreamRateLimit: description: PerStreamRateLimit defines the maximum byte rate per second per stream. Units MB. format: int32 @@ -194,6 +198,10 @@ spec: description: MaxLineSize defines the maximum line size on ingestion path. Units in Bytes. format: int32 type: integer + perStreamDesiredRate: + description: PerStreamDesiredRate defines the desired ingestion rate per second that LokiStack should target applying automatic stream sharding. Units MB. + format: int32 + type: integer perStreamRateLimit: description: PerStreamRateLimit defines the maximum byte rate per second per stream. Units MB. format: int32 @@ -413,6 +421,7 @@ spec: enum: - v11 - v12 + - v13 type: string required: - effectiveDate @@ -2437,6 +2446,7 @@ spec: enum: - v11 - v12 + - v13 type: string required: - effectiveDate diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml index 0075dd9e3..abd7a47d4 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml @@ -234,6 +234,29 @@ spec: type: string nullable: true type: array + spacelift: + description: Spacelift allows the configuration of options specific to the "spacelift" join method. + nullable: true + properties: + allow: + description: Allow is a list of Rules, nodes using this token must match one allow rule to use this token. + items: + properties: + caller_id: + type: string + caller_type: + type: string + scope: + type: string + space_id: + type: string + type: object + nullable: true + type: array + hostname: + description: Hostname is the hostname of the Spacelift tenant that tokens will originate from. E.g `example.app.spacelift.io` + type: string + type: object suggested_agent_matcher_labels: additionalProperties: x-kubernetes-preserve-unknown-fields: true diff --git a/crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/hazelcasts.yaml b/crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/hazelcasts.yaml index ce599feb6..5203ac32a 100644 --- a/crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/hazelcasts.yaml +++ b/crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/hazelcasts.yaml @@ -68,6 +68,7 @@ spec: items: properties: name: + maxLength: 8 type: string port: type: integer diff --git a/crd-catalog/karmada-io/karmada/networking.karmada.io/v1alpha1/multiclusterservices.yaml b/crd-catalog/karmada-io/karmada/networking.karmada.io/v1alpha1/multiclusterservices.yaml index 33aced6aa..f3f685ef1 100644 --- a/crd-catalog/karmada-io/karmada/networking.karmada.io/v1alpha1/multiclusterservices.yaml +++ b/crd-catalog/karmada-io/karmada/networking.karmada.io/v1alpha1/multiclusterservices.yaml @@ -50,7 +50,7 @@ spec: type: object type: array range: - description: Range specifies the ranges where the referencing service should be exposed. Only valid and optional in case of Types contains CrossCluster. If not set and Types contains CrossCluster, all clusters will be selected, that means the referencing service will be exposed across all registered clusters. + description: 'Range specifies the ranges where the referencing service should be exposed. Only valid and optional in case of Types contains CrossCluster. If not set and Types contains CrossCluster, all clusters will be selected, that means the referencing service will be exposed across all registered clusters. Deprecated: in favor of ServiceProvisionClusters/ServiceConsumptionClusters.' properties: clusterNames: description: ClusterNames is the list of clusters to be selected. @@ -58,6 +58,16 @@ spec: type: string type: array type: object + serviceConsumptionClusters: + description: ServiceConsumptionClusters specifies the clusters where the service will be exposed, for clients. If leave it empty, the service will be exposed to all clusters. + items: + type: string + type: array + serviceProvisionClusters: + description: ServiceProvisionClusters specifies the clusters which will provision the service backend. If leave it empty, we will collect the backend endpoints from all clusters and sync them to the ServiceConsumptionClusters. + items: + type: string + type: array types: description: Types specifies how to expose the service referencing by this MultiClusterService. items: diff --git a/crd-catalog/kiali/kiali-operator/kiali.io/v1alpha1/kialis.yaml b/crd-catalog/kiali/kiali-operator/kiali.io/v1alpha1/kialis.yaml index b48c82441..fc25f1286 100644 --- a/crd-catalog/kiali/kiali-operator/kiali.io/v1alpha1/kialis.yaml +++ b/crd-catalog/kiali/kiali-operator/kiali.io/v1alpha1/kialis.yaml @@ -867,6 +867,9 @@ spec: enabled: description: When true, connections to the Tracing server are enabled. `in_cluster_url` and/or `url` need to be provided. type: boolean + grpc_port: + description: Set port number when `use_grpc` is true and `provider` is `tempo`. By default is `9095` + type: integer in_cluster_url: description: 'Set URL for in-cluster access, which enables further integration between Kiali and Jaeger. When not provided, Kiali will only show external links using the `url` setting. Note: Jaeger v1.20+ has separated ports for GRPC(16685) and HTTP(16686) requests. Make sure you use the appropriate port according to the `use_grpc` value. Example: http://tracing.istio-system:16685' type: string diff --git a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/clusteroutputs.yaml b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/clusteroutputs.yaml index b19454145..6aa90320a 100644 --- a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/clusteroutputs.yaml +++ b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/clusteroutputs.yaml @@ -4618,6 +4618,246 @@ spec: type: boolean emit_error_label_event: type: boolean + endpoint: + properties: + access_key_id: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_arn: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_session_name: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_web_identity_token_file: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + ecs_container_credentials_relative_uri: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + region: + type: string + secret_access_key: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + sts_credentials_region: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + url: + type: string + required: + - url + type: object exception_backup: type: boolean fail_on_detecting_os_version_retry_exceed: diff --git a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/outputs.yaml b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/outputs.yaml index b8ba61efa..6a66e09ea 100644 --- a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/outputs.yaml +++ b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/outputs.yaml @@ -4302,6 +4302,246 @@ spec: type: boolean emit_error_label_event: type: boolean + endpoint: + properties: + access_key_id: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_arn: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_session_name: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_web_identity_token_file: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + ecs_container_credentials_relative_uri: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + region: + type: string + secret_access_key: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + sts_credentials_region: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + url: + type: string + required: + - url + type: object exception_backup: type: boolean fail_on_detecting_os_version_retry_exceed: diff --git a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/clusteroutputs.yaml b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/clusteroutputs.yaml index 989c10994..03fbfe8f8 100644 --- a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/clusteroutputs.yaml +++ b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/clusteroutputs.yaml @@ -4618,6 +4618,246 @@ spec: type: boolean emit_error_label_event: type: boolean + endpoint: + properties: + access_key_id: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_arn: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_session_name: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_web_identity_token_file: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + ecs_container_credentials_relative_uri: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + region: + type: string + secret_access_key: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + sts_credentials_region: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + url: + type: string + required: + - url + type: object exception_backup: type: boolean fail_on_detecting_os_version_retry_exceed: diff --git a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/outputs.yaml b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/outputs.yaml index 0cb47cae0..637644ca8 100644 --- a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/outputs.yaml +++ b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/outputs.yaml @@ -4614,6 +4614,246 @@ spec: type: boolean emit_error_label_event: type: boolean + endpoint: + properties: + access_key_id: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_arn: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_session_name: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + assume_role_web_identity_token_file: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + ecs_container_credentials_relative_uri: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + region: + type: string + secret_access_key: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + sts_credentials_region: + properties: + mountFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + value: + type: string + valueFrom: + properties: + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: object + url: + type: string + required: + - url + type: object exception_backup: type: boolean fail_on_detecting_os_version_retry_exceed: diff --git a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngclusteroutputs.yaml b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngclusteroutputs.yaml index 6c22537a6..902b5abc3 100644 --- a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngclusteroutputs.yaml +++ b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngclusteroutputs.yaml @@ -277,6 +277,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -569,6 +578,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -771,6 +789,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -1080,6 +1107,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -1714,6 +1750,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -1974,6 +2019,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -2183,6 +2237,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -2375,6 +2438,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object diff --git a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngoutputs.yaml b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngoutputs.yaml index 547122ca1..6080de419 100644 --- a/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngoutputs.yaml +++ b/crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngoutputs.yaml @@ -277,6 +277,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -565,6 +574,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -767,6 +785,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -1076,6 +1103,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -1710,6 +1746,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -1970,6 +2015,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -2179,6 +2233,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object @@ -2371,6 +2434,15 @@ spec: type: object peer_verify: type: boolean + ssl_version: + enum: + - sslv3 + - tlsv1 + - tlsv1_0 + - tlsv1_1 + - tlsv1_2 + - tlsv1_3 + type: string use-system-cert-store: type: boolean type: object diff --git a/crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1/verticalpodautoscalers.yaml b/crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1/verticalpodautoscalers.yaml index 32299e130..11c0854d0 100644 --- a/crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1/verticalpodautoscalers.yaml +++ b/crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1/verticalpodautoscalers.yaml @@ -61,7 +61,7 @@ spec: type: object type: array resourcePolicy: - description: Controls how the autoscaler computes recommended resources. The resource policy may be used to set constraints on the recommendations for individual containers. If not specified, the autoscaler computes recommended resources for all containers in the pod, without additional constraints. + description: Controls how the autoscaler computes recommended resources. The resource policy may be used to set constraints on the recommendations for individual containers. If any individual containers need to be excluded from getting the VPA recommendations, then it must be disabled explicitly by setting mode to "Off" under containerPolicies. If not specified, the autoscaler computes recommended resources for all containers in the pod, without additional constraints. properties: containerPolicies: description: Per-container resource policies. @@ -141,7 +141,7 @@ spec: - TargetHigherThanRequests - TargetLowerThanRequests type: string - resource: + resources: description: Resources is a list of one or more resources that the condition applies to. If more than one resource is given, the EvictionRequirement is fulfilled if at least one resource meets `changeRequirement`. items: description: ResourceName is the name identifying various resources in a ResourceList. @@ -149,7 +149,7 @@ spec: type: array required: - changeRequirement - - resource + - resources type: object type: array minReplicas: diff --git a/crd-catalog/nginxinc/kubernetes-ingress/appprotect.f5.com/v1beta1/appolicies.yaml b/crd-catalog/nginxinc/kubernetes-ingress/appprotect.f5.com/v1beta1/appolicies.yaml index 7a5ae25cc..e21d15af5 100644 --- a/crd-catalog/nginxinc/kubernetes-ingress/appprotect.f5.com/v1beta1/appolicies.yaml +++ b/crd-catalog/nginxinc/kubernetes-ingress/appprotect.f5.com/v1beta1/appolicies.yaml @@ -108,6 +108,10 @@ spec: - IIS backslashes - IIS Unicode codepoints - Multiple decoding + - Multiple slashes + - Semicolon path parameters + - Trailing dot + - Trailing slash type: string enabled: type: boolean @@ -133,6 +137,7 @@ spec: - CRLF characters before request start - Content length should be a positive number - Chunked request with Content-Length header + - Check maximum number of cookies - Check maximum number of parameters - Check maximum number of headers - Body in GET or HEAD requests @@ -143,9 +148,17 @@ spec: type: string enabled: type: boolean + maxCookies: + maximum: 100.0 + minimum: 1.0 + type: integer maxHeaders: + maximum: 150.0 + minimum: 1.0 type: integer maxParams: + maximum: 5000.0 + minimum: 1.0 type: integer type: object type: array @@ -160,38 +173,44 @@ spec: type: string name: enum: - - VIOL_GRPC_FORMAT - - VIOL_GRPC_MALFORMED - - VIOL_GRPC_METHOD - - VIOL_PARAMETER_ARRAY_VALUE - - VIOL_PARAMETER_VALUE_REGEXP - - VIOL_CSRF - - VIOL_PARAMETER_VALUE_BASE64 - - VIOL_MANDATORY_HEADER - - VIOL_HEADER_REPEATED + - VIOL_ACCESS_INVALID + - VIOL_ACCESS_MALFORMED + - VIOL_ACCESS_MISSING + - VIOL_ASM_COOKIE_HIJACKING - VIOL_ASM_COOKIE_MODIFIED - VIOL_BLACKLISTED_IP - VIOL_COOKIE_EXPIRED - VIOL_COOKIE_LENGTH - VIOL_COOKIE_MALFORMED - VIOL_COOKIE_MODIFIED + - VIOL_CSRF - VIOL_DATA_GUARD - VIOL_ENCODING - VIOL_EVASION - VIOL_FILETYPE - VIOL_FILE_UPLOAD - VIOL_FILE_UPLOAD_IN_BODY + - VIOL_GRAPHQL_ERROR_RESPONSE + - VIOL_GRAPHQL_FORMAT + - VIOL_GRAPHQL_INTROSPECTION_QUERY + - VIOL_GRAPHQL_MALFORMED + - VIOL_GRPC_FORMAT + - VIOL_GRPC_MALFORMED + - VIOL_GRPC_METHOD - VIOL_HEADER_LENGTH - VIOL_HEADER_METACHAR + - VIOL_HEADER_REPEATED - VIOL_HTTP_PROTOCOL - VIOL_HTTP_RESPONSE_STATUS - VIOL_JSON_FORMAT - VIOL_JSON_MALFORMED - VIOL_JSON_SCHEMA + - VIOL_MANDATORY_HEADER - VIOL_MANDATORY_PARAMETER - VIOL_MANDATORY_REQUEST_BODY - VIOL_METHOD - VIOL_PARAMETER + - VIOL_PARAMETER_ARRAY_VALUE - VIOL_PARAMETER_DATA_TYPE - VIOL_PARAMETER_EMPTY_VALUE - VIOL_PARAMETER_LOCATION @@ -200,14 +219,16 @@ spec: - VIOL_PARAMETER_NUMERIC_VALUE - VIOL_PARAMETER_REPEATED - VIOL_PARAMETER_STATIC_VALUE + - VIOL_PARAMETER_VALUE_BASE64 - VIOL_PARAMETER_VALUE_LENGTH - VIOL_PARAMETER_VALUE_METACHAR + - VIOL_PARAMETER_VALUE_REGEXP - VIOL_POST_DATA_LENGTH - VIOL_QUERY_STRING_LENGTH - - VIOL_RATING_THREAT - VIOL_RATING_NEED_EXAMINATION - - VIOL_REQUEST_MAX_LENGTH + - VIOL_RATING_THREAT - VIOL_REQUEST_LENGTH + - VIOL_REQUEST_MAX_LENGTH - VIOL_THREAT_CAMPAIGN - VIOL_URL - VIOL_URL_CONTENT_TYPE @@ -247,8 +268,10 @@ spec: name: type: string scoreThreshold: - pattern: '[0-9]|[1-9][0-9]|1[0-4][0-9]|150|default' - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true type: object type: array browsers: @@ -264,21 +287,6 @@ spec: - block - detect type: string - browserDefinition: - properties: - $action: - enum: - - delete - type: string - isUserDefined: - type: boolean - matchRegex: - type: string - matchString: - type: string - name: - type: string - type: object maxVersion: maximum: 2147483647.0 minimum: 0.0 @@ -392,8 +400,10 @@ spec: cookie-settings: properties: maximumCookieHeaderLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true type: object cookieReference: properties: @@ -433,6 +443,8 @@ spec: - none-value - strict type: string + maskValueInLogs: + type: boolean name: type: string securedOverHttpsConnection: @@ -622,6 +634,93 @@ spec: pattern: ^http type: string type: object + graphql-profiles: + items: + properties: + $action: + enum: + - delete + type: string + attackSignaturesCheck: + type: boolean + defenseAttributes: + properties: + allowIntrospectionQueries: + type: boolean + maximumBatchedQueries: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + maximumQueryCost: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + maximumStructureDepth: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + maximumTotalLength: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + maximumValueLength: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + tolerateParsingWarnings: + type: boolean + type: object + description: + type: string + metacharElementCheck: + type: boolean + metacharOverrides: + items: + properties: + isAllowed: + type: boolean + metachar: + type: string + type: object + type: array + name: + type: string + responseEnforcement: + properties: + blockDisallowedPatterns: + type: boolean + disallowedPatterns: + items: + type: string + type: array + type: object + sensetiveData: + items: + properties: + parameterName: + type: string + type: object + type: array + signatureOverrides: + items: + properties: + enabled: + type: boolean + name: + type: string + signatureId: + type: integer + tag: + type: string + type: object + type: array + type: object + type: array grpc-profiles: items: properties: @@ -633,13 +732,20 @@ spec: type: boolean attackSignaturesCheck: type: boolean + decodeStringValuesAsBase64: + enum: + - disabled + - enabled + type: string defenseAttributes: properties: allowUnknownFields: type: boolean maximumDataLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true type: object description: type: string @@ -665,6 +771,8 @@ spec: type: string type: object type: array + metacharCheck: + type: boolean metacharElementCheck: type: boolean name: @@ -687,8 +795,10 @@ spec: header-settings: properties: maximumHttpHeaderLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true type: object headerReference: properties: @@ -793,17 +903,25 @@ spec: defenseAttributes: properties: maximumArrayLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumStructureDepth: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumTotalLengthOfJSONData: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumValueLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true tolerateJSONParsingWarnings: type: boolean type: object @@ -1064,6 +1182,62 @@ spec: - wildcard type: string url: + properties: + method: + enum: + - ACL + - BCOPY + - BDELETE + - BMOVE + - BPROPFIND + - BPROPPATCH + - CHECKIN + - CHECKOUT + - CONNECT + - COPY + - DELETE + - GET + - HEAD + - LINK + - LOCK + - MERGE + - MKCOL + - MKWORKSPACE + - MOVE + - NOTIFY + - OPTIONS + - PATCH + - POLL + - POST + - PROPFIND + - PROPPATCH + - PUT + - REPORT + - RPC_IN_DATA + - RPC_OUT_DATA + - SEARCH + - SUBSCRIBE + - TRACE + - TRACK + - UNLINK + - UNLOCK + - UNSUBSCRIBE + - VERSION_CONTROL + - X-MS-ENUMATTS + - '*' + type: string + name: + type: string + protocol: + enum: + - http + - https + type: string + type: + enum: + - explicit + - wildcard + type: string type: object valueMetacharOverrides: items: @@ -1401,8 +1575,10 @@ spec: originName: type: string originPort: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true originProtocol: enum: - http @@ -1675,6 +1851,62 @@ spec: - wildcard type: string url: + properties: + method: + enum: + - ACL + - BCOPY + - BDELETE + - BMOVE + - BPROPFIND + - BPROPPATCH + - CHECKIN + - CHECKOUT + - CONNECT + - COPY + - DELETE + - GET + - HEAD + - LINK + - LOCK + - MERGE + - MKCOL + - MKWORKSPACE + - MOVE + - NOTIFY + - OPTIONS + - PATCH + - POLL + - POST + - PROPFIND + - PROPPATCH + - PUT + - REPORT + - RPC_IN_DATA + - RPC_OUT_DATA + - SEARCH + - SUBSCRIBE + - TRACE + - TRACK + - UNLINK + - UNLOCK + - UNSUBSCRIBE + - VERSION_CONTROL + - X-MS-ENUMATTS + - '*' + type: string + name: + type: string + protocol: + enum: + - http + - https + type: string + type: + enum: + - explicit + - wildcard + type: string type: object valueMetacharOverrides: items: @@ -1740,7 +1972,10 @@ spec: headerName: type: string headerOrder: - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true headerValue: type: string name: @@ -1812,32 +2047,50 @@ spec: allowProcessingInstructions: type: boolean maximumAttributeValueLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumAttributesPerElement: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumChildrenPerElement: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumDocumentDepth: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumDocumentSize: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumElements: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumNSDeclarations: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumNameLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true maximumNamespaceLength: - pattern: any|\d+ - type: string + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true tolerateCloseTagShorthand: type: boolean tolerateLeadingWhiteSpace: @@ -1866,6 +2119,8 @@ spec: type: string type: object type: array + useXmlResponsePage: + type: boolean type: object type: array xml-validation-files: diff --git a/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha1/featureflagconfigurations.yaml b/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha1/featureflagconfigurations.yaml index b9bb68c4a..4e145197b 100644 --- a/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha1/featureflagconfigurations.yaml +++ b/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha1/featureflagconfigurations.yaml @@ -11,7 +11,7 @@ spec: listKind: FeatureFlagConfigurationList plural: featureflagconfigurations shortNames: - - ff + - ffc singular: featureflagconfiguration scope: Namespaced versions: diff --git a/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha2/featureflagconfigurations.yaml b/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha2/featureflagconfigurations.yaml index 4f19e9dc5..9de16e7b9 100644 --- a/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha2/featureflagconfigurations.yaml +++ b/crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha2/featureflagconfigurations.yaml @@ -11,7 +11,7 @@ spec: listKind: FeatureFlagConfigurationList plural: featureflagconfigurations shortNames: - - ff + - ffc singular: featureflagconfiguration scope: Namespaced versions: diff --git a/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/controllerconfigs.yaml b/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/controllerconfigs.yaml index 354be952a..417bed23c 100644 --- a/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/controllerconfigs.yaml +++ b/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/controllerconfigs.yaml @@ -246,7 +246,46 @@ spec: type: object baremetal: description: BareMetal contains settings specific to the BareMetal platform. + properties: + apiServerInternalIPs: + description: apiServerInternalIPs are the IP addresses to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. These are the IPs for a self-hosted load balancer in front of the API servers. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.apiServerInternalIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + items: + description: IP is an IP address (for example, "10.0.0.0" or "fd00::"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*) + type: string + maxItems: 2 + type: array + x-kubernetes-list-type: set + x-kubernetes-validations: + - message: apiServerInternalIPs must contain at most one IPv4 address and at most one IPv6 address + rule: 'size(self) == 2 ? self.exists_one(x, x.contains('':'')) : true' + ingressIPs: + description: ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.ingressIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + items: + description: IP is an IP address (for example, "10.0.0.0" or "fd00::"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*) + type: string + maxItems: 2 + type: array + x-kubernetes-list-type: set + x-kubernetes-validations: + - message: ingressIPs must contain at most one IPv4 address and at most one IPv6 address + rule: 'size(self) == 2 ? self.exists_one(x, x.contains('':'')) : true' + machineNetworks: + description: machineNetworks are IP networks used to connect all the OpenShift cluster nodes. Each network is provided in the CIDR format and should be IPv4 or IPv6, for example "10.0.0.0/8" or "fd00::/8". + items: + description: CIDR is an IP address range in CIDR notation (for example, "10.0.0.0/8" or "fd00::/8"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9]))$) + type: string + maxItems: 32 + type: array + x-kubernetes-list-type: set type: object + x-kubernetes-validations: + - message: apiServerInternalIPs list is required once set + rule: '!has(oldSelf.apiServerInternalIPs) || has(self.apiServerInternalIPs)' + - message: ingressIPs list is required once set + rule: '!has(oldSelf.ingressIPs) || has(self.ingressIPs)' equinixMetal: description: EquinixMetal contains settings specific to the Equinix Metal infrastructure provider. type: object @@ -273,6 +312,80 @@ spec: nutanix: description: Nutanix contains settings specific to the Nutanix infrastructure provider. properties: + failureDomains: + description: failureDomains configures failure domains information for the Nutanix platform. When set, the failure domains defined here may be used to spread Machines across prism element clusters to improve fault tolerance of the cluster. + items: + description: NutanixFailureDomain configures failure domain information for the Nutanix platform. + properties: + cluster: + description: cluster is to identify the cluster (the Prism Element under management of the Prism Central), in which the Machine's VM will be created. The cluster identifier (uuid or name) can be obtained from the Prism Central console or using the prism_central API. + properties: + name: + description: name is the resource name in the PC. It cannot be empty if the type is Name. + type: string + type: + description: type is the identifier type to use for this resource. + enum: + - UUID + - Name + type: string + uuid: + description: uuid is the UUID of the resource in the PC. It cannot be empty if the type is UUID. + type: string + required: + - type + type: object + x-kubernetes-validations: + - message: uuid configuration is required when type is UUID, and forbidden otherwise + rule: 'has(self.type) && self.type == ''UUID'' ? has(self.uuid) : !has(self.uuid)' + - message: name configuration is required when type is Name, and forbidden otherwise + rule: 'has(self.type) && self.type == ''Name'' ? has(self.name) : !has(self.name)' + name: + description: name defines the unique name of a failure domain. Name is required and must be at most 64 characters in length. It must consist of only lower case alphanumeric characters and hyphens (-). It must start and end with an alphanumeric character. This value is arbitrary and is used to identify the failure domain within the platform. + maxLength: 64 + minLength: 1 + pattern: '[a-z0-9]([-a-z0-9]*[a-z0-9])?' + type: string + subnets: + description: subnets holds a list of identifiers (one or more) of the cluster's network subnets for the Machine's VM to connect to. The subnet identifiers (uuid or name) can be obtained from the Prism Central console or using the prism_central API. + items: + description: NutanixResourceIdentifier holds the identity of a Nutanix PC resource (cluster, image, subnet, etc.) + properties: + name: + description: name is the resource name in the PC. It cannot be empty if the type is Name. + type: string + type: + description: type is the identifier type to use for this resource. + enum: + - UUID + - Name + type: string + uuid: + description: uuid is the UUID of the resource in the PC. It cannot be empty if the type is UUID. + type: string + required: + - type + type: object + x-kubernetes-validations: + - message: uuid configuration is required when type is UUID, and forbidden otherwise + rule: 'has(self.type) && self.type == ''UUID'' ? has(self.uuid) : !has(self.uuid)' + - message: name configuration is required when type is Name, and forbidden otherwise + rule: 'has(self.type) && self.type == ''Name'' ? has(self.name) : !has(self.name)' + maxItems: 1 + minItems: 1 + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + required: + - cluster + - name + - subnets + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map prismCentral: description: prismCentral holds the endpoint address and port to access the Nutanix Prism Central. When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list. properties: @@ -330,7 +443,46 @@ spec: type: object openstack: description: OpenStack contains settings specific to the OpenStack infrastructure provider. + properties: + apiServerInternalIPs: + description: apiServerInternalIPs are the IP addresses to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. These are the IPs for a self-hosted load balancer in front of the API servers. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.apiServerInternalIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + items: + description: IP is an IP address (for example, "10.0.0.0" or "fd00::"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*) + type: string + maxItems: 2 + type: array + x-kubernetes-list-type: set + x-kubernetes-validations: + - message: apiServerInternalIPs must contain at most one IPv4 address and at most one IPv6 address + rule: 'size(self) == 2 ? self.exists_one(x, x.contains('':'')) : true' + ingressIPs: + description: ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.ingressIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + items: + description: IP is an IP address (for example, "10.0.0.0" or "fd00::"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*) + type: string + maxItems: 2 + type: array + x-kubernetes-list-type: set + x-kubernetes-validations: + - message: ingressIPs must contain at most one IPv4 address and at most one IPv6 address + rule: 'size(self) == 2 ? self.exists_one(x, x.contains('':'')) : true' + machineNetworks: + description: machineNetworks are IP networks used to connect all the OpenShift cluster nodes. Each network is provided in the CIDR format and should be IPv4 or IPv6, for example "10.0.0.0/8" or "fd00::/8". + items: + description: CIDR is an IP address range in CIDR notation (for example, "10.0.0.0/8" or "fd00::/8"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9]))$) + type: string + maxItems: 32 + type: array + x-kubernetes-list-type: set type: object + x-kubernetes-validations: + - message: apiServerInternalIPs list is required once set + rule: '!has(oldSelf.apiServerInternalIPs) || has(self.apiServerInternalIPs)' + - message: ingressIPs list is required once set + rule: '!has(oldSelf.ingressIPs) || has(self.ingressIPs)' ovirt: description: Ovirt contains settings specific to the oVirt infrastructure provider. type: object @@ -384,6 +536,18 @@ spec: vsphere: description: VSphere contains settings specific to the VSphere infrastructure provider. properties: + apiServerInternalIPs: + description: apiServerInternalIPs are the IP addresses to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. These are the IPs for a self-hosted load balancer in front of the API servers. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.apiServerInternalIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + items: + description: IP is an IP address (for example, "10.0.0.0" or "fd00::"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*) + type: string + maxItems: 2 + type: array + x-kubernetes-list-type: set + x-kubernetes-validations: + - message: apiServerInternalIPs must contain at most one IPv4 address and at most one IPv6 address + rule: 'size(self) == 2 ? self.exists_one(x, x.contains('':'')) : true' failureDomains: description: failureDomains contains the definition of region, zone and the vCenter topology. If this is omitted failure domains (regions and zones) will not be used. items: @@ -457,6 +621,27 @@ spec: - zone type: object type: array + ingressIPs: + description: ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.ingressIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + items: + description: IP is an IP address (for example, "10.0.0.0" or "fd00::"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*) + type: string + maxItems: 2 + type: array + x-kubernetes-list-type: set + x-kubernetes-validations: + - message: ingressIPs must contain at most one IPv4 address and at most one IPv6 address + rule: 'size(self) == 2 ? self.exists_one(x, x.contains('':'')) : true' + machineNetworks: + description: machineNetworks are IP networks used to connect all the OpenShift cluster nodes. Each network is provided in the CIDR format and should be IPv4 or IPv6, for example "10.0.0.0/8" or "fd00::/8". + items: + description: CIDR is an IP address range in CIDR notation (for example, "10.0.0.0/8" or "fd00::/8"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9]))$) + type: string + maxItems: 32 + type: array + x-kubernetes-list-type: set nodeNetworking: description: nodeNetworking contains the definition of internal and external network constraints for assigning the node's networking. If this field is omitted, networking defaults to the legacy address selection behavior which is to only support a single address and return the first one found. properties: @@ -524,6 +709,11 @@ spec: minItems: 0 type: array type: object + x-kubernetes-validations: + - message: apiServerInternalIPs list is required once set + rule: '!has(oldSelf.apiServerInternalIPs) || has(self.apiServerInternalIPs)' + - message: ingressIPs list is required once set + rule: '!has(oldSelf.ingressIPs) || has(self.ingressIPs)' type: object type: object status: @@ -745,6 +935,15 @@ spec: type: string maxItems: 2 type: array + machineNetworks: + description: machineNetworks are IP networks used to connect all the OpenShift cluster nodes. + items: + description: CIDR is an IP address range in CIDR notation (for example, "10.0.0.0/8" or "fd00::/8"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9]))$) + type: string + maxItems: 32 + type: array + x-kubernetes-list-type: set nodeDNSIP: description: nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for BareMetal deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. type: string @@ -922,6 +1121,15 @@ spec: - message: type is immutable once set rule: oldSelf == '' || self == oldSelf type: object + machineNetworks: + description: machineNetworks are IP networks used to connect all the OpenShift cluster nodes. + items: + description: CIDR is an IP address range in CIDR notation (for example, "10.0.0.0/8" or "fd00::/8"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9]))$) + type: string + maxItems: 32 + type: array + x-kubernetes-list-type: set nodeDNSIP: description: nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for OpenStack deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. type: string @@ -1043,6 +1251,15 @@ spec: type: string maxItems: 2 type: array + machineNetworks: + description: machineNetworks are IP networks used to connect all the OpenShift cluster nodes. + items: + description: CIDR is an IP address range in CIDR notation (for example, "10.0.0.0/8" or "fd00::/8"). + pattern: (^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*(\/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9]))$) + type: string + maxItems: 32 + type: array + x-kubernetes-list-type: set nodeDNSIP: description: nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for vSphere deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. type: string @@ -1233,8 +1450,6 @@ spec: type: string required: - bundleFile - - notAfter - - notBefore - signer - subject type: object diff --git a/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/machineconfigpools.yaml b/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/machineconfigpools.yaml index cf6998773..781937c84 100644 --- a/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/machineconfigpools.yaml +++ b/crd-catalog/openshift/api/machineconfiguration.openshift.io/v1/machineconfigpools.yaml @@ -218,7 +218,6 @@ spec: type: string required: - bundle - - expiry - subject type: object type: array diff --git a/crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/clientintents.yaml b/crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/clientintents.yaml index b7037ad0f..6743bc8c7 100644 --- a/crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/clientintents.yaml +++ b/crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/clientintents.yaml @@ -142,6 +142,10 @@ spec: type: object status: description: IntentsStatus defines the observed state of ClientIntents + properties: + upToDate: + description: upToDate field reflects whether the client intents have successfully been applied to the cluster to the state specified + type: boolean type: object type: object served: true diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml index db1a1b652..0f51840bf 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml @@ -466,6 +466,9 @@ spec: description: Used to verify the hostname for the targets. type: string type: object + trackTimestampsStaleness: + description: "TrackTimestampsStaleness whether Prometheus tracks staleness of the metrics that have an explicit timestamps present in scraped data. Has no effect if `honorTimestamps` is false. \n It requires Prometheus >= v2.48.0." + type: boolean type: object type: array podTargetLabels: diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml index 0347dbb07..8de8a5212 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml @@ -447,6 +447,9 @@ spec: description: Used to verify the hostname for the targets. type: string type: object + trackTimestampsStaleness: + description: "`trackTimestampsStaleness` defines whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. \n It requires Prometheus >= v2.48.0." + type: boolean type: object type: array jobLabel: diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml index 4cd791570..775950ea4 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml @@ -1118,6 +1118,9 @@ spec: description: Used to verify the hostname for the targets. type: string type: object + trackTimestampsStaleness: + description: TrackTimestampsStaleness whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. Has no effect if `honorTimestamps` is false. It requires Prometheus >= v2.48.0. + type: boolean type: object required: - spec diff --git a/crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulps.yaml b/crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulps.yaml index 21beec7a6..af1b5cbd6 100644 --- a/crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulps.yaml +++ b/crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulps.yaml @@ -3787,11 +3787,62 @@ spec: type: string description: ServiceAccount.metadata.labels that will be used in Pulp pods. type: object + signing_job: + description: Job to store signing metadata scripts + properties: + container: + description: PulpContainer defines configuration of the "auxiliary" containers that run in pulpcore pods + properties: + image: + description: 'The image name for the container. By default, if not provided, it will use the same image from .Spec.Image. WARN: defining a different image than the one used by API pods can cause unexpected behaviors!' + type: string + resource_requirements: + description: Resource requirements for pulpcore aux container. + properties: + claims: + description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + items: + description: ResourceClaim references one entry in PodSpec.ResourceClaims. + properties: + name: + description: Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: 'Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: 'Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' + type: object + type: object + type: object + type: object + signing_scripts: + description: Name of the Secret where the signing scripts are stored. + type: string signing_scripts_configmap: - description: 'ConfigMap where the signing scripts are stored. Default: -"-signing-scripts"' + description: '[DEPRECATED] ConfigMap where the signing scripts are stored. This field is deprecated and will be removed in the future, use the signing_scripts field instead.' type: string signing_secret: - description: 'Secret where the signing certificates are stored. Default: -"-signing-scripts"' + description: Name of the Secret where the gpg key is stored. type: string sso_secret: description: Secret where Single Sign-on configuration can be found diff --git a/crd-catalog/ray-project/kuberay/ray.io/v1/rayclusters.yaml b/crd-catalog/ray-project/kuberay/ray.io/v1/rayclusters.yaml index f2854d17f..d3047d81d 100644 --- a/crd-catalog/ray-project/kuberay/ray.io/v1/rayclusters.yaml +++ b/crd-catalog/ray-project/kuberay/ray.io/v1/rayclusters.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.6.0 + controller-gen.kubebuilder.io/version: v0.13.0 name: rayclusters.ray.io spec: group: ray.io @@ -68,6 +68,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -77,6 +78,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -92,6 +94,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -103,6 +106,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -118,6 +122,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -127,6 +132,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array idleTimeoutSeconds: @@ -138,6 +144,18 @@ spec: type: string resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -511,6 +529,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -557,10 +576,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -592,6 +613,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -615,6 +637,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -658,6 +681,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -681,6 +705,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -722,6 +747,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -745,6 +771,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -788,6 +815,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -811,6 +839,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -856,6 +885,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -865,6 +895,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -880,6 +911,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -891,6 +923,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -906,6 +939,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -915,6 +949,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1206,8 +1241,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1225,6 +1285,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -1467,6 +1529,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -1476,6 +1539,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -1491,6 +1555,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -1502,6 +1567,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -1517,6 +1583,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -1526,6 +1593,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1817,8 +1885,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1836,6 +1929,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2042,6 +2137,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -2050,6 +2147,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -2082,6 +2180,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -2091,6 +2190,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -2106,6 +2206,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -2117,6 +2218,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -2132,6 +2234,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -2141,6 +2244,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2432,8 +2536,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -2451,6 +2580,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2676,12 +2807,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -2801,9 +2963,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -2882,6 +3057,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -2898,6 +3074,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -2928,6 +3105,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -2939,6 +3117,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -2965,6 +3144,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -2985,6 +3165,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3042,6 +3223,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -3050,12 +3232,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -3096,6 +3292,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -3142,6 +3339,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -3226,6 +3424,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -3306,6 +3505,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -3320,6 +3520,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -3340,6 +3541,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3367,6 +3569,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -3421,6 +3624,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -3442,6 +3646,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -3493,6 +3698,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -3625,6 +3831,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -3671,10 +3878,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -3706,6 +3915,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3729,6 +3939,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3772,6 +3983,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3795,6 +4007,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3836,6 +4049,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3859,6 +4073,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3902,6 +4117,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3925,6 +4141,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3970,6 +4187,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -3979,6 +4197,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -3994,6 +4213,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4005,6 +4225,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4020,6 +4241,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4029,6 +4251,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4320,8 +4543,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4339,6 +4587,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -4581,6 +4831,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -4590,6 +4841,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -4605,6 +4857,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4616,6 +4869,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4631,6 +4885,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4640,6 +4895,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4931,8 +5187,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4950,6 +5231,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5156,6 +5439,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -5164,6 +5449,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -5196,6 +5482,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -5205,6 +5492,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -5220,6 +5508,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -5231,6 +5520,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -5246,6 +5536,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -5255,6 +5546,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -5546,8 +5838,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -5565,6 +5882,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5790,12 +6109,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -5915,9 +6265,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -5996,6 +6359,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6012,6 +6376,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -6042,6 +6407,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -6053,6 +6419,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -6079,6 +6446,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6099,6 +6467,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6156,6 +6525,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -6164,12 +6534,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -6210,6 +6594,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -6256,6 +6641,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -6340,6 +6726,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -6420,6 +6807,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -6434,6 +6822,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6454,6 +6843,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6481,6 +6871,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -6535,6 +6926,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6556,6 +6948,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -6607,6 +7000,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -6686,9 +7080,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] diff --git a/crd-catalog/ray-project/kuberay/ray.io/v1/rayjobs.yaml b/crd-catalog/ray-project/kuberay/ray.io/v1/rayjobs.yaml index 5aff467a2..58031b095 100644 --- a/crd-catalog/ray-project/kuberay/ray.io/v1/rayjobs.yaml +++ b/crd-catalog/ray-project/kuberay/ray.io/v1/rayjobs.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.6.0 + controller-gen.kubebuilder.io/version: v0.13.0 name: rayjobs.ray.io spec: group: ray.io @@ -67,6 +67,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -76,6 +77,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -91,6 +93,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -102,6 +105,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -117,6 +121,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -126,6 +131,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array idleTimeoutSeconds: @@ -137,6 +143,18 @@ spec: type: string resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -510,6 +528,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -556,10 +575,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -591,6 +612,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -614,6 +636,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -657,6 +680,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -680,6 +704,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -721,6 +746,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -744,6 +770,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -787,6 +814,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -810,6 +838,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -855,6 +884,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -864,6 +894,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -879,6 +910,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -890,6 +922,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -905,6 +938,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -914,6 +948,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1205,8 +1240,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1224,6 +1284,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -1466,6 +1528,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -1475,6 +1538,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -1490,6 +1554,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -1501,6 +1566,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -1516,6 +1582,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -1525,6 +1592,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1816,8 +1884,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1835,6 +1928,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2041,6 +2136,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -2049,6 +2146,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -2081,6 +2179,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -2090,6 +2189,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -2105,6 +2205,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -2116,6 +2217,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -2131,6 +2233,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -2140,6 +2243,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2431,8 +2535,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -2450,6 +2579,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2675,12 +2806,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -2800,9 +2962,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -2881,6 +3056,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -2897,6 +3073,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -2927,6 +3104,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -2938,6 +3116,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -2964,6 +3143,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -2984,6 +3164,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3041,6 +3222,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -3049,12 +3231,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -3095,6 +3291,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -3141,6 +3338,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -3225,6 +3423,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -3305,6 +3504,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -3319,6 +3519,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -3339,6 +3540,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3366,6 +3568,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -3420,6 +3623,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -3441,6 +3645,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -3492,6 +3697,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -3624,6 +3830,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -3670,10 +3877,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -3705,6 +3914,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3728,6 +3938,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3771,6 +3982,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3794,6 +4006,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3835,6 +4048,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3858,6 +4072,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3901,6 +4116,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3924,6 +4140,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3969,6 +4186,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -3978,6 +4196,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -3993,6 +4212,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4004,6 +4224,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4019,6 +4240,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4028,6 +4250,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4319,8 +4542,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4338,6 +4586,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -4580,6 +4830,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -4589,6 +4840,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -4604,6 +4856,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4615,6 +4868,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4630,6 +4884,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4639,6 +4894,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4930,8 +5186,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4949,6 +5230,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5155,6 +5438,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -5163,6 +5448,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -5195,6 +5481,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -5204,6 +5491,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -5219,6 +5507,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -5230,6 +5519,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -5245,6 +5535,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -5254,6 +5545,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -5545,8 +5837,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -5564,6 +5881,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5789,12 +6108,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -5914,9 +6264,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -5995,6 +6358,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6011,6 +6375,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -6041,6 +6406,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -6052,6 +6418,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -6078,6 +6445,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6098,6 +6466,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6155,6 +6524,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -6163,12 +6533,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -6209,6 +6593,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -6255,6 +6640,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -6339,6 +6725,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -6419,6 +6806,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -6433,6 +6821,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6453,6 +6842,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6480,6 +6870,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -6534,6 +6925,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6555,6 +6947,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -6606,6 +6999,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -6717,6 +7111,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -6763,10 +7158,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -6798,6 +7195,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -6821,6 +7219,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -6864,6 +7263,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -6887,6 +7287,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -6928,6 +7329,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -6951,6 +7353,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -6994,6 +7397,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -7017,6 +7421,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -7062,6 +7467,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -7071,6 +7477,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -7086,6 +7493,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -7097,6 +7505,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -7112,6 +7521,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -7121,6 +7531,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -7412,8 +7823,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -7431,6 +7867,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -7673,6 +8111,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -7682,6 +8121,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -7697,6 +8137,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -7708,6 +8149,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -7723,6 +8165,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -7732,6 +8175,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -8023,8 +8467,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -8042,6 +8511,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -8248,6 +8719,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -8256,6 +8729,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -8288,6 +8762,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -8297,6 +8772,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -8312,6 +8788,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -8323,6 +8800,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -8338,6 +8816,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -8347,6 +8826,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -8638,8 +9118,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -8657,6 +9162,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -8882,12 +9389,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -9007,9 +9545,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -9088,6 +9639,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -9104,6 +9656,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -9134,6 +9687,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -9145,6 +9699,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -9171,6 +9726,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -9191,6 +9747,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -9248,6 +9805,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -9256,12 +9814,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -9302,6 +9874,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -9348,6 +9921,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -9432,6 +10006,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -9512,6 +10087,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -9526,6 +10102,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -9546,6 +10123,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -9573,6 +10151,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -9627,6 +10206,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -9648,6 +10228,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -9699,6 +10280,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -9799,9 +10381,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] diff --git a/crd-catalog/ray-project/kuberay/ray.io/v1/rayservices.yaml b/crd-catalog/ray-project/kuberay/ray.io/v1/rayservices.yaml index b1928a2db..95e499ef8 100644 --- a/crd-catalog/ray-project/kuberay/ray.io/v1/rayservices.yaml +++ b/crd-catalog/ray-project/kuberay/ray.io/v1/rayservices.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.6.0 + controller-gen.kubebuilder.io/version: v0.13.0 name: rayservices.ray.io spec: group: ray.io @@ -52,6 +52,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -61,6 +62,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -76,6 +78,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -87,6 +90,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -102,6 +106,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -111,6 +116,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array idleTimeoutSeconds: @@ -122,6 +128,18 @@ spec: type: string resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -495,6 +513,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -541,10 +560,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -576,6 +597,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -599,6 +621,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -642,6 +665,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -665,6 +689,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -706,6 +731,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -729,6 +755,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -772,6 +799,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -795,6 +823,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -840,6 +869,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -849,6 +879,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -864,6 +895,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -875,6 +907,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -890,6 +923,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -899,6 +933,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1190,8 +1225,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1209,6 +1269,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -1451,6 +1513,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -1460,6 +1523,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -1475,6 +1539,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -1486,6 +1551,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -1501,6 +1567,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -1510,6 +1577,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1801,8 +1869,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1820,6 +1913,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2026,6 +2121,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -2034,6 +2131,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -2066,6 +2164,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -2075,6 +2174,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -2090,6 +2190,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -2101,6 +2202,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -2116,6 +2218,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -2125,6 +2228,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2416,8 +2520,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -2435,6 +2564,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2660,12 +2791,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -2785,9 +2947,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -2866,6 +3041,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -2882,6 +3058,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -2912,6 +3089,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -2923,6 +3101,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -2949,6 +3128,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -2969,6 +3149,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3026,6 +3207,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -3034,12 +3216,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -3080,6 +3276,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -3126,6 +3323,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -3210,6 +3408,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -3290,6 +3489,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -3304,6 +3504,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -3324,6 +3525,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3351,6 +3553,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -3405,6 +3608,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -3426,6 +3630,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -3477,6 +3682,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -3609,6 +3815,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -3655,10 +3862,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -3690,6 +3899,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3713,6 +3923,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3756,6 +3967,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3779,6 +3991,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3820,6 +4033,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3843,6 +4057,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3886,6 +4101,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3909,6 +4125,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3954,6 +4171,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -3963,6 +4181,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -3978,6 +4197,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -3989,6 +4209,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4004,6 +4225,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4013,6 +4235,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4304,8 +4527,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4323,6 +4571,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -4565,6 +4815,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -4574,6 +4825,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -4589,6 +4841,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4600,6 +4853,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4615,6 +4869,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4624,6 +4879,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4915,8 +5171,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4934,6 +5215,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5140,6 +5423,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -5148,6 +5433,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -5180,6 +5466,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -5189,6 +5476,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -5204,6 +5492,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -5215,6 +5504,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -5230,6 +5520,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -5239,6 +5530,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -5530,8 +5822,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -5549,6 +5866,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5774,12 +6093,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -5899,9 +6249,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -5980,6 +6343,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -5996,6 +6360,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -6026,6 +6391,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -6037,6 +6403,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -6063,6 +6430,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6083,6 +6451,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6140,6 +6509,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -6148,12 +6518,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -6194,6 +6578,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -6240,6 +6625,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -6324,6 +6710,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -6404,6 +6791,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -6418,6 +6806,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6438,6 +6827,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6465,6 +6855,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -6519,6 +6910,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6540,6 +6932,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -6591,6 +6984,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -6895,9 +7289,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string serveDeploymentStatuses: @@ -6906,9 +7297,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string status: @@ -6926,9 +7314,6 @@ spec: type: string isHealthy: type: boolean - lastUpdateTime: - format: date-time - type: string type: object rayClusterName: type: string @@ -6970,6 +7355,9 @@ spec: type: string type: object type: object + lastUpdateTime: + format: date-time + type: string observedGeneration: format: int64 type: integer @@ -6981,9 +7369,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string serveDeploymentStatuses: @@ -6992,9 +7377,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string status: @@ -7012,9 +7394,6 @@ spec: type: string isHealthy: type: boolean - lastUpdateTime: - format: date-time - type: string type: object rayClusterName: type: string @@ -7064,9 +7443,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] diff --git a/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayclusters.yaml b/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayclusters.yaml index 069c27f27..aa73f6ec2 100644 --- a/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayclusters.yaml +++ b/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayclusters.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.6.0 + controller-gen.kubebuilder.io/version: v0.13.0 name: rayclusters.ray.io spec: group: ray.io @@ -68,6 +68,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -77,6 +78,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -92,6 +94,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -103,6 +106,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -118,6 +122,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -127,6 +132,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array idleTimeoutSeconds: @@ -138,6 +144,18 @@ spec: type: string resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -511,6 +529,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -557,10 +576,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -592,6 +613,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -615,6 +637,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -658,6 +681,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -681,6 +705,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -722,6 +747,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -745,6 +771,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -788,6 +815,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -811,6 +839,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -856,6 +885,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -865,6 +895,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -880,6 +911,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -891,6 +923,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -906,6 +939,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -915,6 +949,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1206,8 +1241,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1225,6 +1285,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -1467,6 +1529,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -1476,6 +1539,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -1491,6 +1555,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -1502,6 +1567,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -1517,6 +1583,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -1526,6 +1593,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1817,8 +1885,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1836,6 +1929,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2042,6 +2137,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -2050,6 +2147,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -2082,6 +2180,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -2091,6 +2190,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -2106,6 +2206,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -2117,6 +2218,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -2132,6 +2234,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -2141,6 +2244,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2432,8 +2536,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -2451,6 +2580,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2676,12 +2807,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -2801,9 +2963,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -2882,6 +3057,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -2898,6 +3074,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -2928,6 +3105,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -2939,6 +3117,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -2965,6 +3144,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -2985,6 +3165,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3042,6 +3223,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -3050,12 +3232,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -3096,6 +3292,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -3142,6 +3339,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -3226,6 +3424,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -3306,6 +3505,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -3320,6 +3520,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -3340,6 +3541,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3367,6 +3569,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -3421,6 +3624,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -3442,6 +3646,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -3493,6 +3698,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -3625,6 +3831,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -3671,10 +3878,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -3706,6 +3915,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3729,6 +3939,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3772,6 +3983,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3795,6 +4007,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3836,6 +4049,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3859,6 +4073,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3902,6 +4117,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3925,6 +4141,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3970,6 +4187,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -3979,6 +4197,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -3994,6 +4213,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4005,6 +4225,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4020,6 +4241,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4029,6 +4251,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4320,8 +4543,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4339,6 +4587,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -4581,6 +4831,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -4590,6 +4841,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -4605,6 +4857,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4616,6 +4869,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4631,6 +4885,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4640,6 +4895,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4931,8 +5187,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4950,6 +5231,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5156,6 +5439,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -5164,6 +5449,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -5196,6 +5482,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -5205,6 +5492,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -5220,6 +5508,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -5231,6 +5520,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -5246,6 +5536,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -5255,6 +5546,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -5546,8 +5838,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -5565,6 +5882,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5790,12 +6109,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -5915,9 +6265,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -5996,6 +6359,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6012,6 +6376,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -6042,6 +6407,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -6053,6 +6419,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -6079,6 +6446,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6099,6 +6467,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6156,6 +6525,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -6164,12 +6534,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -6210,6 +6594,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -6256,6 +6641,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -6340,6 +6726,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -6420,6 +6807,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -6434,6 +6822,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6454,6 +6843,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6481,6 +6871,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -6535,6 +6926,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6556,6 +6948,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -6607,6 +7000,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -6686,9 +7080,3 @@ spec: storage: false subresources: status: {} -status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] diff --git a/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayjobs.yaml b/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayjobs.yaml index 7e27ce3f2..9768a259b 100644 --- a/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayjobs.yaml +++ b/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayjobs.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.6.0 + controller-gen.kubebuilder.io/version: v0.13.0 name: rayjobs.ray.io spec: group: ray.io @@ -67,6 +67,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -76,6 +77,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -91,6 +93,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -102,6 +105,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -117,6 +121,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -126,6 +131,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array idleTimeoutSeconds: @@ -137,6 +143,18 @@ spec: type: string resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -510,6 +528,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -556,10 +575,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -591,6 +612,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -614,6 +636,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -657,6 +680,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -680,6 +704,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -721,6 +746,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -744,6 +770,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -787,6 +814,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -810,6 +838,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -855,6 +884,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -864,6 +894,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -879,6 +910,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -890,6 +922,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -905,6 +938,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -914,6 +948,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1205,8 +1240,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1224,6 +1284,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -1466,6 +1528,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -1475,6 +1538,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -1490,6 +1554,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -1501,6 +1566,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -1516,6 +1582,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -1525,6 +1592,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1816,8 +1884,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1835,6 +1928,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2041,6 +2136,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -2049,6 +2146,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -2081,6 +2179,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -2090,6 +2189,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -2105,6 +2205,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -2116,6 +2217,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -2131,6 +2233,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -2140,6 +2243,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2431,8 +2535,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -2450,6 +2579,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2675,12 +2806,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -2800,9 +2962,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -2881,6 +3056,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -2897,6 +3073,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -2927,6 +3104,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -2938,6 +3116,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -2964,6 +3143,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -2984,6 +3164,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3041,6 +3222,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -3049,12 +3231,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -3095,6 +3291,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -3141,6 +3338,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -3225,6 +3423,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -3305,6 +3504,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -3319,6 +3519,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -3339,6 +3540,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3366,6 +3568,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -3420,6 +3623,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -3441,6 +3645,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -3492,6 +3697,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -3624,6 +3830,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -3670,10 +3877,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -3705,6 +3914,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3728,6 +3938,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3771,6 +3982,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3794,6 +4006,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3835,6 +4048,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3858,6 +4072,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3901,6 +4116,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3924,6 +4140,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3969,6 +4186,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -3978,6 +4196,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -3993,6 +4212,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4004,6 +4224,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4019,6 +4240,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4028,6 +4250,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4319,8 +4542,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4338,6 +4586,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -4580,6 +4830,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -4589,6 +4840,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -4604,6 +4856,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4615,6 +4868,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4630,6 +4884,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4639,6 +4894,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4930,8 +5186,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4949,6 +5230,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5155,6 +5438,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -5163,6 +5448,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -5195,6 +5481,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -5204,6 +5491,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -5219,6 +5507,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -5230,6 +5519,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -5245,6 +5535,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -5254,6 +5545,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -5545,8 +5837,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -5564,6 +5881,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5789,12 +6108,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -5914,9 +6264,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -5995,6 +6358,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6011,6 +6375,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -6041,6 +6406,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -6052,6 +6418,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -6078,6 +6445,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6098,6 +6466,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6155,6 +6524,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -6163,12 +6533,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -6209,6 +6593,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -6255,6 +6640,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -6339,6 +6725,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -6419,6 +6806,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -6433,6 +6821,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6453,6 +6842,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6480,6 +6870,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -6534,6 +6925,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6555,6 +6947,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -6606,6 +6999,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -6717,6 +7111,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -6763,10 +7158,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -6798,6 +7195,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -6821,6 +7219,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -6864,6 +7263,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -6887,6 +7287,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -6928,6 +7329,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -6951,6 +7353,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -6994,6 +7397,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -7017,6 +7421,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -7062,6 +7467,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -7071,6 +7477,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -7086,6 +7493,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -7097,6 +7505,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -7112,6 +7521,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -7121,6 +7531,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -7412,8 +7823,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -7431,6 +7867,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -7673,6 +8111,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -7682,6 +8121,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -7697,6 +8137,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -7708,6 +8149,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -7723,6 +8165,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -7732,6 +8175,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -8023,8 +8467,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -8042,6 +8511,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -8248,6 +8719,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -8256,6 +8729,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -8288,6 +8762,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -8297,6 +8772,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -8312,6 +8788,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -8323,6 +8800,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -8338,6 +8816,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -8347,6 +8826,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -8638,8 +9118,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -8657,6 +9162,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -8882,12 +9389,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -9007,9 +9545,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -9088,6 +9639,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -9104,6 +9656,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -9134,6 +9687,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -9145,6 +9699,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -9171,6 +9726,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -9191,6 +9747,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -9248,6 +9805,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -9256,12 +9814,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -9302,6 +9874,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -9348,6 +9921,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -9432,6 +10006,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -9512,6 +10087,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -9526,6 +10102,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -9546,6 +10123,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -9573,6 +10151,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -9627,6 +10206,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -9648,6 +10228,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -9699,6 +10280,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -9799,9 +10381,3 @@ spec: storage: false subresources: status: {} -status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] diff --git a/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayservices.yaml b/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayservices.yaml index 6b5d0ac3b..4213a0c99 100644 --- a/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayservices.yaml +++ b/crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayservices.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.6.0 + controller-gen.kubebuilder.io/version: v0.13.0 name: rayservices.ray.io spec: group: ray.io @@ -52,6 +52,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -61,6 +62,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -76,6 +78,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -87,6 +90,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -102,6 +106,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -111,6 +116,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array idleTimeoutSeconds: @@ -122,6 +128,18 @@ spec: type: string resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -495,6 +513,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -541,10 +560,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -576,6 +597,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -599,6 +621,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -642,6 +665,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -665,6 +689,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -706,6 +731,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -729,6 +755,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -772,6 +799,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -795,6 +823,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -840,6 +869,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -849,6 +879,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -864,6 +895,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -875,6 +907,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -890,6 +923,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -899,6 +933,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1190,8 +1225,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1209,6 +1269,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -1451,6 +1513,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -1460,6 +1523,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -1475,6 +1539,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -1486,6 +1551,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -1501,6 +1567,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -1510,6 +1577,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -1801,8 +1869,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -1820,6 +1913,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2026,6 +2121,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -2034,6 +2131,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -2066,6 +2164,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -2075,6 +2174,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -2090,6 +2190,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -2101,6 +2202,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -2116,6 +2218,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -2125,6 +2228,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2416,8 +2520,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -2435,6 +2564,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -2660,12 +2791,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -2785,9 +2947,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -2866,6 +3041,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -2882,6 +3058,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -2912,6 +3089,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -2923,6 +3101,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -2949,6 +3128,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -2969,6 +3149,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3026,6 +3207,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -3034,12 +3216,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -3080,6 +3276,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -3126,6 +3323,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -3210,6 +3408,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -3290,6 +3489,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -3304,6 +3504,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -3324,6 +3525,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -3351,6 +3553,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -3405,6 +3608,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -3426,6 +3630,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -3477,6 +3682,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -3609,6 +3815,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: format: int32 type: integer @@ -3655,10 +3862,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: properties: @@ -3690,6 +3899,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3713,6 +3923,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3756,6 +3967,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3779,6 +3991,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3820,6 +4033,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3843,6 +4057,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3886,6 +4101,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: properties: matchExpressions: @@ -3909,6 +4125,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic namespaces: items: type: string @@ -3954,6 +4171,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -3963,6 +4181,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -3978,6 +4197,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -3989,6 +4209,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4004,6 +4225,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4013,6 +4235,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4304,8 +4527,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4323,6 +4571,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -4565,6 +4815,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -4574,6 +4825,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -4589,6 +4841,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -4600,6 +4853,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -4615,6 +4869,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -4624,6 +4879,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4915,8 +5171,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -4934,6 +5215,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5140,6 +5423,8 @@ spec: type: boolean hostPID: type: boolean + hostUsers: + type: boolean hostname: type: string imagePullSecrets: @@ -5148,6 +5433,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: items: @@ -5180,6 +5466,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic fieldRef: properties: apiVersion: @@ -5189,6 +5476,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: properties: containerName: @@ -5204,6 +5492,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: properties: key: @@ -5215,6 +5504,7 @@ spec: required: - key type: object + x-kubernetes-map-type: atomic type: object required: - name @@ -5230,6 +5520,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic prefix: type: string secretRef: @@ -5239,6 +5530,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -5530,8 +5822,33 @@ spec: format: int32 type: integer type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -5549,6 +5866,8 @@ spec: x-kubernetes-int-or-string: true type: object type: object + restartPolicy: + type: string securityContext: properties: allowPrivilegeEscalation: @@ -5774,12 +6093,43 @@ spec: - conditionType type: object type: array + resourceClaims: + items: + properties: + name: + type: string + source: + properties: + resourceClaimName: + type: string + resourceClaimTemplateName: + type: string + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map restartPolicy: type: string runtimeClassName: type: string schedulerName: type: string + schedulingGates: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map securityContext: properties: fsGroup: @@ -5899,9 +6249,22 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic maxSkew: format: int32 type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string topologyKey: type: string whenUnsatisfiable: @@ -5980,6 +6343,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -5996,6 +6360,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeID: type: string required: @@ -6026,6 +6391,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic csi: properties: driver: @@ -6037,6 +6403,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic readOnly: type: boolean volumeAttributes: @@ -6063,6 +6430,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6083,6 +6451,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6140,6 +6509,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: properties: apiGroup: @@ -6148,12 +6518,26 @@ spec: type: string name: type: string + namespace: + type: string required: - kind - name type: object resources: properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map limits: additionalProperties: anyOf: @@ -6194,6 +6578,7 @@ spec: type: string type: object type: object + x-kubernetes-map-type: atomic storageClassName: type: string volumeMode: @@ -6240,6 +6625,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -6324,6 +6710,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic targetPortal: type: string required: @@ -6404,6 +6791,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: properties: items: @@ -6418,6 +6806,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: format: int32 type: integer @@ -6438,6 +6827,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -6465,6 +6855,7 @@ spec: optional: type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: properties: audience: @@ -6519,6 +6910,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic user: type: string required: @@ -6540,6 +6932,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic sslEnabled: type: boolean storageMode: @@ -6591,6 +6984,7 @@ spec: name: type: string type: object + x-kubernetes-map-type: atomic volumeName: type: string volumeNamespace: @@ -6895,9 +7289,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string serveDeploymentStatuses: @@ -6906,9 +7297,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string status: @@ -6926,9 +7314,6 @@ spec: type: string isHealthy: type: boolean - lastUpdateTime: - format: date-time - type: string type: object rayClusterName: type: string @@ -6970,6 +7355,9 @@ spec: type: string type: object type: object + lastUpdateTime: + format: date-time + type: string observedGeneration: format: int64 type: integer @@ -6981,9 +7369,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string serveDeploymentStatuses: @@ -6992,9 +7377,6 @@ spec: healthLastUpdateTime: format: date-time type: string - lastUpdateTime: - format: date-time - type: string message: type: string status: @@ -7012,9 +7394,6 @@ spec: type: string isHealthy: type: boolean - lastUpdateTime: - format: date-time - type: string type: object rayClusterName: type: string @@ -7064,9 +7443,3 @@ spec: storage: false subresources: status: {} -status: - acceptedNames: - kind: '' - plural: '' - conditions: [] - storedVersions: [] diff --git a/crd-catalog/validatedpatterns/patterns-operator/gitops.hybrid-cloud-patterns.io/v1alpha1/patterns.yaml b/crd-catalog/validatedpatterns/patterns-operator/gitops.hybrid-cloud-patterns.io/v1alpha1/patterns.yaml index a3e96b116..ad4ef026a 100644 --- a/crd-catalog/validatedpatterns/patterns-operator/gitops.hybrid-cloud-patterns.io/v1alpha1/patterns.yaml +++ b/crd-catalog/validatedpatterns/patterns-operator/gitops.hybrid-cloud-patterns.io/v1alpha1/patterns.yaml @@ -100,8 +100,8 @@ spec: description: The git reference when deploying the clustergroup helm chart directly from a git repo Defaults to 'main'. (Only used when developing the clustergroup helm chart) type: string clusterGroupChartVersion: - default: 0.0.* - description: Which chart version for the clustergroup helm chart Defaults to "0.0.*" + default: 0.8.* + description: Which chart version for the clustergroup helm chart Defaults to "0.8.*" type: string clusterGroupGitRepoUrl: description: The url when deploying the clustergroup helm chart directly from a git repo Defaults to '' which means not used (Only used when developing the clustergroup helm chart) diff --git a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs index 4dce57944..6e3d58b89 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs @@ -283,6 +283,9 @@ pub struct ApplicationOperationSyncSourceKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -291,6 +294,36 @@ pub struct ApplicationOperationSyncSourceKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationOperationSyncSourceKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationOperationSyncSourceKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationOperationSyncSourceKustomizeReplicas { /// Number of replicas @@ -507,6 +540,9 @@ pub struct ApplicationOperationSyncSourcesKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -515,6 +551,36 @@ pub struct ApplicationOperationSyncSourcesKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationOperationSyncSourcesKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationOperationSyncSourcesKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationOperationSyncSourcesKustomizeReplicas { /// Number of replicas @@ -620,13 +686,13 @@ pub struct ApplicationSpec { /// Destination is a reference to the target Kubernetes server and namespace #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationDestination { - /// Name is an alternate way of specifying the target cluster by its symbolic name + /// Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, - /// Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API + /// Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set. #[serde(default, skip_serializing_if = "Option::is_none")] pub server: Option, } @@ -827,6 +893,9 @@ pub struct ApplicationSourceKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -835,6 +904,36 @@ pub struct ApplicationSourceKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationSourceKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationSourceKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationSourceKustomizeReplicas { /// Number of replicas @@ -1051,6 +1150,9 @@ pub struct ApplicationSourcesKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -1059,6 +1161,36 @@ pub struct ApplicationSourcesKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationSourcesKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationSourcesKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationSourcesKustomizeReplicas { /// Number of replicas @@ -1433,6 +1565,9 @@ pub struct ApplicationStatusHistorySourceKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -1441,6 +1576,36 @@ pub struct ApplicationStatusHistorySourceKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusHistorySourceKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusHistorySourceKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusHistorySourceKustomizeReplicas { /// Number of replicas @@ -1657,6 +1822,9 @@ pub struct ApplicationStatusHistorySourcesKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -1665,6 +1833,36 @@ pub struct ApplicationStatusHistorySourcesKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusHistorySourcesKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusHistorySourcesKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusHistorySourcesKustomizeReplicas { /// Number of replicas @@ -2010,6 +2208,9 @@ pub struct ApplicationStatusOperationStateOperationSyncSourceKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -2018,6 +2219,36 @@ pub struct ApplicationStatusOperationStateOperationSyncSourceKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateOperationSyncSourceKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateOperationSyncSourceKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusOperationStateOperationSyncSourceKustomizeReplicas { /// Number of replicas @@ -2234,6 +2465,9 @@ pub struct ApplicationStatusOperationStateOperationSyncSourcesKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -2242,6 +2476,36 @@ pub struct ApplicationStatusOperationStateOperationSyncSourcesKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateOperationSyncSourcesKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateOperationSyncSourcesKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusOperationStateOperationSyncSourcesKustomizeReplicas { /// Number of replicas @@ -2546,6 +2810,9 @@ pub struct ApplicationStatusOperationStateSyncResultSourceKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -2554,6 +2821,36 @@ pub struct ApplicationStatusOperationStateSyncResultSourceKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateSyncResultSourceKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateSyncResultSourceKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusOperationStateSyncResultSourceKustomizeReplicas { /// Number of replicas @@ -2770,6 +3067,9 @@ pub struct ApplicationStatusOperationStateSyncResultSourcesKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -2778,6 +3078,36 @@ pub struct ApplicationStatusOperationStateSyncResultSourcesKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateSyncResultSourcesKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusOperationStateSyncResultSourcesKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusOperationStateSyncResultSourcesKustomizeReplicas { /// Number of replicas @@ -2907,13 +3237,13 @@ pub struct ApplicationStatusSyncComparedTo { /// Destination is a reference to the application's destination used for comparison #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusSyncComparedToDestination { - /// Name is an alternate way of specifying the target cluster by its symbolic name + /// Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, - /// Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API + /// Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set. #[serde(default, skip_serializing_if = "Option::is_none")] pub server: Option, } @@ -3108,6 +3438,9 @@ pub struct ApplicationStatusSyncComparedToSourceKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -3116,6 +3449,36 @@ pub struct ApplicationStatusSyncComparedToSourceKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusSyncComparedToSourceKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusSyncComparedToSourceKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusSyncComparedToSourceKustomizeReplicas { /// Number of replicas @@ -3332,6 +3695,9 @@ pub struct ApplicationStatusSyncComparedToSourcesKustomize { /// Namespace sets the namespace that Kustomize adds to all resources #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + /// Patches is a list of Kustomize patches + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, /// Replicas is a list of Kustomize Replicas override specifications #[serde(default, skip_serializing_if = "Option::is_none")] pub replicas: Option>, @@ -3340,6 +3706,36 @@ pub struct ApplicationStatusSyncComparedToSourcesKustomize { pub version: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusSyncComparedToSourcesKustomizePatches { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub options: Option>, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patch: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub path: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ApplicationStatusSyncComparedToSourcesKustomizePatchesTarget { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationStatusSyncComparedToSourcesKustomizeReplicas { /// Number of replicas diff --git a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs index 52b3e4238..e2d048a58 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs @@ -70,13 +70,13 @@ pub struct AppProjectClusterResourceWhitelist { /// ApplicationDestination holds information about the application's destination #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AppProjectDestinations { - /// Name is an alternate way of specifying the target cluster by its symbolic name + /// Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, - /// Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API + /// Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set. #[serde(default, skip_serializing_if = "Option::is_none")] pub server: Option, } diff --git a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs index aa90cd24e..d107912f9 100644 --- a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs +++ b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs @@ -17,7 +17,7 @@ pub struct VerticalPodAutoscalerSpec { /// Recommender responsible for generating recommendation for this object. List should be empty (then the default recommender will generate the recommendation) or contain exactly one recommender. #[serde(default, skip_serializing_if = "Option::is_none")] pub recommenders: Option>, - /// Controls how the autoscaler computes recommended resources. The resource policy may be used to set constraints on the recommendations for individual containers. If not specified, the autoscaler computes recommended resources for all containers in the pod, without additional constraints. + /// Controls how the autoscaler computes recommended resources. The resource policy may be used to set constraints on the recommendations for individual containers. If any individual containers need to be excluded from getting the VPA recommendations, then it must be disabled explicitly by setting mode to "Off" under containerPolicies. If not specified, the autoscaler computes recommended resources for all containers in the pod, without additional constraints. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourcePolicy")] pub resource_policy: Option, /// TargetRef points to the controller managing the set of pods for the autoscaler to control - e.g. Deployment, StatefulSet. VerticalPodAutoscaler can be targeted at controller implementing scale subresource (the pod set is retrieved from the controller's ScaleStatus) or some well known controllers (e.g. for DaemonSet the pod set is read from the controller's spec). If VerticalPodAutoscaler cannot use specified target it will report ConfigUnsupported condition. Note that VerticalPodAutoscaler does not require full implementation of scale subresource - it will not use it to modify the replica count. The only thing retrieved is a label selector matching pods grouped by the target resource. @@ -35,7 +35,7 @@ pub struct VerticalPodAutoscalerRecommenders { pub name: String, } -/// Controls how the autoscaler computes recommended resources. The resource policy may be used to set constraints on the recommendations for individual containers. If not specified, the autoscaler computes recommended resources for all containers in the pod, without additional constraints. +/// Controls how the autoscaler computes recommended resources. The resource policy may be used to set constraints on the recommendations for individual containers. If any individual containers need to be excluded from getting the VPA recommendations, then it must be disabled explicitly by setting mode to "Off" under containerPolicies. If not specified, the autoscaler computes recommended resources for all containers in the pod, without additional constraints. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct VerticalPodAutoscalerResourcePolicy { /// Per-container resource policies. @@ -113,7 +113,7 @@ pub struct VerticalPodAutoscalerUpdatePolicyEvictionRequirements { #[serde(rename = "changeRequirement")] pub change_requirement: VerticalPodAutoscalerUpdatePolicyEvictionRequirementsChangeRequirement, /// Resources is a list of one or more resources that the condition applies to. If more than one resource is given, the EvictionRequirement is fulfilled if at least one resource meets `changeRequirement`. - pub resource: Vec, + pub resources: Vec, } /// EvictionRequirement defines a single condition which needs to be true in order to evict a Pod diff --git a/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs b/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs index a31f9abe3..eabb01c7e 100644 --- a/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs +++ b/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/binding.operators.coreos.com/v1alpha1/bindablekinds.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// BindableKindsStatus defines the observed state of BindableKinds diff --git a/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs b/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs index daee68ecb..75707a734 100644 --- a/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs +++ b/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/bus.volcano.sh/v1alpha1/commands.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// TargetObject defines the target object of this command. diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs index 39dda37fc..cbd9a00f8 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumendpoints.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs index b2a72863c..4b18c9791 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumendpointslices.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// CoreCiliumEndpoint is slim version of status of CiliumEndpoint. diff --git a/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs b/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs index 18c766797..ce71ed8dd 100644 --- a/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs +++ b/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs @@ -17,6 +17,9 @@ pub struct ManagedClusterSpec { /// ClusterID, a Random (Version 4) UUID, is a unique value in time and space value representing for child cluster. It is typically generated by the clusternet agent on the successful creation of a "clusternet-agent" Lease in the child cluster. Also it is not allowed to change on PUT operations. #[serde(rename = "clusterId")] pub cluster_id: String, + /// ClusterInitBaseName denotes the name of a Base used for initialization. Also a taint "clusters.clusternet.io/initialization:NoSchedule" will be added during the operation and removed after successful initialization. If this cluster has got an annotation "clusters.clusternet.io/skip-cluster-init", this field will be empty. Normally this field is fully managed by clusternet-controller-manager and immutable. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterInitBaseName")] + pub cluster_init_base_name: Option, /// ClusterType denotes the type of the child cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterType")] pub cluster_type: Option, diff --git a/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs b/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs index 79470de44..cd9fea859 100644 --- a/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs +++ b/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/config.grafana.com/v1/projectconfigs.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs b/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs index 625b128f4..240b0970f 100644 --- a/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs +++ b/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/config.karmada.io/v1alpha1/resourceinterpreterwebhookconfigurations.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// ResourceInterpreterWebhook describes the webhook as well as the resources and operations it applies to. diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs index a8ad8e117..04e02ba6a 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs @@ -24,13 +24,31 @@ pub struct CacheSubnetGroupSpec { #[serde(rename = "cacheSubnetGroupName")] pub cache_subnet_group_name: String, /// A list of VPC subnet IDs for the cache subnet group. - #[serde(rename = "subnetIDs")] - pub subnet_i_ds: Vec, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "subnetIDs")] + pub subnet_i_ds: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "subnetRefs")] + pub subnet_refs: Option>, /// A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted. #[serde(default, skip_serializing_if = "Option::is_none")] pub tags: Option>, } +/// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: +/// from: name: my-api +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CacheSubnetGroupSubnetRefs { + /// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + #[serde(default, skip_serializing_if = "Option::is_none")] + pub from: Option, +} + +/// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CacheSubnetGroupSubnetRefsFrom { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, +} + /// A tag that can be added to an ElastiCache cluster or replication group. Tags are composed of a Key/Value pair. You can use tags to categorize and track all your ElastiCache resources, with the exception of global replication group. When you add or remove tags on replication groups, those actions will be replicated to all nodes in the replication group. A tag with a null Value is permitted. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CacheSubnetGroupTags { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs index ae94f72d9..154180cd0 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs @@ -53,6 +53,10 @@ pub struct ReplicationGroupSpec { /// * To create a Redis (cluster mode enabled) replication group, use CacheParameterGroupName=default.redis3.2.cluster.on. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cacheParameterGroupName")] pub cache_parameter_group_name: Option, + /// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: + /// from: name: my-api + #[serde(default, skip_serializing_if = "Option::is_none", rename = "cacheParameterGroupRef")] + pub cache_parameter_group_ref: Option, /// A list of cache security group names to associate with this replication group. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cacheSecurityGroupNames")] pub cache_security_group_names: Option>, @@ -60,6 +64,10 @@ pub struct ReplicationGroupSpec { /// If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SubnetGroups.html). #[serde(default, skip_serializing_if = "Option::is_none", rename = "cacheSubnetGroupName")] pub cache_subnet_group_name: Option, + /// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: + /// from: name: my-api + #[serde(default, skip_serializing_if = "Option::is_none", rename = "cacheSubnetGroupRef")] + pub cache_subnet_group_ref: Option, /// Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when using r6gd nodes. For more information, see Data tiering (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/data-tiering.html). #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataTieringEnabled")] pub data_tiering_enabled: Option, @@ -134,6 +142,8 @@ pub struct ReplicationGroupSpec { /// Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud (Amazon VPC). #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityGroupIDs")] pub security_group_i_ds: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityGroupRefs")] + pub security_group_refs: Option>, /// A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new replication group. The Amazon S3 object name in the ARN cannot contain any commas. The new replication group will have the number of node groups (console: shards) specified by the parameter NumNodeGroups or the number of node groups configured by NodeGroupConfiguration regardless of the number of ARNs specified here. /// Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb #[serde(default, skip_serializing_if = "Option::is_none", rename = "snapshotARNs")] @@ -187,6 +197,38 @@ pub struct ReplicationGroupAuthToken { pub namespace: Option, } +/// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: +/// from: name: my-api +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ReplicationGroupCacheParameterGroupRef { + /// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + #[serde(default, skip_serializing_if = "Option::is_none")] + pub from: Option, +} + +/// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ReplicationGroupCacheParameterGroupRefFrom { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, +} + +/// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: +/// from: name: my-api +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ReplicationGroupCacheSubnetGroupRef { + /// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + #[serde(default, skip_serializing_if = "Option::is_none")] + pub from: Option, +} + +/// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ReplicationGroupCacheSubnetGroupRefFrom { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, +} + /// Specifies the destination, format and type of the logs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ReplicationGroupLogDeliveryConfigurations { @@ -247,6 +289,22 @@ pub struct ReplicationGroupNodeGroupConfiguration { pub slots: Option, } +/// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference type to provide more user friendly syntax for references using 'from' field Ex: APIIDRef: +/// from: name: my-api +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ReplicationGroupSecurityGroupRefs { + /// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) + #[serde(default, skip_serializing_if = "Option::is_none")] + pub from: Option, +} + +/// AWSResourceReference provides all the values necessary to reference another k8s resource for finding the identifier(Id/ARN/Name) +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ReplicationGroupSecurityGroupRefsFrom { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, +} + /// A tag that can be added to an ElastiCache cluster or replication group. Tags are composed of a Key/Value pair. You can use tags to categorize and track all your ElastiCache resources, with the exception of global replication group. When you add or remove tags on replication groups, those actions will be replicated to all nodes in the replication group. A tag with a null Value is permitted. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ReplicationGroupTags { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs index e3d92020e..daff97a0b 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs @@ -789,7 +789,7 @@ pub struct ClusterSecretStoreProviderOracle { pub encryption_key: Option, /// The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. #[serde(default, skip_serializing_if = "Option::is_none", rename = "principalType")] - pub principal_type: Option, + pub principal_type: Option, /// Region is the region where vault is located. pub region: String, /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. @@ -848,6 +848,16 @@ pub struct ClusterSecretStoreProviderOracleAuthSecretRefPrivatekey { pub namespace: Option, } +/// Oracle configures this store to sync secrets using Oracle Vault provider +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ClusterSecretStoreProviderOraclePrincipalType { + #[serde(rename = "")] + KopiumEmpty, + UserPrincipal, + InstancePrincipal, + Workload, +} + /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ClusterSecretStoreProviderOracleServiceAccountRef { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs index 8d94539d1..712ede649 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs @@ -790,7 +790,7 @@ pub struct SecretStoreProviderOracle { pub encryption_key: Option, /// The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. #[serde(default, skip_serializing_if = "Option::is_none", rename = "principalType")] - pub principal_type: Option, + pub principal_type: Option, /// Region is the region where vault is located. pub region: String, /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. @@ -849,6 +849,16 @@ pub struct SecretStoreProviderOracleAuthSecretRefPrivatekey { pub namespace: Option, } +/// Oracle configures this store to sync secrets using Oracle Vault provider +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SecretStoreProviderOraclePrincipalType { + #[serde(rename = "")] + KopiumEmpty, + UserPrincipal, + InstancePrincipal, + Workload, +} + /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct SecretStoreProviderOracleServiceAccountRef { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs index 5fa54d4c7..8199e3486 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs @@ -1268,7 +1268,7 @@ pub struct ClusterSecretStoreProviderOracle { pub encryption_key: Option, /// The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. #[serde(default, skip_serializing_if = "Option::is_none", rename = "principalType")] - pub principal_type: Option, + pub principal_type: Option, /// Region is the region where vault is located. pub region: String, /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. @@ -1327,6 +1327,16 @@ pub struct ClusterSecretStoreProviderOracleAuthSecretRefPrivatekey { pub namespace: Option, } +/// Oracle configures this store to sync secrets using Oracle Vault provider +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ClusterSecretStoreProviderOraclePrincipalType { + #[serde(rename = "")] + KopiumEmpty, + UserPrincipal, + InstancePrincipal, + Workload, +} + /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ClusterSecretStoreProviderOracleServiceAccountRef { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs index 3e6b6f2de..40defa6ce 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs @@ -1269,7 +1269,7 @@ pub struct SecretStoreProviderOracle { pub encryption_key: Option, /// The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity. #[serde(default, skip_serializing_if = "Option::is_none", rename = "principalType")] - pub principal_type: Option, + pub principal_type: Option, /// Region is the region where vault is located. pub region: String, /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. @@ -1328,6 +1328,16 @@ pub struct SecretStoreProviderOracleAuthSecretRefPrivatekey { pub namespace: Option, } +/// Oracle configures this store to sync secrets using Oracle Vault provider +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SecretStoreProviderOraclePrincipalType { + #[serde(rename = "")] + KopiumEmpty, + UserPrincipal, + InstancePrincipal, + Workload, +} + /// ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct SecretStoreProviderOracleServiceAccountRef { diff --git a/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs b/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs index fd7ea55c1..342837366 100644 --- a/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs +++ b/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs @@ -71,7 +71,7 @@ pub struct PatternMultiSourceConfig { /// The git reference when deploying the clustergroup helm chart directly from a git repo Defaults to 'main'. (Only used when developing the clustergroup helm chart) #[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterGroupChartGitRevision")] pub cluster_group_chart_git_revision: Option, - /// Which chart version for the clustergroup helm chart Defaults to "0.0.*" + /// Which chart version for the clustergroup helm chart Defaults to "0.8.*" #[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterGroupChartVersion")] pub cluster_group_chart_version: Option, /// The url when deploying the clustergroup helm chart directly from a git repo Defaults to '' which means not used (Only used when developing the clustergroup helm chart) diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/mod.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/mod.rs index 0e519c06a..9795e3ba8 100644 --- a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/mod.rs +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/mod.rs @@ -1 +1,2 @@ pub mod v2beta1; +pub mod v2beta2; diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs index a190ed02e..b22b53f07 100644 --- a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs @@ -595,12 +595,28 @@ pub struct HelmReleaseStatus { /// HelmChart is the namespaced name of the HelmChart resource created by the controller for the HelmRelease. #[serde(default, skip_serializing_if = "Option::is_none", rename = "helmChart")] pub helm_chart: Option, + /// History holds the history of Helm releases performed for this HelmRelease up to the last successfully completed release. + /// Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub history: Option>, /// InstallFailures is the install failure count against the latest desired state. It is reset after a successful reconciliation. #[serde(default, skip_serializing_if = "Option::is_none", rename = "installFailures")] pub install_failures: Option, /// LastAppliedRevision is the revision of the last successfully applied source. #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAppliedRevision")] pub last_applied_revision: Option, + /// LastAttemptedConfigDigest is the digest for the config (better known as "values") of the last reconciliation attempt. + /// Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedConfigDigest")] + pub last_attempted_config_digest: Option, + /// LastAttemptedGeneration is the last generation the controller attempted to reconcile. + /// Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedGeneration")] + pub last_attempted_generation: Option, + /// LastAttemptedReleaseAction is the last release action performed for this HelmRelease. It is used to determine the active remediation strategy. + /// Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedReleaseAction")] + pub last_attempted_release_action: Option, /// LastAttemptedRevision is the revision of the last reconciliation attempt. #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedRevision")] pub last_attempted_revision: Option, @@ -616,6 +632,10 @@ pub struct HelmReleaseStatus { /// ObservedGeneration is the last observed generation. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, + /// StorageNamespace is the namespace of the Helm release storage for the current release. + /// Note: this field is provisional to the v2beta2 API, and not actively used by v2beta1 HelmReleases. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageNamespace")] + pub storage_namespace: Option, /// UpgradeFailures is the upgrade failure count against the latest desired state. It is reset after a successful reconciliation. #[serde(default, skip_serializing_if = "Option::is_none", rename = "upgradeFailures")] pub upgrade_failures: Option, @@ -653,3 +673,56 @@ pub enum HelmReleaseStatusConditionsStatus { Unknown, } +/// Snapshot captures a point-in-time copy of the status information for a Helm release, as managed by the controller. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct HelmReleaseStatusHistory { + /// APIVersion is the API version of the Snapshot. Provisional: when the calculation method of the Digest field is changed, this field will be used to distinguish between the old and new methods. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] + pub api_version: Option, + /// ChartName is the chart name of the release object in storage. + #[serde(rename = "chartName")] + pub chart_name: String, + /// ChartVersion is the chart version of the release object in storage. + #[serde(rename = "chartVersion")] + pub chart_version: String, + /// ConfigDigest is the checksum of the config (better known as "values") of the release object in storage. It has the format of `:`. + #[serde(rename = "configDigest")] + pub config_digest: String, + /// Deleted is when the release was deleted. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub deleted: Option, + /// Digest is the checksum of the release object in storage. It has the format of `:`. + pub digest: String, + /// FirstDeployed is when the release was first deployed. + #[serde(rename = "firstDeployed")] + pub first_deployed: String, + /// LastDeployed is when the release was last deployed. + #[serde(rename = "lastDeployed")] + pub last_deployed: String, + /// Name is the name of the release. + pub name: String, + /// Namespace is the namespace the release is deployed to. + pub namespace: String, + /// Status is the current state of the release. + pub status: String, + /// TestHooks is the list of test hooks for the release as observed to be run by the controller. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "testHooks")] + pub test_hooks: Option>, + /// Version is the version of the release object in storage. + pub version: i64, +} + +/// TestHooks is the list of test hooks for the release as observed to be run by the controller. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct HelmReleaseStatusHistoryTestHooks { + /// LastCompleted is the time the test hook last completed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastCompleted")] + pub last_completed: Option, + /// LastStarted is the time the test hook was last started. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastStarted")] + pub last_started: Option, + /// Phase the test hook was observed to be in. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub phase: Option, +} + diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs new file mode 100644 index 000000000..286006144 --- /dev/null +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs @@ -0,0 +1,745 @@ +// WARNING: generated by kopium - manual changes will be overwritten +// kopium command: kopium --docs --filename=./crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta2/helmreleases.yaml --derive=Default --derive=PartialEq +// kopium version: 0.16.2 + +use kube::CustomResource; +use serde::{Serialize, Deserialize}; +use std::collections::BTreeMap; +use std::collections::HashMap; + +/// HelmReleaseSpec defines the desired state of a Helm release. +#[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[kube(group = "helm.toolkit.fluxcd.io", version = "v2beta2", kind = "HelmRelease", plural = "helmreleases")] +#[kube(namespaced)] +#[kube(status = "HelmReleaseStatus")] +#[kube(schema = "disabled")] +pub struct HelmReleaseSpec { + /// Chart defines the template of the v1beta2.HelmChart that should be created for this HelmRelease. + pub chart: HelmReleaseChart, + /// DependsOn may contain a meta.NamespacedObjectReference slice with references to HelmRelease resources that must be ready before this HelmRelease can be reconciled. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "dependsOn")] + pub depends_on: Option>, + /// Install holds the configuration for Helm install actions for this HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub install: Option, + /// Interval at which to reconcile the Helm release. + pub interval: String, + /// KubeConfig for reconciling the HelmRelease on a remote cluster. When used in combination with HelmReleaseSpec.ServiceAccountName, forces the controller to act on behalf of that Service Account at the target cluster. If the --default-service-account flag is set, its value will be used as a controller level fallback for when HelmReleaseSpec.ServiceAccountName is empty. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "kubeConfig")] + pub kube_config: Option, + /// MaxHistory is the number of revisions saved by Helm for this HelmRelease. Use '0' for an unlimited number of revisions; defaults to '5'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxHistory")] + pub max_history: Option, + /// PersistentClient tells the controller to use a persistent Kubernetes client for this release. When enabled, the client will be reused for the duration of the reconciliation, instead of being created and destroyed for each (step of a) Helm action. + /// This can improve performance, but may cause issues with some Helm charts that for example do create Custom Resource Definitions during installation outside Helm's CRD lifecycle hooks, which are then not observed to be available by e.g. post-install hooks. + /// If not set, it defaults to true. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentClient")] + pub persistent_client: Option, + /// PostRenderers holds an array of Helm PostRenderers, which will be applied in order of their definition. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "postRenderers")] + pub post_renderers: Option>, + /// ReleaseName used for the Helm release. Defaults to a composition of '[TargetNamespace-]Name'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "releaseName")] + pub release_name: Option, + /// Rollback holds the configuration for Helm rollback actions for this HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub rollback: Option, + /// The name of the Kubernetes service account to impersonate when reconciling this HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccountName")] + pub service_account_name: Option, + /// StorageNamespace used for the Helm storage. Defaults to the namespace of the HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageNamespace")] + pub storage_namespace: Option, + /// Suspend tells the controller to suspend reconciliation for this HelmRelease, it does not apply to already started reconciliations. Defaults to false. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub suspend: Option, + /// TargetNamespace to target when performing operations for the HelmRelease. Defaults to the namespace of the HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetNamespace")] + pub target_namespace: Option, + /// Test holds the configuration for Helm test actions for this HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub test: Option, + /// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm action. Defaults to '5m0s'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub timeout: Option, + /// Uninstall holds the configuration for Helm uninstall actions for this HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub uninstall: Option, + /// Upgrade holds the configuration for Helm upgrade actions for this HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub upgrade: Option, + /// Values holds the values for this Helm release. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub values: Option>, + /// ValuesFrom holds references to resources containing Helm values for this HelmRelease, and information about how they should be merged. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valuesFrom")] + pub values_from: Option>, +} + +/// Chart defines the template of the v1beta2.HelmChart that should be created for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseChart { + /// ObjectMeta holds the template for metadata like labels and annotations. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub metadata: Option, + /// Spec holds the template for the v1beta2.HelmChartSpec for this HelmRelease. + pub spec: HelmReleaseChartSpec, +} + +/// ObjectMeta holds the template for metadata like labels and annotations. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseChartMetadata { + /// Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ + #[serde(default, skip_serializing_if = "Option::is_none")] + pub annotations: Option>, + /// Map of string keys and values that can be used to organize and categorize (scope and select) objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ + #[serde(default, skip_serializing_if = "Option::is_none")] + pub labels: Option>, +} + +/// Spec holds the template for the v1beta2.HelmChartSpec for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseChartSpec { + /// The name or path the Helm chart is available at in the SourceRef. + pub chart: String, + /// Interval at which to check the v1.Source for updates. Defaults to 'HelmReleaseSpec.Interval'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub interval: Option, + /// Determines what enables the creation of a new artifact. Valid values are ('ChartVersion', 'Revision'). See the documentation of the values for an explanation on their behavior. Defaults to ChartVersion when omitted. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "reconcileStrategy")] + pub reconcile_strategy: Option, + /// The name and namespace of the v1.Source the chart is available at. + #[serde(rename = "sourceRef")] + pub source_ref: HelmReleaseChartSpecSourceRef, + /// Alternative values file to use as the default chart values, expected to be a relative path in the SourceRef. Deprecated in favor of ValuesFiles, for backwards compatibility the file defined here is merged before the ValuesFiles items. Ignored when omitted. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valuesFile")] + pub values_file: Option, + /// Alternative list of values files to use as the chart values (values.yaml is not included by default), expected to be a relative path in the SourceRef. Values files are merged in the order of this list with the last file overriding the first. Ignored when omitted. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valuesFiles")] + pub values_files: Option>, + /// Verify contains the secret name containing the trusted public keys used to verify the signature and specifies which provider to use to check whether OCI image is authentic. This field is only supported for OCI sources. Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub verify: Option, + /// Version semver expression, ignored for charts from v1beta2.GitRepository and v1beta2.Bucket sources. Defaults to latest when omitted. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + +/// Spec holds the template for the v1beta2.HelmChartSpec for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseChartSpecReconcileStrategy { + ChartVersion, + Revision, +} + +/// The name and namespace of the v1.Source the chart is available at. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseChartSpecSourceRef { + /// APIVersion of the referent. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] + pub api_version: Option, + /// Kind of the referent. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + /// Name of the referent. + pub name: String, + /// Namespace of the referent. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, +} + +/// The name and namespace of the v1.Source the chart is available at. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseChartSpecSourceRefKind { + HelmRepository, + GitRepository, + Bucket, +} + +/// Verify contains the secret name containing the trusted public keys used to verify the signature and specifies which provider to use to check whether OCI image is authentic. This field is only supported for OCI sources. Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseChartSpecVerify { + /// Provider specifies the technology used to sign the OCI Helm chart. + pub provider: HelmReleaseChartSpecVerifyProvider, + /// SecretRef specifies the Kubernetes Secret containing the trusted public keys. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] + pub secret_ref: Option, +} + +/// Verify contains the secret name containing the trusted public keys used to verify the signature and specifies which provider to use to check whether OCI image is authentic. This field is only supported for OCI sources. Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseChartSpecVerifyProvider { + #[serde(rename = "cosign")] + Cosign, +} + +/// SecretRef specifies the Kubernetes Secret containing the trusted public keys. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseChartSpecVerifySecretRef { + /// Name of the referent. + pub name: String, +} + +/// NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any namespace. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseDependsOn { + /// Name of the referent. + pub name: String, + /// Namespace of the referent, when not specified it acts as LocalObjectReference. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, +} + +/// Install holds the configuration for Helm install actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseInstall { + /// CRDs upgrade CRDs from the Helm Chart's crds directory according to the CRD upgrade policy provided here. Valid values are `Skip`, `Create` or `CreateReplace`. Default is `Create` and if omitted CRDs are installed but not updated. + /// Skip: do neither install nor replace (update) any CRDs. + /// Create: new CRDs are created, existing CRDs are neither updated nor deleted. + /// CreateReplace: new CRDs are created, existing CRDs are updated (replaced) but not deleted. + /// By default, CRDs are applied (installed) during Helm install action. With this option users can opt in to CRD replace existing CRDs on Helm install actions, which is not (yet) natively supported by Helm. https://helm.sh/docs/chart_best_practices/custom_resource_definitions. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub crds: Option, + /// CreateNamespace tells the Helm install action to create the HelmReleaseSpec.TargetNamespace if it does not exist yet. On uninstall, the namespace will not be garbage collected. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "createNamespace")] + pub create_namespace: Option, + /// DisableHooks prevents hooks from running during the Helm install action. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableHooks")] + pub disable_hooks: Option, + /// DisableOpenAPIValidation prevents the Helm install action from validating rendered templates against the Kubernetes OpenAPI Schema. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableOpenAPIValidation")] + pub disable_open_api_validation: Option, + /// DisableWait disables the waiting for resources to be ready after a Helm install has been performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWait")] + pub disable_wait: Option, + /// DisableWaitForJobs disables waiting for jobs to complete after a Helm install has been performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWaitForJobs")] + pub disable_wait_for_jobs: Option, + /// Remediation holds the remediation configuration for when the Helm install action for the HelmRelease fails. The default is to not perform any action. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub remediation: Option, + /// Replace tells the Helm install action to re-use the 'ReleaseName', but only if that name is a deleted release which remains in the history. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub replace: Option, + /// SkipCRDs tells the Helm install action to not install any CRDs. By default, CRDs are installed if not already present. + /// Deprecated use CRD policy (`crds`) attribute with value `Skip` instead. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "skipCRDs")] + pub skip_cr_ds: Option, + /// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm install action. Defaults to 'HelmReleaseSpec.Timeout'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub timeout: Option, +} + +/// Install holds the configuration for Helm install actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseInstallCrds { + Skip, + Create, + CreateReplace, +} + +/// Remediation holds the remediation configuration for when the Helm install action for the HelmRelease fails. The default is to not perform any action. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseInstallRemediation { + /// IgnoreTestFailures tells the controller to skip remediation when the Helm tests are run after an install action but fail. Defaults to 'Test.IgnoreFailures'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ignoreTestFailures")] + pub ignore_test_failures: Option, + /// RemediateLastFailure tells the controller to remediate the last failure, when no retries remain. Defaults to 'false'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediateLastFailure")] + pub remediate_last_failure: Option, + /// Retries is the number of retries that should be attempted on failures before bailing. Remediation, using an uninstall, is performed between each attempt. Defaults to '0', a negative integer equals to unlimited retries. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub retries: Option, +} + +/// KubeConfig for reconciling the HelmRelease on a remote cluster. When used in combination with HelmReleaseSpec.ServiceAccountName, forces the controller to act on behalf of that Service Account at the target cluster. If the --default-service-account flag is set, its value will be used as a controller level fallback for when HelmReleaseSpec.ServiceAccountName is empty. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseKubeConfig { + /// SecretRef holds the name of a secret that contains a key with the kubeconfig file as the value. If no key is set, the key will default to 'value'. It is recommended that the kubeconfig is self-contained, and the secret is regularly updated if credentials such as a cloud-access-token expire. Cloud specific `cmd-path` auth helpers will not function without adding binaries and credentials to the Pod that is responsible for reconciling Kubernetes resources. + #[serde(rename = "secretRef")] + pub secret_ref: HelmReleaseKubeConfigSecretRef, +} + +/// SecretRef holds the name of a secret that contains a key with the kubeconfig file as the value. If no key is set, the key will default to 'value'. It is recommended that the kubeconfig is self-contained, and the secret is regularly updated if credentials such as a cloud-access-token expire. Cloud specific `cmd-path` auth helpers will not function without adding binaries and credentials to the Pod that is responsible for reconciling Kubernetes resources. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseKubeConfigSecretRef { + /// Key in the Secret, when not specified an implementation-specific default key is used. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub key: Option, + /// Name of the Secret. + pub name: String, +} + +/// PostRenderer contains a Helm PostRenderer specification. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderers { + /// Kustomization to apply as PostRenderer. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kustomize: Option, +} + +/// Kustomization to apply as PostRenderer. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomize { + /// Images is a list of (image name, new name, new tag or digest) for changing image names, tags or digests. This can also be achieved with a patch, but this operator is simpler to specify. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub images: Option>, + /// Strategic merge and JSON patches, defined as inline YAML objects, capable of targeting objects based on kind, label and annotation selectors. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub patches: Option>, + /// JSON 6902 patches, defined as inline YAML objects. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "patchesJson6902")] + pub patches_json6902: Option>, + /// Strategic merge patches, defined as inline YAML objects. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "patchesStrategicMerge")] + pub patches_strategic_merge: Option>>, +} + +/// Image contains an image name, a new name, a new tag or digest, which will replace the original name and tag. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomizeImages { + /// Digest is the value used to replace the original image tag. If digest is present NewTag value is ignored. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub digest: Option, + /// Name is a tag-less image name. + pub name: String, + /// NewName is the value used to replace the original name. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "newName")] + pub new_name: Option, + /// NewTag is the value used to replace the original tag. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "newTag")] + pub new_tag: Option, +} + +/// Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should be applied to. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomizePatches { + /// Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with an array of operation objects. + pub patch: String, + /// Target points to the resources that the patch document should be applied to. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub target: Option, +} + +/// Target points to the resources that the patch document should be applied to. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomizePatchesTarget { + /// AnnotationSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource annotations. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + /// Group is the API group to select resources from. Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + /// Kind of the API Group to select resources from. Together with Group and Version it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + /// LabelSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource labels. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + /// Name to match resources with. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Namespace to select resources from. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + /// Version of the API Group to select resources from. Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + +/// JSON6902Patch contains a JSON6902 patch and the target the patch should be applied to. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomizePatchesJson6902 { + /// Patch contains the JSON6902 patch document with an array of operation objects. + pub patch: Vec, + /// Target points to the resources that the patch document should be applied to. + pub target: HelmReleasePostRenderersKustomizePatchesJson6902Target, +} + +/// JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4 +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomizePatchesJson6902Patch { + /// From contains a JSON-pointer value that references a location within the target document where the operation is performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub from: Option, + /// Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4 + pub op: HelmReleasePostRenderersKustomizePatchesJson6902PatchOp, + /// Path contains the JSON-pointer value that references a location within the target document where the operation is performed. The meaning of the value depends on the value of Op. + pub path: String, + /// Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option>, +} + +/// JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4 +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleasePostRenderersKustomizePatchesJson6902PatchOp { + #[serde(rename = "test")] + Test, + #[serde(rename = "remove")] + Remove, + #[serde(rename = "add")] + Add, + #[serde(rename = "replace")] + Replace, + #[serde(rename = "move")] + Move, + #[serde(rename = "copy")] + Copy, +} + +/// Target points to the resources that the patch document should be applied to. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleasePostRenderersKustomizePatchesJson6902Target { + /// AnnotationSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource annotations. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "annotationSelector")] + pub annotation_selector: Option, + /// Group is the API group to select resources from. Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + #[serde(default, skip_serializing_if = "Option::is_none")] + pub group: Option, + /// Kind of the API Group to select resources from. Together with Group and Version it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + #[serde(default, skip_serializing_if = "Option::is_none")] + pub kind: Option, + /// LabelSelector is a string that follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api It matches with the resource labels. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] + pub label_selector: Option, + /// Name to match resources with. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Namespace to select resources from. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, + /// Version of the API Group to select resources from. Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md + #[serde(default, skip_serializing_if = "Option::is_none")] + pub version: Option, +} + +/// Rollback holds the configuration for Helm rollback actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseRollback { + /// CleanupOnFail allows deletion of new resources created during the Helm rollback action when it fails. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "cleanupOnFail")] + pub cleanup_on_fail: Option, + /// DisableHooks prevents hooks from running during the Helm rollback action. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableHooks")] + pub disable_hooks: Option, + /// DisableWait disables the waiting for resources to be ready after a Helm rollback has been performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWait")] + pub disable_wait: Option, + /// DisableWaitForJobs disables waiting for jobs to complete after a Helm rollback has been performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWaitForJobs")] + pub disable_wait_for_jobs: Option, + /// Force forces resource updates through a replacement strategy. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub force: Option, + /// Recreate performs pod restarts for the resource if applicable. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub recreate: Option, + /// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm rollback action. Defaults to 'HelmReleaseSpec.Timeout'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub timeout: Option, +} + +/// Test holds the configuration for Helm test actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseTest { + /// Enable enables Helm test actions for this HelmRelease after an Helm install or upgrade action has been performed. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub enable: Option, + /// Filters is a list of tests to run or exclude from running. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub filters: Option>, + /// IgnoreFailures tells the controller to skip remediation when the Helm tests are run but fail. Can be overwritten for tests run after install or upgrade actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ignoreFailures")] + pub ignore_failures: Option, + /// Timeout is the time to wait for any individual Kubernetes operation during the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub timeout: Option, +} + +/// Filter holds the configuration for individual Helm test filters. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseTestFilters { + /// Exclude specifies whether the named test should be excluded. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub exclude: Option, + /// Name is the name of the test. + pub name: String, +} + +/// Uninstall holds the configuration for Helm uninstall actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseUninstall { + /// DeletionPropagation specifies the deletion propagation policy when a Helm uninstall is performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "deletionPropagation")] + pub deletion_propagation: Option, + /// DisableHooks prevents hooks from running during the Helm rollback action. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableHooks")] + pub disable_hooks: Option, + /// DisableWait disables waiting for all the resources to be deleted after a Helm uninstall is performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWait")] + pub disable_wait: Option, + /// KeepHistory tells Helm to remove all associated resources and mark the release as deleted, but retain the release history. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "keepHistory")] + pub keep_history: Option, + /// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm uninstall action. Defaults to 'HelmReleaseSpec.Timeout'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub timeout: Option, +} + +/// Uninstall holds the configuration for Helm uninstall actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseUninstallDeletionPropagation { + #[serde(rename = "background")] + Background, + #[serde(rename = "foreground")] + Foreground, + #[serde(rename = "orphan")] + Orphan, +} + +/// Upgrade holds the configuration for Helm upgrade actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseUpgrade { + /// CleanupOnFail allows deletion of new resources created during the Helm upgrade action when it fails. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "cleanupOnFail")] + pub cleanup_on_fail: Option, + /// CRDs upgrade CRDs from the Helm Chart's crds directory according to the CRD upgrade policy provided here. Valid values are `Skip`, `Create` or `CreateReplace`. Default is `Skip` and if omitted CRDs are neither installed nor upgraded. + /// Skip: do neither install nor replace (update) any CRDs. + /// Create: new CRDs are created, existing CRDs are neither updated nor deleted. + /// CreateReplace: new CRDs are created, existing CRDs are updated (replaced) but not deleted. + /// By default, CRDs are not applied during Helm upgrade action. With this option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm. https://helm.sh/docs/chart_best_practices/custom_resource_definitions. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub crds: Option, + /// DisableHooks prevents hooks from running during the Helm upgrade action. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableHooks")] + pub disable_hooks: Option, + /// DisableOpenAPIValidation prevents the Helm upgrade action from validating rendered templates against the Kubernetes OpenAPI Schema. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableOpenAPIValidation")] + pub disable_open_api_validation: Option, + /// DisableWait disables the waiting for resources to be ready after a Helm upgrade has been performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWait")] + pub disable_wait: Option, + /// DisableWaitForJobs disables waiting for jobs to complete after a Helm upgrade has been performed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "disableWaitForJobs")] + pub disable_wait_for_jobs: Option, + /// Force forces resource updates through a replacement strategy. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub force: Option, + /// PreserveValues will make Helm reuse the last release's values and merge in overrides from 'Values'. Setting this flag makes the HelmRelease non-declarative. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "preserveValues")] + pub preserve_values: Option, + /// Remediation holds the remediation configuration for when the Helm upgrade action for the HelmRelease fails. The default is to not perform any action. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub remediation: Option, + /// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) during the performance of a Helm upgrade action. Defaults to 'HelmReleaseSpec.Timeout'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub timeout: Option, +} + +/// Upgrade holds the configuration for Helm upgrade actions for this HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseUpgradeCrds { + Skip, + Create, + CreateReplace, +} + +/// Remediation holds the remediation configuration for when the Helm upgrade action for the HelmRelease fails. The default is to not perform any action. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseUpgradeRemediation { + /// IgnoreTestFailures tells the controller to skip remediation when the Helm tests are run after an upgrade action but fail. Defaults to 'Test.IgnoreFailures'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ignoreTestFailures")] + pub ignore_test_failures: Option, + /// RemediateLastFailure tells the controller to remediate the last failure, when no retries remain. Defaults to 'false' unless 'Retries' is greater than 0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediateLastFailure")] + pub remediate_last_failure: Option, + /// Retries is the number of retries that should be attempted on failures before bailing. Remediation, using 'Strategy', is performed between each attempt. Defaults to '0', a negative integer equals to unlimited retries. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub retries: Option, + /// Strategy to use for failure remediation. Defaults to 'rollback'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub strategy: Option, +} + +/// Remediation holds the remediation configuration for when the Helm upgrade action for the HelmRelease fails. The default is to not perform any action. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseUpgradeRemediationStrategy { + #[serde(rename = "rollback")] + Rollback, + #[serde(rename = "uninstall")] + Uninstall, +} + +/// ValuesReference contains a reference to a resource containing Helm values, and optionally the key they can be found at. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseValuesFrom { + /// Kind of the values referent, valid values are ('Secret', 'ConfigMap'). + pub kind: HelmReleaseValuesFromKind, + /// Name of the values referent. Should reside in the same namespace as the referring resource. + pub name: String, + /// Optional marks this ValuesReference as optional. When set, a not found error for the values reference is ignored, but any ValuesKey, TargetPath or transient error will still result in a reconciliation failure. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, + /// TargetPath is the YAML dot notation path the value should be merged at. When set, the ValuesKey is expected to be a single flat value. Defaults to 'None', which results in the values getting merged at the root. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetPath")] + pub target_path: Option, + /// ValuesKey is the data key where the values.yaml or a specific value can be found at. Defaults to 'values.yaml'. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valuesKey")] + pub values_key: Option, +} + +/// ValuesReference contains a reference to a resource containing Helm values, and optionally the key they can be found at. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseValuesFromKind { + Secret, + ConfigMap, +} + +/// HelmReleaseStatus defines the observed state of a HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseStatus { + /// Conditions holds the conditions for the HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub conditions: Option>, + /// Failures is the reconciliation failure count against the latest desired state. It is reset after a successful reconciliation. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub failures: Option, + /// HelmChart is the namespaced name of the HelmChart resource created by the controller for the HelmRelease. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "helmChart")] + pub helm_chart: Option, + /// History holds the history of Helm releases performed for this HelmRelease up to the last successfully completed release. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub history: Option>, + /// InstallFailures is the install failure count against the latest desired state. It is reset after a successful reconciliation. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "installFailures")] + pub install_failures: Option, + /// LastAppliedRevision is the revision of the last successfully applied source. Deprecated: the revision can now be found in the History. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAppliedRevision")] + pub last_applied_revision: Option, + /// LastAttemptedConfigDigest is the digest for the config (better known as "values") of the last reconciliation attempt. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedConfigDigest")] + pub last_attempted_config_digest: Option, + /// LastAttemptedGeneration is the last generation the controller attempted to reconcile. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedGeneration")] + pub last_attempted_generation: Option, + /// LastAttemptedReleaseAction is the last release action performed for this HelmRelease. It is used to determine the active remediation strategy. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedReleaseAction")] + pub last_attempted_release_action: Option, + /// LastAttemptedRevision is the Source revision of the last reconciliation attempt. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedRevision")] + pub last_attempted_revision: Option, + /// LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last reconciliation attempt. Deprecated: Use LastAttemptedConfigDigest instead. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastAttemptedValuesChecksum")] + pub last_attempted_values_checksum: Option, + /// LastHandledReconcileAt holds the value of the most recent reconcile request value, so a change of the annotation value can be detected. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastHandledReconcileAt")] + pub last_handled_reconcile_at: Option, + /// LastReleaseRevision is the revision of the last successful Helm release. Deprecated: Use History instead. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastReleaseRevision")] + pub last_release_revision: Option, + /// ObservedGeneration is the last observed generation. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] + pub observed_generation: Option, + /// StorageNamespace is the namespace of the Helm release storage for the current release. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageNamespace")] + pub storage_namespace: Option, + /// UpgradeFailures is the upgrade failure count against the latest desired state. It is reset after a successful reconciliation. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "upgradeFailures")] + pub upgrade_failures: Option, +} + +/// Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, +/// type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` +/// // other fields } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseStatusConditions { + /// lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + #[serde(rename = "lastTransitionTime")] + pub last_transition_time: String, + /// message is a human readable message indicating details about the transition. This may be an empty string. + pub message: String, + /// observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] + pub observed_generation: Option, + /// reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. + pub reason: String, + /// status of the condition, one of True, False, Unknown. + pub status: HelmReleaseStatusConditionsStatus, + /// type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) + #[serde(rename = "type")] + pub r#type: String, +} + +/// Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, +/// type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` +/// // other fields } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseStatusConditionsStatus { + True, + False, + Unknown, +} + +/// Snapshot captures a point-in-time copy of the status information for a Helm release, as managed by the controller. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseStatusHistory { + /// APIVersion is the API version of the Snapshot. Provisional: when the calculation method of the Digest field is changed, this field will be used to distinguish between the old and new methods. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] + pub api_version: Option, + /// ChartName is the chart name of the release object in storage. + #[serde(rename = "chartName")] + pub chart_name: String, + /// ChartVersion is the chart version of the release object in storage. + #[serde(rename = "chartVersion")] + pub chart_version: String, + /// ConfigDigest is the checksum of the config (better known as "values") of the release object in storage. It has the format of `:`. + #[serde(rename = "configDigest")] + pub config_digest: String, + /// Deleted is when the release was deleted. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub deleted: Option, + /// Digest is the checksum of the release object in storage. It has the format of `:`. + pub digest: String, + /// FirstDeployed is when the release was first deployed. + #[serde(rename = "firstDeployed")] + pub first_deployed: String, + /// LastDeployed is when the release was last deployed. + #[serde(rename = "lastDeployed")] + pub last_deployed: String, + /// Name is the name of the release. + pub name: String, + /// Namespace is the namespace the release is deployed to. + pub namespace: String, + /// Status is the current state of the release. + pub status: String, + /// TestHooks is the list of test hooks for the release as observed to be run by the controller. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "testHooks")] + pub test_hooks: Option>, + /// Version is the version of the release object in storage. + pub version: i64, +} + +/// TestHooks is the list of test hooks for the release as observed to be run by the controller. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct HelmReleaseStatusHistoryTestHooks { + /// LastCompleted is the time the test hook last completed. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastCompleted")] + pub last_completed: Option, + /// LastStarted is the time the test hook was last started. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastStarted")] + pub last_started: Option, + /// Phase the test hook was observed to be in. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub phase: Option, +} + +/// HelmReleaseStatus defines the observed state of a HelmRelease. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum HelmReleaseStatusLastAttemptedReleaseAction { + #[serde(rename = "install")] + Install, + #[serde(rename = "upgrade")] + Upgrade, +} + diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/mod.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/mod.rs new file mode 100644 index 000000000..00ccf9d5d --- /dev/null +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/mod.rs @@ -0,0 +1 @@ +pub mod helmreleases; diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs index 7d2e7305a..f55a67cdb 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs @@ -28,6 +28,9 @@ pub struct ImageRepositorySpec { /// Image is the name of the image repository #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, + /// Insecure allows connecting to a non-TLS HTTP container registry. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub insecure: Option, /// Interval is the length of time to wait between scans of the image repository. #[serde(default, skip_serializing_if = "Option::is_none")] pub interval: Option, diff --git a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs index 788eaf3ae..b926ade8b 100644 --- a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs +++ b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs @@ -910,9 +910,14 @@ pub struct PlugResultVarsObjref { pub group: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateName")] + pub template_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateNamespace")] + pub template_namespace: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } @@ -955,9 +960,14 @@ pub struct PlugVarsObjref { pub group: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateName")] + pub template_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateNamespace")] + pub template_namespace: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } diff --git a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs index 8a27ee24b..c1cd4355d 100644 --- a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs +++ b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs @@ -993,9 +993,14 @@ pub struct SocketResultVarsObjref { pub group: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateName")] + pub template_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateNamespace")] + pub template_namespace: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } @@ -1039,9 +1044,14 @@ pub struct SocketVarsObjref { pub group: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateName")] + pub template_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "templateNamespace")] + pub template_namespace: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub version: Option, } diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs index 933977788..4896d259d 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs @@ -69,5 +69,8 @@ pub struct ClientIntentsService { /// IntentsStatus defines the observed state of ClientIntents #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClientIntentsStatus { + /// upToDate field reflects whether the client intents have successfully been applied to the cluster to the state specified + #[serde(default, skip_serializing_if = "Option::is_none", rename = "upToDate")] + pub up_to_date: Option, } diff --git a/kube-custom-resources-rs/src/lib.rs b/kube-custom-resources-rs/src/lib.rs index aab324980..7af70dc72 100644 --- a/kube-custom-resources-rs/src/lib.rs +++ b/kube-custom-resources-rs/src/lib.rs @@ -1027,6 +1027,10 @@ Every group has its own feature in this crate. The available features are as fol - kinds: - `HelmRelease` +- apiVersion: `helm.toolkit.fluxcd.io/v2beta2` +- kinds: + - `HelmRelease` + ## hive_openshift_io - apiVersion: `hive.openshift.io/v1` diff --git a/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs b/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs index 80515fdcc..096391879 100644 --- a/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs +++ b/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs @@ -628,7 +628,7 @@ pub enum LimitadorTelemetry { /// LimitadorStatus defines the observed state of Limitador #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct LimitadorStatus { - /// Represents the observations of a foo's current state. Known .status.conditions.type are: "Available" + /// Represents the observations of a foo's current state. Known .status.conditions.type are: "Ready" #[serde(default, skip_serializing_if = "Option::is_none")] pub conditions: Option>, /// ObservedGeneration reflects the generation of the most recently observed spec. diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs index fee3c1725..5444b837a 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs @@ -5145,6 +5145,8 @@ pub struct ClusterOutputOpensearch { #[serde(default, skip_serializing_if = "Option::is_none")] pub emit_error_label_event: Option, #[serde(default, skip_serializing_if = "Option::is_none")] + pub endpoint: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] pub exception_backup: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub fail_on_detecting_os_version_retry_exceed: Option, @@ -5516,6 +5518,307 @@ pub struct ClusterOutputOpensearchClientKeyPassValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpoint { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub access_key_id: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_arn: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_session_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_web_identity_token_file: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ecs_container_credentials_relative_uri: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub region: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub secret_access_key: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub sts_credentials_region: Option, + pub url: String, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyId { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArn { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionName { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFile { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUri { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKey { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegion { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterOutputOpensearchPassword { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs index e653a2b1d..cf647ea10 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs @@ -4772,6 +4772,8 @@ pub struct OutputOpensearch { #[serde(default, skip_serializing_if = "Option::is_none")] pub emit_error_label_event: Option, #[serde(default, skip_serializing_if = "Option::is_none")] + pub endpoint: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] pub exception_backup: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub fail_on_detecting_os_version_retry_exceed: Option, @@ -5143,6 +5145,307 @@ pub struct OutputOpensearchClientKeyPassValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpoint { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub access_key_id: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_arn: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_session_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_web_identity_token_file: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ecs_container_credentials_relative_uri: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub region: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub secret_access_key: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub sts_credentials_region: Option, + pub url: String, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyId { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArn { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionName { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFile { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUri { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKey { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegion { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct OutputOpensearchPassword { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs index ec6e8adff..f9e3b3a7b 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs @@ -5145,6 +5145,8 @@ pub struct ClusterOutputOpensearch { #[serde(default, skip_serializing_if = "Option::is_none")] pub emit_error_label_event: Option, #[serde(default, skip_serializing_if = "Option::is_none")] + pub endpoint: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] pub exception_backup: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub fail_on_detecting_os_version_retry_exceed: Option, @@ -5516,6 +5518,307 @@ pub struct ClusterOutputOpensearchClientKeyPassValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpoint { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub access_key_id: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_arn: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_session_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_web_identity_token_file: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ecs_container_credentials_relative_uri: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub region: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub secret_access_key: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub sts_credentials_region: Option, + pub url: String, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyId { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAccessKeyIdValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArn { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleArnValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionName { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleSessionNameValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFile { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUri { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKey { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointSecretAccessKeyValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegion { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputOpensearchEndpointStsCredentialsRegionValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterOutputOpensearchPassword { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs index 4d5ad926a..1991dc670 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs @@ -5143,6 +5143,8 @@ pub struct OutputOpensearch { #[serde(default, skip_serializing_if = "Option::is_none")] pub emit_error_label_event: Option, #[serde(default, skip_serializing_if = "Option::is_none")] + pub endpoint: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] pub exception_backup: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub fail_on_detecting_os_version_retry_exceed: Option, @@ -5514,6 +5516,307 @@ pub struct OutputOpensearchClientKeyPassValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpoint { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub access_key_id: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_arn: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_session_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub assume_role_web_identity_token_file: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ecs_container_credentials_relative_uri: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub region: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub secret_access_key: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub sts_credentials_region: Option, + pub url: String, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyId { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAccessKeyIdValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArn { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleArnValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionName { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleSessionNameValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFile { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointAssumeRoleWebIdentityTokenFileValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUri { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointEcsContainerCredentialsRelativeUriValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKey { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointSecretAccessKeyValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegion { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] + pub mount_from: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionMountFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionMountFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionValueFrom { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputOpensearchEndpointStsCredentialsRegionValueFromSecretKeyRef { + pub key: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct OutputOpensearchPassword { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs index a8fbe8971..3726ecca6 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs @@ -176,6 +176,8 @@ pub struct SyslogNGClusterOutputElasticsearchTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -340,6 +342,22 @@ pub struct SyslogNGClusterOutputElasticsearchTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputElasticsearchTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputFile { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -493,6 +511,8 @@ pub struct SyslogNGClusterOutputHttpTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -657,6 +677,22 @@ pub struct SyslogNGClusterOutputHttpTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputHttpTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputLoggly { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -722,6 +758,8 @@ pub struct SyslogNGClusterOutputLogglyTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -886,6 +924,22 @@ pub struct SyslogNGClusterOutputLogglyTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputLogglyTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputLogglyToken { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] @@ -1122,6 +1176,8 @@ pub struct SyslogNGClusterOutputLokiAuthTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -1286,6 +1342,22 @@ pub struct SyslogNGClusterOutputLokiAuthTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputLokiAuthTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputLokiDiskBuffer { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -1807,6 +1879,8 @@ pub struct SyslogNGClusterOutputSplunkHecEventTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -1971,6 +2045,22 @@ pub struct SyslogNGClusterOutputSplunkHecEventTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputSplunkHecEventTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputSplunkHecEventToken { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] @@ -2109,6 +2199,8 @@ pub struct SyslogNGClusterOutputSumologicHttpTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -2273,6 +2365,22 @@ pub struct SyslogNGClusterOutputSumologicHttpTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputSumologicHttpTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputSumologicHttpUrl { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] @@ -2361,6 +2469,8 @@ pub struct SyslogNGClusterOutputSumologicSyslogTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -2525,6 +2635,22 @@ pub struct SyslogNGClusterOutputSumologicSyslogTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputSumologicSyslogTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputSyslog { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -2587,6 +2713,8 @@ pub struct SyslogNGClusterOutputSyslogTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -2751,6 +2879,22 @@ pub struct SyslogNGClusterOutputSyslogTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGClusterOutputSyslogTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGClusterOutputStatus { #[serde(default, skip_serializing_if = "Option::is_none")] diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs index 649535c9f..2908df8d1 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs @@ -174,6 +174,8 @@ pub struct SyslogNGOutputElasticsearchTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -338,6 +340,22 @@ pub struct SyslogNGOutputElasticsearchTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputElasticsearchTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputFile { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -491,6 +509,8 @@ pub struct SyslogNGOutputHttpTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -655,6 +675,22 @@ pub struct SyslogNGOutputHttpTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputHttpTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputLoggly { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -720,6 +756,8 @@ pub struct SyslogNGOutputLogglyTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -884,6 +922,22 @@ pub struct SyslogNGOutputLogglyTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputLogglyTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputLogglyToken { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] @@ -1120,6 +1174,8 @@ pub struct SyslogNGOutputLokiAuthTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -1284,6 +1340,22 @@ pub struct SyslogNGOutputLokiAuthTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputLokiAuthTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputLokiDiskBuffer { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -1805,6 +1877,8 @@ pub struct SyslogNGOutputSplunkHecEventTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -1969,6 +2043,22 @@ pub struct SyslogNGOutputSplunkHecEventTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputSplunkHecEventTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputSplunkHecEventToken { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] @@ -2107,6 +2197,8 @@ pub struct SyslogNGOutputSumologicHttpTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -2271,6 +2363,22 @@ pub struct SyslogNGOutputSumologicHttpTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputSumologicHttpTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputSumologicHttpUrl { #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountFrom")] @@ -2359,6 +2467,8 @@ pub struct SyslogNGOutputSumologicSyslogTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -2523,6 +2633,22 @@ pub struct SyslogNGOutputSumologicSyslogTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputSumologicSyslogTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputSyslog { #[serde(default, skip_serializing_if = "Option::is_none")] @@ -2585,6 +2711,8 @@ pub struct SyslogNGOutputSyslogTls { pub key_file: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub peer_verify: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub ssl_version: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-system-cert-store")] pub use_system_cert_store: Option, } @@ -2749,6 +2877,22 @@ pub struct SyslogNGOutputSyslogTlsKeyFileValueFromSecretKeyRef { pub optional: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum SyslogNGOutputSyslogTlsSslVersion { + #[serde(rename = "sslv3")] + Sslv3, + #[serde(rename = "tlsv1")] + Tlsv1, + #[serde(rename = "tlsv1_0")] + Tlsv10, + #[serde(rename = "tlsv1_1")] + Tlsv11, + #[serde(rename = "tlsv1_2")] + Tlsv12, + #[serde(rename = "tlsv1_3")] + Tlsv13, +} + #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SyslogNGOutputStatus { #[serde(default, skip_serializing_if = "Option::is_none")] diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs index 1fe1af7f0..f2dd901b5 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs @@ -137,6 +137,9 @@ pub struct LokiStackLimitsGlobalIngestion { /// MaxLineSize defines the maximum line size on ingestion path. Units in Bytes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxLineSize")] pub max_line_size: Option, + /// PerStreamDesiredRate defines the desired ingestion rate per second that LokiStack should target applying automatic stream sharding. Units MB. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "perStreamDesiredRate")] + pub per_stream_desired_rate: Option, /// PerStreamRateLimit defines the maximum byte rate per second per stream. Units MB. #[serde(default, skip_serializing_if = "Option::is_none", rename = "perStreamRateLimit")] pub per_stream_rate_limit: Option, @@ -225,6 +228,9 @@ pub struct LokiStackLimitsTenantsIngestion { /// MaxLineSize defines the maximum line size on ingestion path. Units in Bytes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxLineSize")] pub max_line_size: Option, + /// PerStreamDesiredRate defines the desired ingestion rate per second that LokiStack should target applying automatic stream sharding. Units MB. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "perStreamDesiredRate")] + pub per_stream_desired_rate: Option, /// PerStreamRateLimit defines the maximum byte rate per second per stream. Units MB. #[serde(default, skip_serializing_if = "Option::is_none", rename = "perStreamRateLimit")] pub per_stream_rate_limit: Option, @@ -420,6 +426,8 @@ pub enum LokiStackStorageSchemasVersion { V11, #[serde(rename = "v12")] V12, + #[serde(rename = "v13")] + V13, } /// Secret for object storage authentication. Name of a secret in the same namespace as the LokiStack custom resource. @@ -2227,5 +2235,7 @@ pub enum LokiStackStatusStorageSchemasVersion { V11, #[serde(rename = "v12")] V12, + #[serde(rename = "v13")] + V13, } diff --git a/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/controllerconfigs.rs b/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/controllerconfigs.rs index 3f264c1ad..4ab6353b3 100644 --- a/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/controllerconfigs.rs +++ b/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/controllerconfigs.rs @@ -359,6 +359,15 @@ pub struct ControllerConfigInfraSpecPlatformSpecAzure { /// BareMetal contains settings specific to the BareMetal platform. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ControllerConfigInfraSpecPlatformSpecBaremetal { + /// apiServerInternalIPs are the IP addresses to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. These are the IPs for a self-hosted load balancer in front of the API servers. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.apiServerInternalIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiServerInternalIPs")] + pub api_server_internal_i_ps: Option>, + /// ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.ingressIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressIPs")] + pub ingress_i_ps: Option>, + /// machineNetworks are IP networks used to connect all the OpenShift cluster nodes. Each network is provided in the CIDR format and should be IPv4 or IPv6, for example "10.0.0.0/8" or "fd00::/8". + #[serde(default, skip_serializing_if = "Option::is_none", rename = "machineNetworks")] + pub machine_networks: Option>, } /// EquinixMetal contains settings specific to the Equinix Metal infrastructure provider. @@ -392,6 +401,9 @@ pub struct ControllerConfigInfraSpecPlatformSpecKubevirt { /// Nutanix contains settings specific to the Nutanix infrastructure provider. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ControllerConfigInfraSpecPlatformSpecNutanix { + /// failureDomains configures failure domains information for the Nutanix platform. When set, the failure domains defined here may be used to spread Machines across prism element clusters to improve fault tolerance of the cluster. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureDomains")] + pub failure_domains: Option>, /// prismCentral holds the endpoint address and port to access the Nutanix Prism Central. When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list. #[serde(rename = "prismCentral")] pub prism_central: ControllerConfigInfraSpecPlatformSpecNutanixPrismCentral, @@ -400,6 +412,61 @@ pub struct ControllerConfigInfraSpecPlatformSpecNutanix { pub prism_elements: Vec, } +/// NutanixFailureDomain configures failure domain information for the Nutanix platform. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct ControllerConfigInfraSpecPlatformSpecNutanixFailureDomains { + /// cluster is to identify the cluster (the Prism Element under management of the Prism Central), in which the Machine's VM will be created. The cluster identifier (uuid or name) can be obtained from the Prism Central console or using the prism_central API. + pub cluster: ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsCluster, + /// name defines the unique name of a failure domain. Name is required and must be at most 64 characters in length. It must consist of only lower case alphanumeric characters and hyphens (-). It must start and end with an alphanumeric character. This value is arbitrary and is used to identify the failure domain within the platform. + pub name: String, + /// subnets holds a list of identifiers (one or more) of the cluster's network subnets for the Machine's VM to connect to. The subnet identifiers (uuid or name) can be obtained from the Prism Central console or using the prism_central API. + pub subnets: Vec, +} + +/// cluster is to identify the cluster (the Prism Element under management of the Prism Central), in which the Machine's VM will be created. The cluster identifier (uuid or name) can be obtained from the Prism Central console or using the prism_central API. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsCluster { + /// name is the resource name in the PC. It cannot be empty if the type is Name. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// type is the identifier type to use for this resource. + #[serde(rename = "type")] + pub r#type: ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsClusterType, + /// uuid is the UUID of the resource in the PC. It cannot be empty if the type is UUID. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub uuid: Option, +} + +/// cluster is to identify the cluster (the Prism Element under management of the Prism Central), in which the Machine's VM will be created. The cluster identifier (uuid or name) can be obtained from the Prism Central console or using the prism_central API. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsClusterType { + #[serde(rename = "UUID")] + Uuid, + Name, +} + +/// NutanixResourceIdentifier holds the identity of a Nutanix PC resource (cluster, image, subnet, etc.) +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsSubnets { + /// name is the resource name in the PC. It cannot be empty if the type is Name. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// type is the identifier type to use for this resource. + #[serde(rename = "type")] + pub r#type: ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsSubnetsType, + /// uuid is the UUID of the resource in the PC. It cannot be empty if the type is UUID. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub uuid: Option, +} + +/// NutanixResourceIdentifier holds the identity of a Nutanix PC resource (cluster, image, subnet, etc.) +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ControllerConfigInfraSpecPlatformSpecNutanixFailureDomainsSubnetsType { + #[serde(rename = "UUID")] + Uuid, + Name, +} + /// prismCentral holds the endpoint address and port to access the Nutanix Prism Central. When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ControllerConfigInfraSpecPlatformSpecNutanixPrismCentral { @@ -430,6 +497,15 @@ pub struct ControllerConfigInfraSpecPlatformSpecNutanixPrismElementsEndpoint { /// OpenStack contains settings specific to the OpenStack infrastructure provider. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ControllerConfigInfraSpecPlatformSpecOpenstack { + /// apiServerInternalIPs are the IP addresses to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. These are the IPs for a self-hosted load balancer in front of the API servers. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.apiServerInternalIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiServerInternalIPs")] + pub api_server_internal_i_ps: Option>, + /// ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.ingressIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressIPs")] + pub ingress_i_ps: Option>, + /// machineNetworks are IP networks used to connect all the OpenShift cluster nodes. Each network is provided in the CIDR format and should be IPv4 or IPv6, for example "10.0.0.0/8" or "fd00::/8". + #[serde(default, skip_serializing_if = "Option::is_none", rename = "machineNetworks")] + pub machine_networks: Option>, } /// Ovirt contains settings specific to the oVirt infrastructure provider. @@ -485,9 +561,18 @@ pub enum ControllerConfigInfraSpecPlatformSpecType { /// VSphere contains settings specific to the VSphere infrastructure provider. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ControllerConfigInfraSpecPlatformSpecVsphere { + /// apiServerInternalIPs are the IP addresses to contact the Kubernetes API server that can be used by components inside the cluster, like kubelets using the infrastructure rather than Kubernetes networking. These are the IPs for a self-hosted load balancer in front of the API servers. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.apiServerInternalIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiServerInternalIPs")] + pub api_server_internal_i_ps: Option>, /// failureDomains contains the definition of region, zone and the vCenter topology. If this is omitted failure domains (regions and zones) will not be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureDomains")] pub failure_domains: Option>, + /// ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IP addresses, one from IPv4 family and one from IPv6. In single stack clusters a single IP address is expected. When omitted, values from the status.ingressIPs will be used. Once set, the list cannot be completely removed (but its second entry can). + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressIPs")] + pub ingress_i_ps: Option>, + /// machineNetworks are IP networks used to connect all the OpenShift cluster nodes. Each network is provided in the CIDR format and should be IPv4 or IPv6, for example "10.0.0.0/8" or "fd00::/8". + #[serde(default, skip_serializing_if = "Option::is_none", rename = "machineNetworks")] + pub machine_networks: Option>, /// nodeNetworking contains the definition of internal and external network constraints for assigning the node's networking. If this field is omitted, networking defaults to the legacy address selection behavior which is to only support a single address and return the first one found. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeNetworking")] pub node_networking: Option, @@ -831,6 +916,9 @@ pub struct ControllerConfigInfraStatusPlatformStatusBaremetal { /// ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IPs otherwise only one. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressIPs")] pub ingress_i_ps: Option>, + /// machineNetworks are IP networks used to connect all the OpenShift cluster nodes. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "machineNetworks")] + pub machine_networks: Option>, /// nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for BareMetal deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeDNSIP")] pub node_dnsip: Option, @@ -990,6 +1078,9 @@ pub struct ControllerConfigInfraStatusPlatformStatusOpenstack { /// loadBalancer defines how the load balancer used by the cluster is configured. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancer")] pub load_balancer: Option, + /// machineNetworks are IP networks used to connect all the OpenShift cluster nodes. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "machineNetworks")] + pub machine_networks: Option>, /// nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for OpenStack deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeDNSIP")] pub node_dnsip: Option, @@ -1109,6 +1200,9 @@ pub struct ControllerConfigInfraStatusPlatformStatusVsphere { /// ingressIPs are the external IPs which route to the default ingress controller. The IPs are suitable targets of a wildcard DNS record used to resolve default route host names. In dual stack clusters this list contains two IPs otherwise only one. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressIPs")] pub ingress_i_ps: Option>, + /// machineNetworks are IP networks used to connect all the OpenShift cluster nodes. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "machineNetworks")] + pub machine_networks: Option>, /// nodeDNSIP is the IP address for the internal DNS used by the nodes. Unlike the one managed by the DNS operator, `NodeDNSIP` provides name resolution for the nodes themselves. There is no DNS-as-a-service for vSphere deployments. In order to minimize necessary changes to the datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames to the nodes in the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeDNSIP")] pub node_dnsip: Option, @@ -1235,11 +1329,11 @@ pub struct ControllerConfigStatusControllerCertificates { #[serde(rename = "bundleFile")] pub bundle_file: String, /// notAfter is the upper boundary for validity - #[serde(rename = "notAfter")] - pub not_after: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "notAfter")] + pub not_after: Option, /// notBefore is the lower boundary for validity - #[serde(rename = "notBefore")] - pub not_before: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "notBefore")] + pub not_before: Option, /// signer is the cert Issuer pub signer: String, /// subject is the cert subject diff --git a/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/machineconfigpools.rs b/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/machineconfigpools.rs index 818ff7c6f..fdde269d6 100644 --- a/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/machineconfigpools.rs +++ b/kube-custom-resources-rs/src/machineconfiguration_openshift_io/v1/machineconfigpools.rs @@ -171,7 +171,8 @@ pub struct MachineConfigPoolStatusCertExpirys { /// bundle is the name of the bundle in which the subject certificate resides pub bundle: String, /// expiry is the date after which the certificate will no longer be valid - pub expiry: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub expiry: Option, /// subject is the subject of the certificate pub subject: String, } diff --git a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs index 4b012391d..15be98667 100644 --- a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs +++ b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs @@ -2,9 +2,9 @@ // kopium command: kopium --docs --filename=./crd-catalog/metacontroller/metacontroller/metacontroller.k8s.io/v1alpha1/controllerrevisions.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; - +use std::collections::BTreeMap; #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ControllerRevisionChildren { diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs index 3f6cf5311..71ae48ba5 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs @@ -157,6 +157,10 @@ pub struct PodMonitorPodMetricsEndpoints { /// TLS configuration to use when scraping the target. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] pub tls_config: Option, + /// TrackTimestampsStaleness whether Prometheus tracks staleness of the metrics that have an explicit timestamps present in scraped data. Has no effect if `honorTimestamps` is false. + /// It requires Prometheus >= v2.48.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "trackTimestampsStaleness")] + pub track_timestamps_staleness: Option, } /// `authorization` configures the Authorization header credentials to use when scraping the target. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs index 2f3e9dbda..2cbd16704 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs @@ -153,6 +153,10 @@ pub struct ServiceMonitorEndpoints { /// TLS configuration to use when scraping the target. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] pub tls_config: Option, + /// `trackTimestampsStaleness` defines whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. + /// It requires Prometheus >= v2.48.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "trackTimestampsStaleness")] + pub track_timestamps_staleness: Option, } /// `authorization` configures the Authorization header credentials to use when scraping the target. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs index b412104c8..207a8f544 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs @@ -94,6 +94,9 @@ pub struct ScrapeConfigSpec { /// TLS configuration to use on every scrape request #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] pub tls_config: Option, + /// TrackTimestampsStaleness whether Prometheus tracks staleness of the metrics that have an explicit timestamp present in scraped data. Has no effect if `honorTimestamps` is false. It requires Prometheus >= v2.48.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "trackTimestampsStaleness")] + pub track_timestamps_staleness: Option, } /// Authorization header to use on every scrape request. diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs index 532e19b53..d8486bc60 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/gateways.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// WireGuardInfo includes information of a WireGuard tunnel. diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs index 9f38664c8..35cce06f0 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs @@ -2,6 +2,6 @@ // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/memberclusterannounces.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - - +use kube::CustomResource; +use serde::{Serialize, Deserialize}; diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs index a4f800c24..db61e99dc 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs @@ -2,6 +2,6 @@ // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha2/clusterclaims.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - - +use kube::CustomResource; +use serde::{Serialize, Deserialize}; diff --git a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs index e2d29839c..8cde29512 100644 --- a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs +++ b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/mcs-api/multicluster.x-k8s.io/v1alpha1/serviceexports.yaml --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// status describes the current state of an exported service. Service configuration comes from the Service that had the same name and namespace as this ServiceExport. Populated by the multi-cluster service implementation's controller. diff --git a/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs b/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs index 99cc287a6..06acc7af0 100644 --- a/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs +++ b/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs @@ -15,9 +15,15 @@ pub struct MultiClusterServiceSpec { /// Ports is the list of ports that are exposed by this MultiClusterService. No specified port will be filtered out during the service exposure and discovery process. All ports in the referencing service will be exposed by default. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Range specifies the ranges where the referencing service should be exposed. Only valid and optional in case of Types contains CrossCluster. If not set and Types contains CrossCluster, all clusters will be selected, that means the referencing service will be exposed across all registered clusters. + /// Range specifies the ranges where the referencing service should be exposed. Only valid and optional in case of Types contains CrossCluster. If not set and Types contains CrossCluster, all clusters will be selected, that means the referencing service will be exposed across all registered clusters. Deprecated: in favor of ServiceProvisionClusters/ServiceConsumptionClusters. #[serde(default, skip_serializing_if = "Option::is_none")] pub range: Option, + /// ServiceConsumptionClusters specifies the clusters where the service will be exposed, for clients. If leave it empty, the service will be exposed to all clusters. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceConsumptionClusters")] + pub service_consumption_clusters: Option>, + /// ServiceProvisionClusters specifies the clusters which will provision the service backend. If leave it empty, we will collect the backend endpoints from all clusters and sync them to the ServiceConsumptionClusters. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceProvisionClusters")] + pub service_provision_clusters: Option>, /// Types specifies how to expose the service referencing by this MultiClusterService. pub types: Vec, } @@ -32,7 +38,7 @@ pub struct MultiClusterServicePorts { pub port: i32, } -/// Range specifies the ranges where the referencing service should be exposed. Only valid and optional in case of Types contains CrossCluster. If not set and Types contains CrossCluster, all clusters will be selected, that means the referencing service will be exposed across all registered clusters. +/// Range specifies the ranges where the referencing service should be exposed. Only valid and optional in case of Types contains CrossCluster. If not set and Types contains CrossCluster, all clusters will be selected, that means the referencing service will be exposed across all registered clusters. Deprecated: in favor of ServiceProvisionClusters/ServiceConsumptionClusters. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct MultiClusterServiceRange { /// ClusterNames is the list of clusters to be selected. diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs index 48cb06b4a..0c5163835 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs @@ -81,6 +81,8 @@ pub enum ProviderType { Gitlab, #[serde(rename = "gitea")] Gitea, + #[serde(rename = "bitbucketserver")] + Bitbucketserver, #[serde(rename = "bitbucket")] Bitbucket, #[serde(rename = "azuredevops")] diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs index 45507a689..3af54583f 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1beta1/locks.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// LockPackage is a package that is in the lock. diff --git a/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs b/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs index 194c7ee64..94084f64c 100644 --- a/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs +++ b/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs @@ -133,12 +133,19 @@ pub struct RayClusterAutoscalerOptionsEnvFromSecretRef { #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterAutoscalerOptionsResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterAutoscalerOptionsResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterAutoscalerOptionsSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -436,6 +443,8 @@ pub struct RayClusterHeadGroupSpecTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -458,12 +467,16 @@ pub struct RayClusterHeadGroupSpecTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -793,8 +806,12 @@ pub struct RayClusterHeadGroupSpecTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1131,14 +1148,29 @@ pub struct RayClusterHeadGroupSpecTemplateSpecContainersReadinessProbeTcpSocket pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1331,8 +1363,12 @@ pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1671,14 +1707,29 @@ pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersReadinessProbeT pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1867,8 +1918,12 @@ pub struct RayClusterHeadGroupSpecTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -2205,14 +2260,29 @@ pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersReadinessProbeTcpSoc pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -2375,6 +2445,26 @@ pub struct RayClusterHeadGroupSpecTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -2455,8 +2545,16 @@ pub struct RayClusterHeadGroupSpecTemplateSpecTolerations { pub struct RayClusterHeadGroupSpecTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -2763,16 +2861,25 @@ pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplat pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -3217,6 +3324,8 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -3239,12 +3348,16 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -3574,8 +3687,12 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -3912,14 +4029,29 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersReadinessProbeTcpSock pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4112,8 +4244,12 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4452,14 +4588,29 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersReadinessPro pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4648,8 +4799,12 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4986,14 +5141,29 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersReadinessProbeTcp pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -5156,6 +5326,26 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -5236,8 +5426,16 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecTolerations { pub struct RayClusterWorkerGroupSpecsTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -5544,16 +5742,25 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemp pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] diff --git a/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs b/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs index 4d85b2d86..366d67b26 100644 --- a/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs +++ b/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs @@ -164,12 +164,19 @@ pub struct RayJobRayClusterSpecAutoscalerOptionsEnvFromSecretRef { #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecAutoscalerOptionsResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecAutoscalerOptionsResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecAutoscalerOptionsSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -467,6 +474,8 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -489,12 +498,16 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -824,8 +837,12 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1162,14 +1179,29 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersReadinessProbe pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1362,8 +1394,12 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1702,14 +1738,29 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersReadi pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1898,8 +1949,12 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -2236,14 +2291,29 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersReadinessP pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -2406,6 +2476,26 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -2486,8 +2576,16 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecTolerations { pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -2794,16 +2892,25 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeCl pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -3248,6 +3355,8 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -3270,12 +3379,16 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -3605,8 +3718,12 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -3943,14 +4060,29 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersReadinessPr pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4143,8 +4275,12 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4483,14 +4619,29 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersRe pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4679,8 +4830,12 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -5017,14 +5172,29 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersReadine pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -5187,6 +5357,26 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -5267,8 +5457,16 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecTolerations { pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -5575,16 +5773,25 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolum pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -6006,6 +6213,8 @@ pub struct RayJobSubmitterPodTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -6028,12 +6237,16 @@ pub struct RayJobSubmitterPodTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -6363,8 +6576,12 @@ pub struct RayJobSubmitterPodTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -6701,14 +6918,29 @@ pub struct RayJobSubmitterPodTemplateSpecContainersReadinessProbeTcpSocket { pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -6901,8 +7133,12 @@ pub struct RayJobSubmitterPodTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -7241,14 +7477,29 @@ pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersReadinessProbeTcpSoc pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -7437,8 +7688,12 @@ pub struct RayJobSubmitterPodTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -7775,14 +8030,29 @@ pub struct RayJobSubmitterPodTemplateSpecInitContainersReadinessProbeTcpSocket { pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -7945,6 +8215,26 @@ pub struct RayJobSubmitterPodTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -8025,8 +8315,16 @@ pub struct RayJobSubmitterPodTemplateSpecTolerations { pub struct RayJobSubmitterPodTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -8333,16 +8631,25 @@ pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpec pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] diff --git a/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs b/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs index 4e78ccaee..e73c5379e 100644 --- a/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs +++ b/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs @@ -149,12 +149,19 @@ pub struct RayServiceRayClusterConfigAutoscalerOptionsEnvFromSecretRef { #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigAutoscalerOptionsResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigAutoscalerOptionsResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigAutoscalerOptionsSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -452,6 +459,8 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -474,12 +483,16 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -809,8 +822,12 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1147,14 +1164,29 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersReadines pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1347,8 +1379,12 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainer pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1687,14 +1723,29 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainer pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1883,8 +1934,12 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -2221,14 +2276,29 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersRead pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -2391,6 +2461,26 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -2471,8 +2561,16 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecTolerations { pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -2779,16 +2877,25 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVo pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -3233,6 +3340,8 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -3255,12 +3364,16 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -3590,8 +3703,12 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -3928,14 +4045,29 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersReadi pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4128,8 +4260,12 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContai pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4468,14 +4604,29 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContai pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4664,8 +4815,12 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainers pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -5002,14 +5157,29 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersR pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -5172,6 +5342,26 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecReadinessGates pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -5252,8 +5442,16 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecTolerations { pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -5560,16 +5758,25 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemera pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -6152,6 +6359,8 @@ pub struct RayServiceServeServiceStatusLoadBalancerIngressPorts { pub struct RayServiceStatus { #[serde(default, skip_serializing_if = "Option::is_none", rename = "activeServiceStatus")] pub active_service_status: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] + pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "pendingServiceStatus")] @@ -6176,8 +6385,6 @@ pub struct RayServiceStatusActiveServiceStatus { pub struct RayServiceStatusActiveServiceStatusApplicationStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serveDeploymentStatuses")] @@ -6190,8 +6397,6 @@ pub struct RayServiceStatusActiveServiceStatusApplicationStatuses { pub struct RayServiceStatusActiveServiceStatusApplicationStatusesServeDeploymentStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -6204,8 +6409,6 @@ pub struct RayServiceStatusActiveServiceStatusDashboardStatus { pub health_last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isHealthy")] pub is_healthy: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] @@ -6256,8 +6459,6 @@ pub struct RayServiceStatusPendingServiceStatus { pub struct RayServiceStatusPendingServiceStatusApplicationStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serveDeploymentStatuses")] @@ -6270,8 +6471,6 @@ pub struct RayServiceStatusPendingServiceStatusApplicationStatuses { pub struct RayServiceStatusPendingServiceStatusApplicationStatusesServeDeploymentStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -6284,8 +6483,6 @@ pub struct RayServiceStatusPendingServiceStatusDashboardStatus { pub health_last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isHealthy")] pub is_healthy: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] diff --git a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs index 1bd516287..d5b5a6bc2 100644 --- a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs +++ b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs @@ -133,12 +133,19 @@ pub struct RayClusterAutoscalerOptionsEnvFromSecretRef { #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterAutoscalerOptionsResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterAutoscalerOptionsResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterAutoscalerOptionsSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -436,6 +443,8 @@ pub struct RayClusterHeadGroupSpecTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -458,12 +467,16 @@ pub struct RayClusterHeadGroupSpecTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -793,8 +806,12 @@ pub struct RayClusterHeadGroupSpecTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1131,14 +1148,29 @@ pub struct RayClusterHeadGroupSpecTemplateSpecContainersReadinessProbeTcpSocket pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1331,8 +1363,12 @@ pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1671,14 +1707,29 @@ pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersReadinessProbeT pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1867,8 +1918,12 @@ pub struct RayClusterHeadGroupSpecTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -2205,14 +2260,29 @@ pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersReadinessProbeTcpSoc pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -2375,6 +2445,26 @@ pub struct RayClusterHeadGroupSpecTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -2455,8 +2545,16 @@ pub struct RayClusterHeadGroupSpecTemplateSpecTolerations { pub struct RayClusterHeadGroupSpecTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -2763,16 +2861,25 @@ pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplat pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -3217,6 +3324,8 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -3239,12 +3348,16 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -3574,8 +3687,12 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -3912,14 +4029,29 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersReadinessProbeTcpSock pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4112,8 +4244,12 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4452,14 +4588,29 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersReadinessPro pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4648,8 +4799,12 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4986,14 +5141,29 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersReadinessProbeTcp pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -5156,6 +5326,26 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -5236,8 +5426,16 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecTolerations { pub struct RayClusterWorkerGroupSpecsTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -5544,16 +5742,25 @@ pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemp pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayClusterWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] diff --git a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs index 2acf0a311..e26e016e8 100644 --- a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs +++ b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs @@ -164,12 +164,19 @@ pub struct RayJobRayClusterSpecAutoscalerOptionsEnvFromSecretRef { #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecAutoscalerOptionsResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecAutoscalerOptionsResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecAutoscalerOptionsSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -467,6 +474,8 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -489,12 +498,16 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -824,8 +837,12 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1162,14 +1179,29 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersReadinessProbe pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1362,8 +1394,12 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1702,14 +1738,29 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersReadi pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1898,8 +1949,12 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -2236,14 +2291,29 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersReadinessP pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -2406,6 +2476,26 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -2486,8 +2576,16 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecTolerations { pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -2794,16 +2892,25 @@ pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeCl pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -3248,6 +3355,8 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -3270,12 +3379,16 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -3605,8 +3718,12 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -3943,14 +4060,29 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersReadinessPr pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4143,8 +4275,12 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4483,14 +4619,29 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersRe pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4679,8 +4830,12 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -5017,14 +5172,29 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersReadine pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -5187,6 +5357,26 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -5267,8 +5457,16 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecTolerations { pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -5575,16 +5773,25 @@ pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolum pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobRayClusterSpecWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -6006,6 +6213,8 @@ pub struct RayJobSubmitterPodTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -6028,12 +6237,16 @@ pub struct RayJobSubmitterPodTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -6363,8 +6576,12 @@ pub struct RayJobSubmitterPodTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -6701,14 +6918,29 @@ pub struct RayJobSubmitterPodTemplateSpecContainersReadinessProbeTcpSocket { pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -6901,8 +7133,12 @@ pub struct RayJobSubmitterPodTemplateSpecEphemeralContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -7241,14 +7477,29 @@ pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersReadinessProbeTcpSoc pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -7437,8 +7688,12 @@ pub struct RayJobSubmitterPodTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -7775,14 +8030,29 @@ pub struct RayJobSubmitterPodTemplateSpecInitContainersReadinessProbeTcpSocket { pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -7945,6 +8215,26 @@ pub struct RayJobSubmitterPodTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -8025,8 +8315,16 @@ pub struct RayJobSubmitterPodTemplateSpecTolerations { pub struct RayJobSubmitterPodTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -8333,16 +8631,25 @@ pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpec pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayJobSubmitterPodTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] diff --git a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs index 95e6efcb0..26f131ebb 100644 --- a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs +++ b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs @@ -149,12 +149,19 @@ pub struct RayServiceRayClusterConfigAutoscalerOptionsEnvFromSecretRef { #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigAutoscalerOptionsResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigAutoscalerOptionsResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigAutoscalerOptionsSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -452,6 +459,8 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -474,12 +483,16 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -809,8 +822,12 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1147,14 +1164,29 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersReadines pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1347,8 +1379,12 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainer pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -1687,14 +1723,29 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainer pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -1883,8 +1934,12 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -2221,14 +2276,29 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersRead pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -2391,6 +2461,26 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecReadinessGates { pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -2471,8 +2561,16 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecTolerations { pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -2779,16 +2877,25 @@ pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVo pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigHeadGroupSpecTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -3233,6 +3340,8 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpec { pub host_network: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPID")] pub host_pid: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostUsers")] + pub host_users: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub hostname: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] @@ -3255,12 +3364,16 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpec { pub priority_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessGates")] pub readiness_gates: Option>, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] + pub resource_claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "runtimeClassName")] pub runtime_class_name: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] + pub scheduling_gates: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccount")] @@ -3590,8 +3703,12 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainers { pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -3928,14 +4045,29 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersReadi pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4128,8 +4260,12 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContai pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -4468,14 +4604,29 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContai pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -4664,8 +4815,12 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainers pub ports: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] + pub resize_policy: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] + pub restart_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] @@ -5002,14 +5157,29 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersR pub port: IntOrString, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersResizePolicy { + #[serde(rename = "resourceName")] + pub resource_name: String, + #[serde(rename = "restartPolicy")] + pub restart_policy: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] @@ -5172,6 +5342,26 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecReadinessGates pub condition_type: String, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecResourceClaims { + pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub source: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecResourceClaimsSource { + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] + pub resource_claim_name: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] + pub resource_claim_template_name: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecSchedulingGates { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -5252,8 +5442,16 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecTolerations { pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecTopologySpreadConstraints { #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] + pub match_label_keys: Option>, #[serde(rename = "maxSkew")] pub max_skew: i32, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] + pub min_domains: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] + pub node_affinity_policy: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] + pub node_taints_policy: Option, #[serde(rename = "topologyKey")] pub topology_key: String, #[serde(rename = "whenUnsatisfiable")] @@ -5560,16 +5758,25 @@ pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemera pub api_group: Option, pub kind: String, pub name: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResources { + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecResourcesClaims { + pub name: String, +} + #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct RayServiceRayClusterConfigWorkerGroupSpecsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpecSelector { #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] @@ -6152,6 +6359,8 @@ pub struct RayServiceServeServiceStatusLoadBalancerIngressPorts { pub struct RayServiceStatus { #[serde(default, skip_serializing_if = "Option::is_none", rename = "activeServiceStatus")] pub active_service_status: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] + pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "pendingServiceStatus")] @@ -6176,8 +6385,6 @@ pub struct RayServiceStatusActiveServiceStatus { pub struct RayServiceStatusActiveServiceStatusApplicationStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serveDeploymentStatuses")] @@ -6190,8 +6397,6 @@ pub struct RayServiceStatusActiveServiceStatusApplicationStatuses { pub struct RayServiceStatusActiveServiceStatusApplicationStatusesServeDeploymentStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -6204,8 +6409,6 @@ pub struct RayServiceStatusActiveServiceStatusDashboardStatus { pub health_last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isHealthy")] pub is_healthy: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] @@ -6256,8 +6459,6 @@ pub struct RayServiceStatusPendingServiceStatus { pub struct RayServiceStatusPendingServiceStatusApplicationStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "serveDeploymentStatuses")] @@ -6270,8 +6471,6 @@ pub struct RayServiceStatusPendingServiceStatusApplicationStatuses { pub struct RayServiceStatusPendingServiceStatusApplicationStatusesServeDeploymentStatuses { #[serde(default, skip_serializing_if = "Option::is_none", rename = "healthLastUpdateTime")] pub health_last_update_time: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -6284,8 +6483,6 @@ pub struct RayServiceStatusPendingServiceStatusDashboardStatus { pub health_last_update_time: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "isHealthy")] pub is_healthy: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdateTime")] - pub last_update_time: Option, } #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs index af193572a..86b75a0e8 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs @@ -22,8 +22,12 @@ pub struct HelmRepositorySpec { /// It takes precedence over the values specified in the Secret referred to by `.spec.secretRef`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certSecretRef")] pub cert_secret_ref: Option, + /// Insecure allows connecting to a non-TLS HTTP container registry. This field is only taken into account if the .spec.type field is set to 'oci'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub insecure: Option, /// Interval at which the HelmRepository URL is checked for updates. This interval is approximate and may be subject to jitter to ensure efficient use of resources. - pub interval: String, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub interval: Option, /// PassCredentials allows the credentials from the SecretRef to be passed on to a host that does not match the host as defined in URL. This may be required if the host of the advertised chart URLs in the index differ from the defined URL. Enabling this should be done with caution, as it can potentially result in credentials getting stolen in a MITM-attack. #[serde(default, skip_serializing_if = "Option::is_none", rename = "passCredentials")] pub pass_credentials: Option, @@ -36,7 +40,7 @@ pub struct HelmRepositorySpec { /// Suspend tells the controller to suspend the reconciliation of this HelmRepository. #[serde(default, skip_serializing_if = "Option::is_none")] pub suspend: Option, - /// Timeout is used for the index fetch operation for an HTTPS helm repository, and for remote OCI Repository operations like pulling for an OCI helm repository. Its default value is 60s. + /// Timeout is used for the index fetch operation for an HTTPS helm repository, and for remote OCI Repository operations like pulling for an OCI helm chart by the associated HelmChart. Its default value is 60s. #[serde(default, skip_serializing_if = "Option::is_none")] pub timeout: Option, /// Type of the HelmRepository. When this field is set to "oci", the URL field value must be prefixed with "oci://". diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs index 6bb185b7c..b79d71cd1 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/constraintpodstatuses.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// ConstraintPodStatusStatus defines the observed state of ConstraintPodStatus. diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs index 59b959d80..742694e72 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/constrainttemplatepodstatuses.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// ConstraintTemplatePodStatusStatus defines the observed state of ConstraintTemplatePodStatus. diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs index 4f5efa3c0..9c2211011 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/expansiontemplatepodstatuses.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// ExpansionTemplatePodStatusStatus defines the observed state of ExpansionTemplatePodStatus. diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs index 1918c5646..47b88145d 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/mutatorpodstatuses.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; /// MutatorPodStatusStatus defines the observed state of MutatorPodStatus. diff --git a/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs b/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs index 15845891d..88722b274 100644 --- a/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs +++ b/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/node-feature-discovery-operator/topology.node.k8s.io/v1alpha1/noderesourcetopologies.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs index 16a1fe77a..743f93d93 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha1/clusterpolicyreports.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs index ca4f563ff..854681cda 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha1/policyreports.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs index 4ef4cd8bc..5e2be7712 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha2/clusterpolicyreports.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs index a41edb8f3..7fdfa6b4a 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha2/policyreports.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs index 1fa71e6b8..6c8e81297 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1beta1/clusterpolicyreports.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap; diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs index 3761d0408..e6351b572 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs @@ -2,7 +2,7 @@ // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1beta1/policyreports.yaml --derive=Default --derive=PartialEq // kopium version: 0.16.2 - +use kube::CustomResource; use serde::{Serialize, Deserialize}; use std::collections::BTreeMap;