This is an automated email from the ASF dual-hosted git repository. astefanutti pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit 2b0a4348a93553732b3315bd5d41a0cdfd3c7c26 Author: Antonin Stefanutti <anto...@stefanutti.fr> AuthorDate: Thu Sep 29 10:59:06 2022 +0200 chore(api): Add validation to trait enum parameters in CRDs --- .../bases/camel.apache.org_integrationkits.yaml | 3 + .../camel.apache.org_integrationplatforms.yaml | 92 +++++++++++++++++++++- .../crd/bases/camel.apache.org_integrations.yaml | 46 ++++++++++- .../bases/camel.apache.org_kameletbindings.yaml | 46 ++++++++++- docs/modules/ROOT/partials/apis/camel-k-crds.adoc | 4 +- docs/modules/traits/pages/cron.adoc | 2 +- docs/modules/traits/pages/knative-service.adoc | 2 +- helm/camel-k/crds/crd-integration-kit.yaml | 3 + helm/camel-k/crds/crd-integration-platform.yaml | 92 +++++++++++++++++++++- helm/camel-k/crds/crd-integration.yaml | 46 ++++++++++- helm/camel-k/crds/crd-kamelet-binding.yaml | 46 ++++++++++- pkg/apis/camel/v1/trait/container.go | 1 + pkg/apis/camel/v1/trait/cron.go | 3 +- pkg/apis/camel/v1/trait/deployer.go | 1 + pkg/apis/camel/v1/trait/gc.go | 1 + pkg/apis/camel/v1/trait/knative_service.go | 4 +- pkg/apis/camel/v1/trait/logging.go | 1 + pkg/apis/camel/v1/trait/quarkus.go | 1 + pkg/apis/camel/v1/trait/route.go | 2 + pkg/apis/camel/v1/trait/service.go | 1 + pkg/resources/resources.go | 20 ++--- resources/traits.yaml | 4 +- 22 files changed, 387 insertions(+), 34 deletions(-) diff --git a/config/crd/bases/camel.apache.org_integrationkits.yaml b/config/crd/bases/camel.apache.org_integrationkits.yaml index a6c966e2f..8d51628ab 100644 --- a/config/crd/bases/camel.apache.org_integrationkits.yaml +++ b/config/crd/bases/camel.apache.org_integrationkits.yaml @@ -185,6 +185,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string diff --git a/config/crd/bases/camel.apache.org_integrationplatforms.yaml b/config/crd/bases/camel.apache.org_integrationplatforms.yaml index e990fd40a..90545b2bc 100644 --- a/config/crd/bases/camel.apache.org_integrationplatforms.yaml +++ b/config/crd/bases/camel.apache.org_integrationplatforms.yaml @@ -501,6 +501,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -626,7 +630,7 @@ spec: when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's - required that all periodic consumers have the same period + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -652,6 +656,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -708,6 +716,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned resources @@ -815,6 +827,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. All @@ -1157,7 +1173,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either starting from - a HTTP based consumer or a passive consumer (e.g. `direct` + an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -1175,6 +1191,9 @@ spec: (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -1209,6 +1228,8 @@ spec: a private service. Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -1237,6 +1258,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -1471,6 +1498,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -1552,6 +1582,10 @@ spec: description: "To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer to @@ -1569,6 +1603,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -1594,6 +1632,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: @@ -2139,6 +2181,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -2264,7 +2310,7 @@ spec: when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's - required that all periodic consumers have the same period + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -2290,6 +2336,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -2346,6 +2396,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned resources @@ -2453,6 +2507,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. All @@ -2795,7 +2853,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either starting from - a HTTP based consumer or a passive consumer (e.g. `direct` + an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -2813,6 +2871,9 @@ spec: (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -2847,6 +2908,8 @@ spec: a private service. Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -2875,6 +2938,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -3109,6 +3178,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -3190,6 +3262,10 @@ spec: description: "To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer to @@ -3207,6 +3283,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -3232,6 +3312,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: diff --git a/config/crd/bases/camel.apache.org_integrations.yaml b/config/crd/bases/camel.apache.org_integrations.yaml index 00ce1ac6a..b08f6f3a6 100644 --- a/config/crd/bases/camel.apache.org_integrations.yaml +++ b/config/crd/bases/camel.apache.org_integrations.yaml @@ -6192,6 +6192,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -6317,7 +6321,7 @@ spec: when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's - required that all periodic consumers have the same period + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -6343,6 +6347,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -6399,6 +6407,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned resources @@ -6506,6 +6518,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. All @@ -6848,7 +6864,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either starting from - a HTTP based consumer or a passive consumer (e.g. `direct` + an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -6866,6 +6882,9 @@ spec: (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -6900,6 +6919,8 @@ spec: a private service. Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -6928,6 +6949,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -7162,6 +7189,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -7243,6 +7273,10 @@ spec: description: "To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer to @@ -7260,6 +7294,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -7285,6 +7323,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: diff --git a/config/crd/bases/camel.apache.org_kameletbindings.yaml b/config/crd/bases/camel.apache.org_kameletbindings.yaml index dbf907941..d24809996 100644 --- a/config/crd/bases/camel.apache.org_kameletbindings.yaml +++ b/config/crd/bases/camel.apache.org_kameletbindings.yaml @@ -6470,6 +6470,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -6600,7 +6604,7 @@ spec: consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's required that all periodic consumers have the - same period and it can be expressed as cron schedule + same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -6626,6 +6630,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -6682,6 +6690,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned @@ -6789,6 +6801,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. @@ -7136,7 +7152,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either - starting from a HTTP based consumer or a passive consumer + starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -7156,6 +7172,9 @@ spec: property (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -7192,6 +7211,8 @@ spec: applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -7220,6 +7241,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -7454,6 +7481,9 @@ spec: The kit corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -7541,6 +7571,10 @@ spec: e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer @@ -7560,6 +7594,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -7585,6 +7623,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: diff --git a/docs/modules/ROOT/partials/apis/camel-k-crds.adoc b/docs/modules/ROOT/partials/apis/camel-k-crds.adoc index 6ed75c0d5..a268fd66d 100644 --- a/docs/modules/ROOT/partials/apis/camel-k-crds.adoc +++ b/docs/modules/ROOT/partials/apis/camel-k-crds.adoc @@ -4101,7 +4101,7 @@ bool Automatically deploy the integration as CronJob when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). -It's required that all periodic consumers have the same period and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, +It's required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot). |`startingDeadlineSeconds` + @@ -4913,7 +4913,7 @@ bool Automatically deploy the integration as Knative service when all conditions hold: * Integration is using the Knative profile -* All routes are either starting from a HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer) +* All routes are either starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer) |=== diff --git a/docs/modules/traits/pages/cron.adoc b/docs/modules/traits/pages/cron.adoc index 8708acfda..60d90f904 100755 --- a/docs/modules/traits/pages/cron.adoc +++ b/docs/modules/traits/pages/cron.adoc @@ -68,7 +68,7 @@ Valid values are: | Automatically deploy the integration as CronJob when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). -It's required that all periodic consumers have the same period and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, +It's required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot). | cron.starting-deadline-seconds diff --git a/docs/modules/traits/pages/knative-service.adoc b/docs/modules/traits/pages/knative-service.adoc index 08c9a1e6a..e9729d059 100755 --- a/docs/modules/traits/pages/knative-service.adoc +++ b/docs/modules/traits/pages/knative-service.adoc @@ -79,7 +79,7 @@ Refer to the Knative documentation for more information. | Automatically deploy the integration as Knative service when all conditions hold: * Integration is using the Knative profile -* All routes are either starting from a HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer) +* All routes are either starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer) |=== diff --git a/helm/camel-k/crds/crd-integration-kit.yaml b/helm/camel-k/crds/crd-integration-kit.yaml index a6c966e2f..8d51628ab 100644 --- a/helm/camel-k/crds/crd-integration-kit.yaml +++ b/helm/camel-k/crds/crd-integration-kit.yaml @@ -185,6 +185,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string diff --git a/helm/camel-k/crds/crd-integration-platform.yaml b/helm/camel-k/crds/crd-integration-platform.yaml index e990fd40a..90545b2bc 100644 --- a/helm/camel-k/crds/crd-integration-platform.yaml +++ b/helm/camel-k/crds/crd-integration-platform.yaml @@ -501,6 +501,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -626,7 +630,7 @@ spec: when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's - required that all periodic consumers have the same period + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -652,6 +656,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -708,6 +716,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned resources @@ -815,6 +827,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. All @@ -1157,7 +1173,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either starting from - a HTTP based consumer or a passive consumer (e.g. `direct` + an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -1175,6 +1191,9 @@ spec: (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -1209,6 +1228,8 @@ spec: a private service. Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -1237,6 +1258,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -1471,6 +1498,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -1552,6 +1582,10 @@ spec: description: "To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer to @@ -1569,6 +1603,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -1594,6 +1632,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: @@ -2139,6 +2181,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -2264,7 +2310,7 @@ spec: when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's - required that all periodic consumers have the same period + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -2290,6 +2336,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -2346,6 +2396,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned resources @@ -2453,6 +2507,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. All @@ -2795,7 +2853,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either starting from - a HTTP based consumer or a passive consumer (e.g. `direct` + an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -2813,6 +2871,9 @@ spec: (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -2847,6 +2908,8 @@ spec: a private service. Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -2875,6 +2938,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -3109,6 +3178,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -3190,6 +3262,10 @@ spec: description: "To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer to @@ -3207,6 +3283,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -3232,6 +3312,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: diff --git a/helm/camel-k/crds/crd-integration.yaml b/helm/camel-k/crds/crd-integration.yaml index 00ce1ac6a..b08f6f3a6 100644 --- a/helm/camel-k/crds/crd-integration.yaml +++ b/helm/camel-k/crds/crd-integration.yaml @@ -6192,6 +6192,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -6317,7 +6321,7 @@ spec: when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's - required that all periodic consumers have the same period + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -6343,6 +6347,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -6399,6 +6407,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned resources @@ -6506,6 +6518,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. All @@ -6848,7 +6864,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either starting from - a HTTP based consumer or a passive consumer (e.g. `direct` + an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -6866,6 +6882,9 @@ spec: (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -6900,6 +6919,8 @@ spec: a private service. Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -6928,6 +6949,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -7162,6 +7189,9 @@ spec: corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -7243,6 +7273,10 @@ spec: description: "To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer to @@ -7260,6 +7294,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -7285,6 +7323,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: diff --git a/helm/camel-k/crds/crd-kamelet-binding.yaml b/helm/camel-k/crds/crd-kamelet-binding.yaml index dbf907941..d24809996 100644 --- a/helm/camel-k/crds/crd-kamelet-binding.yaml +++ b/helm/camel-k/crds/crd-kamelet-binding.yaml @@ -6470,6 +6470,10 @@ spec: type: string imagePullPolicy: description: 'The pull policy: Always|Never|IfNotPresent' + enum: + - Always + - Never + - IfNotPresent type: string limitCPU: description: The maximum amount of CPU required. @@ -6600,7 +6604,7 @@ spec: consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). \n It's required that all periodic consumers have the - same period and it can be expressed as cron schedule + same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot)." type: boolean @@ -6626,6 +6630,10 @@ spec: runs, skipping next run if previous run hasn''t finished yet; - "Replace": cancels currently running job and replaces it with a new one' + enum: + - Allow + - Forbid + - Replace type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -6682,6 +6690,10 @@ spec: description: Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + enum: + - deployment + - cron-job + - knative-service type: string useSSA: description: Use server-side apply to update the owned @@ -6789,6 +6801,10 @@ spec: description: 'Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`). Deprecated: to be removed from trait configuration.' + enum: + - disabled + - disk + - memory type: string enabled: description: Can be used to enable or disable a trait. @@ -7136,7 +7152,7 @@ spec: description: "Automatically deploy the integration as Knative service when all conditions hold: \n * Integration is using the Knative profile * All routes are either - starting from a HTTP based consumer or a passive consumer + starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)" type: boolean autoscalingMetric: @@ -7156,6 +7172,9 @@ spec: property (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). \n Refer to the Knative documentation for more information." + enum: + - kpa.autoscaling.knative.dev + - hpa.autoscaling.knative.dev type: string configuration: description: 'Legacy trait configuration parameters. Deprecated: @@ -7192,6 +7211,8 @@ spec: applies the `networking.knative.dev/visibility` label to Knative service. \n Refer to the Knative documentation for more information." + enum: + - cluster-local type: string type: object logging: @@ -7220,6 +7241,12 @@ spec: type: boolean level: description: Adjust the logging level (defaults to INFO) + enum: + - FATAL + - WARN + - INFO + - DEBUG + - TRACE type: string type: object master: @@ -7454,6 +7481,9 @@ spec: The kit corresponding to the first package type will be assigned to the integration in case no existing kit that matches the integration exists. + enum: + - fast-jar + - native items: description: Quarkus package type. type: string @@ -7541,6 +7571,10 @@ spec: e.g. `Allow`, `Disable` or `Redirect` traffic. \n Refer to the OpenShift route documentation for additional information." + enum: + - None + - Allow + - Redirect type: string tlsKey: description: "The TLS certificate key contents. \n Refer @@ -7560,6 +7594,10 @@ spec: description: "The TLS termination type, like `edge`, `passthrough` or `reencrypt`. \n Refer to the OpenShift route documentation for additional information." + enum: + - edge + - reencrypt + - passthrough type: string type: object service: @@ -7585,6 +7623,10 @@ spec: type: description: The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + enum: + - ClusterIP + - NodePort + - LoadBalancer type: string type: object service-binding: diff --git a/pkg/apis/camel/v1/trait/container.go b/pkg/apis/camel/v1/trait/container.go index 0b6213574..d05252c43 100644 --- a/pkg/apis/camel/v1/trait/container.go +++ b/pkg/apis/camel/v1/trait/container.go @@ -55,6 +55,7 @@ type ContainerTrait struct { // The main container image Image string `property:"image" json:"image,omitempty"` // The pull policy: Always|Never|IfNotPresent + // +kubebuilder:validation:Enum=Always;Never;IfNotPresent ImagePullPolicy corev1.PullPolicy `property:"image-pull-policy" json:"imagePullPolicy,omitempty"` // DeprecatedProbesEnabled enable/disable probes on the container (default `false`). diff --git a/pkg/apis/camel/v1/trait/cron.go b/pkg/apis/camel/v1/trait/cron.go index 84bd87c90..67e8cb749 100644 --- a/pkg/apis/camel/v1/trait/cron.go +++ b/pkg/apis/camel/v1/trait/cron.go @@ -51,11 +51,12 @@ type CronTrait struct { // - "Allow": allows CronJobs to run concurrently; // - "Forbid" (default): forbids concurrent runs, skipping next run if previous run hasn't finished yet; // - "Replace": cancels currently running job and replaces it with a new one + // +kubebuilder:validation:Enum=Allow;Forbid;Replace ConcurrencyPolicy string `property:"concurrency-policy" json:"concurrencyPolicy,omitempty"` // Automatically deploy the integration as CronJob when all routes are // either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). // - // It's required that all periodic consumers have the same period and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, + // It's required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, // while `35m` or `50s` cannot). Auto *bool `property:"auto" json:"auto,omitempty"` // Optional deadline in seconds for starting the job if it misses scheduled diff --git a/pkg/apis/camel/v1/trait/deployer.go b/pkg/apis/camel/v1/trait/deployer.go index f26f72bed..f9f666a0e 100644 --- a/pkg/apis/camel/v1/trait/deployer.go +++ b/pkg/apis/camel/v1/trait/deployer.go @@ -24,6 +24,7 @@ package trait type DeployerTrait struct { Trait `property:",squash" json:",inline"` // Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service` when creating the resources for running the integration. + // +kubebuilder:validation:Enum=deployment;cron-job;knative-service Kind string `property:"kind" json:"kind,omitempty"` // Use server-side apply to update the owned resources (default `true`). // Note that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters. diff --git a/pkg/apis/camel/v1/trait/gc.go b/pkg/apis/camel/v1/trait/gc.go index 8b4ddf43c..e61b161f1 100644 --- a/pkg/apis/camel/v1/trait/gc.go +++ b/pkg/apis/camel/v1/trait/gc.go @@ -27,6 +27,7 @@ type GCTrait struct { DiscoveryCache *DiscoveryCacheType `property:"discovery-cache" json:"discoveryCache,omitempty"` } +// +kubebuilder:validation:Enum=disabled;disk;memory type DiscoveryCacheType string const ( diff --git a/pkg/apis/camel/v1/trait/knative_service.go b/pkg/apis/camel/v1/trait/knative_service.go index af8764e2b..a474ec33f 100644 --- a/pkg/apis/camel/v1/trait/knative_service.go +++ b/pkg/apis/camel/v1/trait/knative_service.go @@ -29,6 +29,7 @@ type KnativeServiceTrait struct { // Configures the Knative autoscaling class property (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling). // // Refer to the Knative documentation for more information. + // +kubebuilder:validation:Enum=kpa.autoscaling.knative.dev;hpa.autoscaling.knative.dev Class string `property:"autoscaling-class" json:"class,omitempty"` // Configures the Knative autoscaling metric property (e.g. to set `concurrency` based or `cpu` based autoscaling). // @@ -56,10 +57,11 @@ type KnativeServiceTrait struct { // Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service. // // Refer to the Knative documentation for more information. + // +kubebuilder:validation:Enum=cluster-local Visibility string `property:"visibility" json:"visibility,omitempty"` // Automatically deploy the integration as Knative service when all conditions hold: // // * Integration is using the Knative profile - // * All routes are either starting from a HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer) + // * All routes are either starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer) Auto *bool `property:"auto" json:"auto,omitempty"` } diff --git a/pkg/apis/camel/v1/trait/logging.go b/pkg/apis/camel/v1/trait/logging.go index ea0c466c3..546102468 100644 --- a/pkg/apis/camel/v1/trait/logging.go +++ b/pkg/apis/camel/v1/trait/logging.go @@ -28,6 +28,7 @@ type LoggingTrait struct { // Logs message format Format string `property:"format" json:"format,omitempty"` // Adjust the logging level (defaults to INFO) + // +kubebuilder:validation:Enum=FATAL;WARN;INFO;DEBUG;TRACE Level string `property:"level" json:"level,omitempty"` // Output the logs in JSON JSON *bool `property:"json" json:"json,omitempty"` diff --git a/pkg/apis/camel/v1/trait/quarkus.go b/pkg/apis/camel/v1/trait/quarkus.go index c521fe616..d07b98906 100644 --- a/pkg/apis/camel/v1/trait/quarkus.go +++ b/pkg/apis/camel/v1/trait/quarkus.go @@ -36,6 +36,7 @@ type QuarkusTrait struct { // The order influences the resolution of the current kit for the integration. // The kit corresponding to the first package type will be assigned to the // integration in case no existing kit that matches the integration exists. + // +kubebuilder:validation:Enum=fast-jar;native PackageTypes []QuarkusPackageType `property:"package-type" json:"packageTypes,omitempty"` } diff --git a/pkg/apis/camel/v1/trait/route.go b/pkg/apis/camel/v1/trait/route.go index 29466b9cd..66c242975 100644 --- a/pkg/apis/camel/v1/trait/route.go +++ b/pkg/apis/camel/v1/trait/route.go @@ -36,6 +36,7 @@ type RouteTrait struct { // The TLS termination type, like `edge`, `passthrough` or `reencrypt`. // // Refer to the OpenShift route documentation for additional information. + // +kubebuilder:validation:Enum=edge;reencrypt;passthrough TLSTermination string `property:"tls-termination" json:"tlsTermination,omitempty"` // The TLS certificate contents. // @@ -76,5 +77,6 @@ type RouteTrait struct { // To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic. // // Refer to the OpenShift route documentation for additional information. + // +kubebuilder:validation:Enum=None;Allow;Redirect TLSInsecureEdgeTerminationPolicy string `property:"tls-insecure-edge-termination-policy" json:"tlsInsecureEdgeTerminationPolicy,omitempty"` } diff --git a/pkg/apis/camel/v1/trait/service.go b/pkg/apis/camel/v1/trait/service.go index 039567695..d16baae42 100644 --- a/pkg/apis/camel/v1/trait/service.go +++ b/pkg/apis/camel/v1/trait/service.go @@ -31,6 +31,7 @@ type ServiceTrait struct { // Deprecated: Use service type instead. NodePort *bool `property:"node-port" json:"nodePort,omitempty"` // The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'. + // +kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer Type *ServiceType `property:"type" json:"type,omitempty"` } diff --git a/pkg/resources/resources.go b/pkg/resources/resources.go index ba6a2c379..8795ad166 100644 --- a/pkg/resources/resources.go +++ b/pkg/resources/resources.go @@ -131,30 +131,30 @@ var assets = func() http.FileSystem { "/crd/bases/camel.apache.org_integrationkits.yaml": &vfsgen۰CompressedFileInfo{ name: "camel.apache.org_integrationkits.yaml", modTime: time.Time{}, - uncompressedSize: 15078, + uncompressedSize: 15176, - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x3b\x5d\x6f\xdb\x48\x92\xef\xfa\x15\x85\xf1\x43\x12\x40\xa2\x77\xee\x16\x8b\x83\x0f\xf7\xe0\x75\x92\x59\x23\x89\x9d\x8b\x34\xb3\x37\xc0\x3c\xb8\x44\x96\xa8\x1e\x91\xdd\xdc\xee\xa6\x64\xdd\xe1\xfe\xfb\xa2\xaa\x9b\x14\x25\x91\x92\xc6\x33\xc1\xbe\x84\x2f\xb1\xc8\xee\xea\xfa\xfe\xec\x5c\xc1\xe4\x8f\x7b\x46\x57\xf0\x51\xa5\xa4\x1d\x65\xe0\x0d\xf8\x25\xc1\x6d\x85\xe9\x92\x60\x6a\x16\x7e\x83\x96\xe0\xbd\xa9\x75\x86\x5e\x [...] + compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x3b\x5d\x6f\xdb\x48\x92\xef\xfa\x15\x85\xf1\x43\x12\x40\xa2\x77\xee\x16\x8b\x83\x0f\xf7\xe0\x75\x92\x59\x23\x89\x9d\x8b\x34\xb3\x37\xc0\x3c\xb8\x44\x96\xa8\x1e\x91\xdd\xdc\xee\xa6\x64\xdd\xe1\xfe\xfb\xa2\xaa\x9b\x14\x25\x91\x92\xc6\x33\xc1\xbe\x84\x2f\x89\xc8\xee\xea\xfa\xfe\x6c\x5f\xc1\xe4\x8f\x7b\x46\x57\xf0\x51\xa5\xa4\x1d\x65\xe0\x0d\xf8\x25\xc1\x6d\x85\xe9\x92\x60\x6a\x16\x7e\x83\x96\xe0\xbd\xa9\x75\x86\x5e\x [...] }, "/crd/bases/camel.apache.org_integrationplatforms.yaml": &vfsgen۰CompressedFileInfo{ name: "camel.apache.org_integrationplatforms.yaml", modTime: time.Time{}, - uncompressedSize: 178481, + uncompressedSize: 181351, - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\xfd\x73\xdb\x36\xb6\x30\x8e\xff\x9e\xbf\x02\xe3\xce\x1d\x3b\x19\x49\x4e\xba\xb7\xbb\xbd\x7e\xa6\xf3\x3c\xae\x93\xb6\x6e\xe2\xd8\xd7\x76\x72\xef\x4e\xdb\xa9\x20\xf2\x48\x42\x4c\x02\x5c\x00\x94\xa3\x7e\xf7\xfb\xbf\x7f\x06\x07\x00\x49\x49\x24\x48\x49\x7e\x6b\x23\x76\x66\x37\xb6\x09\xf0\xe0\xe0\xe0\xbc\xe1\xbc\x7c\x45\xfa\x77\xf7\x3c\xfb\x8a\xbc\x63\x11\x70\x05\x31\xd1\x82\xe8\x29\x90\xe3\x8c\x46\x53\x20\x57\x62\x [...] + compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\x7d\x73\xdb\x36\xb6\x30\xfe\x7f\x3e\x05\xc6\x9d\x3b\x76\x32\x92\x9c\xec\xde\xee\xf6\xfa\x4e\xe7\x79\x5c\x27\x6d\xdd\xc4\xb1\xaf\xed\x64\xef\x4e\xdb\xa9\x20\xf2\x48\x42\x4c\x02\x5c\x00\x94\xad\xfe\xf6\xf7\xdd\x9f\xc1\x01\x40\x52\x12\x09\x52\x92\x5f\xd2\x46\xec\xcc\x6e\x6c\x13\xe0\xc1\xc1\xc1\x79\xc3\x79\xf9\x8a\xf4\xef\xef\x79\xf6\x15\x79\xc7\x22\xe0\x0a\x62\xa2\x05\xd1\x53\x20\xc7\x19\x8d\xa6\x40\xae\xc4\x58\x [...] }, "/crd/bases/camel.apache.org_integrations.yaml": &vfsgen۰CompressedFileInfo{ name: "camel.apache.org_integrations.yaml", modTime: time.Time{}, - uncompressedSize: 487606, + uncompressedSize: 489041, - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x73\x1b\x37\x96\x38\x0c\xff\xef\x4f\x81\x72\x52\x3f\x49\x1b\x91\xb2\x33\xb3\x53\x3b\x7e\xa7\x36\xa5\x91\xe4\x44\x6f\x6c\x99\x65\x29\xc9\x2f\xe5\x64\x13\xb0\x1b\x24\xb1\x6a\x02\x3d\x00\x9a\x12\xe7\xc9\xf3\xdd\x9f\xc2\x01\xd0\x17\xde\xfa\xa0\x45\x3a\xce\x4c\x63\xaa\x32\x26\xc5\x3e\x8d\xcb\xc1\xb9\x5f\x3e\x23\x83\xfd\x8d\x67\x9f\x91\x37\x3c\x61\x42\xb3\x94\x18\x49\xcc\x8c\x91\xf3\x9c\x26\x33\x46\x6e\xe5\xc4\x [...] + compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x73\x1b\x37\x96\x38\x0c\xff\xef\x4f\x81\x72\x52\x3f\x49\x1b\x91\xb2\x33\xb3\x53\x3b\x7e\xa7\x36\xa5\x91\xe4\x44\x6f\x6c\x99\x65\x29\xc9\x2f\xe5\x64\x13\xb0\x1b\x24\xb1\x6a\x02\x3d\x00\x9a\x12\xe7\xc9\xf3\xdd\x9f\xc2\x01\xd0\x17\xde\xfa\xa0\x45\x3a\xce\x4c\x63\xaa\x32\x26\xc5\x3e\x8d\xcb\xc1\xb9\x5f\x3e\x23\x83\xfd\x8d\x67\x9f\x91\x37\x3c\x61\x42\xb3\x94\x18\x49\xcc\x8c\x91\xf3\x9c\x26\x33\x46\x6e\xe5\xc4\x [...] }, "/crd/bases/camel.apache.org_kameletbindings.yaml": &vfsgen۰CompressedFileInfo{ name: "camel.apache.org_kameletbindings.yaml", modTime: time.Time{}, - uncompressedSize: 561496, + uncompressedSize: 563099, - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x73\x1b\x37\xb6\x28\x8a\xff\x9f\x4f\x81\x72\x52\x47\xd2\x8e\x48\xd9\x99\x47\xed\xf1\x6f\xea\xa4\xb4\x65\x39\xd1\x2f\xb1\xcc\xb2\x94\xe4\xa4\x9c\xec\x04\xec\x06\x49\x1c\x35\x81\xde\x00\x9a\x12\xe7\xe6\x7e\xf7\x5b\x58\x00\xba\xd1\x7c\x09\xab\x29\x69\xe4\x99\xc6\x54\x65\x4c\x8a\xbd\x1a\x8f\x85\xf5\x7e\x7c\x4e\x06\x0f\x37\x3e\xfb\x9c\x7c\xcf\x33\x26\x34\xcb\x89\x91\xc4\xcc\x18\x39\x2d\x69\x36\x63\xe4\x4a\x4e\x [...] + compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x73\x1b\x37\xb6\x28\x8a\xff\x9f\x4f\x81\x72\x52\x47\xd2\x8e\x48\xd9\x99\x47\xed\xf1\x6f\xea\xa4\xb4\x65\x39\xd1\x2f\xb1\xcc\xb2\x94\xe4\xa4\x9c\xec\x04\xec\x06\x49\x1c\x35\x81\xde\x00\x9a\x12\xe7\xe6\x7e\xf7\x5b\x58\x00\xba\xd1\x7c\x09\xab\x29\x69\xe4\x99\xc6\x54\x65\x4c\x8a\xbd\x1a\x8f\x85\xf5\x7e\x7c\x4e\x06\x0f\x37\x3e\xfb\x9c\x7c\xcf\x33\x26\x34\xcb\x89\x91\xc4\xcc\x18\x39\x2d\x69\x36\x63\xe4\x4a\x4e\x [...] }, "/crd/bases/camel.apache.org_kamelets.yaml": &vfsgen۰CompressedFileInfo{ name: "camel.apache.org_kamelets.yaml", @@ -611,9 +611,9 @@ var assets = func() http.FileSystem { "/traits.yaml": &vfsgen۰CompressedFileInfo{ name: "traits.yaml", modTime: time.Time{}, - uncompressedSize: 57922, + uncompressedSize: 59349, - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x7d\xfd\x77\x1b\xb9\x91\xe0\xef\xfe\x2b\xf0\xb4\xb7\x4f\x92\x1f\x49\x69\x26\x9b\xec\xac\xee\xbc\x39\x8d\xed\x49\x34\xe3\x0f\x9d\xa5\x99\x6c\x9e\xcf\x2f\x04\xbb\x41\x12\x66\x37\xd0\x01\xd0\x92\x99\xdb\xfb\xdf\xef\xa1\xaa\xf0\xd1\xcd\xa6\x48\xd9\xd6\x5c\x74\xb9\xcc\x7b\xb1\x48\x76\x17\x0a\x85\x42\xa1\x50\x9f\xce\x70\xe9\xec\xd9\x93\x31\x53\xbc\x16\x67\xec\x37\xb6\xe0\x95\x78\xc2\x58\x53\x71\x37\xd7\xa6\x3e\x63\x73\x [...] + compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x7d\xfd\x77\x1b\x37\x92\xe0\xef\xf9\x2b\xf0\xb4\xb7\x4f\x92\x1f\x49\x39\x99\x9d\xd9\xac\xee\xbc\x73\x8a\xed\xcc\x28\xf1\x87\xce\x52\x32\x3b\xcf\xe7\x37\x04\xbb\x41\x12\x66\x37\xd0\x01\xd0\x92\x99\xdb\xfb\xdf\xef\xa1\xaa\xf0\xd1\xcd\xa6\x48\xd9\x52\x6e\x74\x73\x3b\xef\x6d\x2c\xa9\x51\x28\x14\x0a\x85\x42\x7d\x3a\xc3\xa5\xb3\xa7\x5f\x8d\x99\xe2\xb5\x38\x65\xbf\xb3\x05\xaf\xc4\x57\x8c\x35\x15\x77\x73\x6d\xea\x53\x36\x [...] }, } fs["/"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ diff --git a/resources/traits.yaml b/resources/traits.yaml index 940c7c7c1..4bc741a2f 100755 --- a/resources/traits.yaml +++ b/resources/traits.yaml @@ -334,7 +334,7 @@ traits: description: Automatically deploy the integration as CronJob when all routes are either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). It's - required that all periodic consumers have the same period and it can be expressed + required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, while `35m` or `50s` cannot). - name: starting-deadline-seconds @@ -885,7 +885,7 @@ traits: type: bool description: 'Automatically deploy the integration as Knative service when all conditions hold: * Integration is using the Knative profile * All routes are - either starting from a HTTP based consumer or a passive consumer (e.g. `direct` + either starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)' - name: logging platform: false