You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ts...@apache.org on 2022/07/08 06:12:02 UTC
[camel-k] 07/14: chore(crd,doc): regen crd & docs
This is an automated email from the ASF dual-hosted git repository.
tsato pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit aeca95989e6ea2d37585ca2548f9f5791ae1e5ff
Author: Tadayoshi Sato <sa...@gmail.com>
AuthorDate: Thu Jun 30 19:04:00 2022 +0900
chore(crd,doc): regen crd & docs
---
.../bases/camel.apache.org_integrationkits.yaml | 76 +-
.../camel.apache.org_integrationplatforms.yaml | 2994 ++++++++++++++++++--
.../crd/bases/camel.apache.org_integrations.yaml | 1258 +++++++-
.../bases/camel.apache.org_kameletbindings.yaml | 1281 ++++++++-
docs/modules/traits/pages/container.adoc | 2 +-
docs/modules/traits/pages/gc.adoc | 2 +-
docs/modules/traits/pages/quarkus.adoc | 2 +-
docs/modules/traits/pages/service-binding.adoc | 3 +-
go.mod | 2 +-
go.sum | 3 +-
helm/camel-k/crds/crd-integration-kit.yaml | 76 +-
helm/camel-k/crds/crd-integration-platform.yaml | 2994 ++++++++++++++++++--
helm/camel-k/crds/crd-integration.yaml | 1258 +++++++-
helm/camel-k/crds/crd-kamelet-binding.yaml | 1281 ++++++++-
pkg/resources/resources.go | 20 +-
resources/traits.yaml | 322 +--
script/gen_crd.sh | 10 +-
script/gen_doc.sh | 7 +-
18 files changed, 10838 insertions(+), 753 deletions(-)
diff --git a/config/crd/bases/camel.apache.org_integrationkits.yaml b/config/crd/bases/camel.apache.org_integrationkits.yaml
index ca5c8f90f..06e61aaf3 100644
--- a/config/crd/bases/camel.apache.org_integrationkits.yaml
+++ b/config/crd/bases/camel.apache.org_integrationkits.yaml
@@ -111,7 +111,7 @@ spec:
type: string
type: array
image:
- description: the container image as identify in the container registry
+ description: the container image as identified in the container registry
type: string
profile:
description: the profile which is expected by this kit
@@ -122,17 +122,73 @@ spec:
type: string
type: array
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
+ description: traits that the kit will execute
+ properties:
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of an addon
+ trait
type: object
x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: traits that the kit will execute
+ description: The collection of addon trait configurations
+ type: object
+ builder:
+ description: The builder trait is internally used to determine
+ the best strategy to build and configure IntegrationKits.
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the build
+ task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ quarkus:
+ description: 'The Quarkus trait configures the Quarkus runtime.
+ It''s enabled by default. NOTE: Compiling to a native executable,
+ i.e. when using `package-type=native`, is only supported for
+ kamelets, as well as YAML and XML integrations. It also requires
+ at least 4GiB of memory, so the Pod running the native build,
+ that is either the operator Pod, or the build Pod (depending
+ on the build strategy configured for the platform), must have
+ enough memory available.'
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
type: object
type: object
status:
diff --git a/config/crd/bases/camel.apache.org_integrationplatforms.yaml b/config/crd/bases/camel.apache.org_integrationplatforms.yaml
index d83005fbe..716a18b7e 100644
--- a/config/crd/bases/camel.apache.org_integrationplatforms.yaml
+++ b/config/crd/bases/camel.apache.org_integrationplatforms.yaml
@@ -367,255 +367,1495 @@ spec:
description: 'Deprecated: not used'
type: object
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
- type: object
- x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
description: list of traits to be executed for all the Integration/IntegrationKits
built from this IntegrationPlatform
- type: object
- type: object
- status:
- description: IntegrationPlatformStatus defines the observed state of IntegrationPlatform
- properties:
- build:
- description: specify how to build the Integration/IntegrationKits
properties:
- PublishStrategyOptions:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
additionalProperties:
- type: string
+ description: AddonTrait represents the configuration of an addon
+ trait
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ description: The extension point with addon traits
type: object
- baseImage:
- description: a base image that can be used as base layer for all
- images. It can be useful if you want to provide some custom
- base image with further utility softwares
- type: string
- buildStrategy:
- description: the strategy to adopt for building an Integration
- base image
- enum:
- - routine
- - pod
- type: string
- kanikoBuildCache:
- description: 'Deprecated: Use PublishStrategyOptions instead enables
- Kaniko publish strategy cache'
- type: boolean
- maven:
- description: Maven configuration used to build the Camel/Camel-Quarkus
- applications
+ affinity:
+ description: The configuration of Affinity trait
properties:
- caSecret:
- description: 'Deprecated: use CASecrets The Secret name and
- key, containing the CA certificate(s) used to connect to
- remote Maven repositories. It can contain X.509 certificates,
- and PKCS#7 formatted certificate chains. A JKS formatted
- keystore is automatically created to store the CA certificate(s),
- and configured to be used as a trusted certificate(s) by
- the Maven commands. Note that the root CA certificates are
- also imported into the created keystore.'
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
type: object
- caSecrets:
- description: The Secrets name and key, containing the CA certificate(s)
- used to connect to remote Maven repositories. It can contain
- X.509 certificates, and PKCS#7 formatted certificate chains.
- A JKS formatted keystore is automatically created to store
- the CA certificate(s), and configured to be used as a trusted
- certificate(s) by the Maven commands. Note that the root
- CA certificates are also imported into the created keystore.
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on the
+ node.
items:
- description: SecretKeySelector selects a key of a Secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
+ type: string
type: array
- cliOptions:
- description: The CLI options that are appended to the list
- of arguments for Maven commands, e.g., `-V,--no-transfer-progress,-Dstyle.color=never`.
- See https://maven.apache.org/ref/3.8.4/maven-embedder/cli.html.
+ podAffinity:
+ description: Always co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should be co-located with.
items:
type: string
type: array
- extension:
- description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should not be co-located with.
items:
- description: MavenArtifact defines a GAV (Group:Artifact:Version)
- Maven artifact
- properties:
- artifactId:
- description: Maven Artifact
- type: string
- groupId:
- description: Maven Group
- type: string
- version:
- description: Maven Version
- type: string
- required:
- - artifactId
- - groupId
- type: object
+ type: string
type: array
- localRepository:
- description: The path of the local Maven repository.
- type: string
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
properties:
- additionalProperties:
+ description: A list of properties to be provided to the build
+ task
+ items:
type: string
- description: The Maven properties.
- type: object
- settings:
- description: A reference to the ConfigMap or Secret key that
- contains the Maven settings.
- properties:
- configMapKeyRef:
- description: Selects a key of a ConfigMap.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- secretKeyRef:
- description: Selects a key of a secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- type: object
- settingsSecurity:
- description: A reference to the ConfigMap or Secret key that
- contains the security of the Maven settings.
- properties:
- configMapKeyRef:
- description: Selects a key of a ConfigMap.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- secretKeyRef:
- description: Selects a key of a secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the Integration
+ runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the integration.
+ It overrides the default version set in the Integration
+ Platform.
+ type: string
type: object
- persistentVolumeClaim:
- description: 'Deprecated: Use PublishStrategyOptions instead the
- Persistent Volume Claim used by Kaniko publish strategy, if
- cache is enabled'
- type: string
- publishStrategy:
- description: the strategy to adopt for publishing an Integration
- base image
- type: string
- registry:
- description: the image registry used to push/pull Integration
- images
+ container:
+ description: The configuration of Container trait
properties:
- address:
- description: the URI to access
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via kubernetes
+ Service.
+ type: boolean
+ image:
+ description: The main container image
type: string
- ca:
- description: the configmap which stores the Certificate Authority
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
type: string
- insecure:
- description: if the container registry is insecure (ie, http
- only)
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before liveness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the liveness probe. Deprecated: replaced by the
+ health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the liveness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by the
+ container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the port
+ exposed by the container. It defaults to `http` only when
+ the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
type: boolean
- organization:
- description: the registry organization
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before readiness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ readiness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the readiness probe. Deprecated: replaced by
+ the health trait.'
type: string
- secret:
- description: the secret where credentials are stored
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the readiness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the container
+ port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name the
+ container port is to be exposed (default `http`).
type: string
type: object
- runtimeProvider:
- description: the runtime used. Likely Camel Quarkus (we used to
- have main runtime which has been discontinued since version
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative to
+ the start time, that the job may be continuously active
+ before it is considered to be failed. It defaults to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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). \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work when
+ the schedule is triggered externally by Kubernetes. A specific
+ customizer is activated for each specified component. E.g.
+ for the `timer` component, the `cron-timer` customizer is
+ activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the `cron`
+ endpoint (`quartz`) instead of trying to materialize the
+ integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the same
+ schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting the
+ job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed. It
+ defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and
+ `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added to
+ the integration container. The syntax is KEY=VALUE, e.g.,
+ `MY_VAR="my value"`. These take precedence over the previously
+ defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either `disabled`,
+ `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has started
+ before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness probe
+ times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has started
+ before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness probe
+ times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever the
+ integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR subnets
+ that should not be intercepted by the Istio proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16`
+ by default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment and
+ not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path, used
+ to verify client certificates, applicable when `protocol`
+ is `https` and `use-ssl-client-authentication` is `true`
+ (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a client
+ certificate to allow access to the Jolokia endpoint, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a client
+ flag in the extended key usage section, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent should
+ bind to. If `"\*"` or `"0.0.0.0"` is given, the servers
+ binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used for
+ authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for the
+ newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before the
+ main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM in
+ the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to load
+ into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete configuration
+ in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of integration
+ routes. Can contain simple endpoint names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration will
+ produce. Can contain simple event types or full Camel URIs
+ (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration will
+ be subscribed to. Can contain simple event types or full
+ Camel URIs (to use a specific broker different from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the header
+ "ce-knativehistory". Since this header has been removed
+ in newer versions of Knative, filtering is disabled by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink via
+ a Knative SinkBinding resource. This can be used when the
+ integration targets a single sink. It's enabled by default
+ when the integration targets a single sink (except when
+ the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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`
+ is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric property
+ (e.g. to set `concurrency` based or `cpu` based autoscaling).
+ \n Refer to the Knative documentation for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU percentage
+ (depending on the autoscaling metric) for each Pod. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class property
+ (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev`
+ autoscaling). \n Refer to the Knative documentation for
+ more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that can
+ be running in parallel for the integration. Knative has
+ its own cap value that depends on the installation. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be running
+ at any time for the integration. It's **zero** by default,
+ meaning that the integration is scaled down to zero when
+ not used for a configured amount of time. \n Refer to the
+ Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the latest
+ Revision and sets the rollout duration. It's disabled by
+ default and must be expressed as a Golang `time.Duration`
+ string representation, rounded to a second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources as
+ they are processed by runtime Camel Context and tried to
+ be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly from
+ the Route. Syntax: [configmap|secret]:name[/key], where
+ name represents the resource name and key optionally represents
+ the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The destination
+ path can be either a default location or any path specified
+ by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path represents
+ the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be mounted.
+ Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that can
+ be unavailable after an eviction. It can be either an absolute
+ number or a percentage (default `1` if `min-available` is
+ also not set). Only one of `max-unavailable` and `min-available`
+ can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that must
+ still be available after an eviction. It can be either an
+ absolute number or a percentage. Only one of `min-available`
+ and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when the
+ platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created globally
+ in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created (default
+ `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared platform,
+ this enables delegation of the `system:image-puller` cluster
+ role on the operator namespace to the integration service
+ account.
+ type: boolean
+ secretName:
+ description: The pull secret name to set on the Pod. If left
+ empty this is automatically taken from the `IntegrationPlatform`
+ registry configuration.
+ type: string
+ type: object
+ quarkus:
+ description: The configuration of Quarkus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
+ registry:
+ description: The configuration of Registry trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ route:
+ description: The configuration of Route trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: To configure the host exposed by the route.
+ type: string
+ tlsCACertificate:
+ description: "The TLS CA certificate contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsCACertificateSecret:
+ description: "The secret name and key reference to the TLS
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsCertificate:
+ description: "The TLS certificate contents. \n Refer to the
+ OpenShift route documentation for additional information."
+ type: string
+ tlsCertificateSecret:
+ description: "The secret name and key reference to the TLS
+ certificate. The format is \"secret-name[/key-name]\", the
+ value represents the secret name, if there is only one key
+ in the secret it will be read, otherwise you can set a key
+ name separated with a \"/\". \n Refer to the OpenShift route
+ documentation for additional information."
+ type: string
+ tlsDestinationCACertificate:
+ description: "The destination CA certificate provides the
+ contents of the ca certificate of the final destination.
+ \ When using reencrypt termination this file should be provided
+ in order to have routers use it for health checks on the
+ secure connection. If this field is not specified, the router
+ may provide its own destination CA and perform hostname
+ validation using the short service name (service.namespace.svc),
+ which allows infrastructure generated certificates to automatically
+ verify. \n Refer to the OpenShift route documentation for
+ additional information."
+ type: string
+ tlsDestinationCACertificateSecret:
+ description: "The secret name and key reference to the destination
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsInsecureEdgeTerminationPolicy:
+ 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."
+ type: string
+ tlsKey:
+ description: "The TLS certificate key contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsKeySecret:
+ description: "The secret name and key reference to the TLS
+ certificate key. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsTermination:
+ description: "The TLS termination type, like `edge`, `passthrough`
+ or `reencrypt`. \n Refer to the OpenShift route documentation
+ for additional information."
+ type: string
+ type: object
+ service:
+ description: The configuration of Service trait
+ properties:
+ auto:
+ description: To automatically detect from the code if a Service
+ needs to be created.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodePort:
+ description: Enable Service to be exposed as NodePort (default
+ `false`).
+ type: boolean
+ type: object
+ service-binding:
+ description: The configuration of Service Binding trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ services:
+ description: List of Services in the form [[apigroup/]version:]kind:[namespace/]name
+ items:
+ type: string
+ type: array
+ type: object
+ strimzi:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ toleration:
+ description: The configuration of Toleration trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ taints:
+ description: The list of taints to tolerate, in the form `Key[=Value]:Effect[:Seconds]`
+ items:
+ type: string
+ type: array
+ type: object
+ tracing:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ type: object
+ type: object
+ status:
+ description: IntegrationPlatformStatus defines the observed state of IntegrationPlatform
+ properties:
+ build:
+ description: specify how to build the Integration/IntegrationKits
+ properties:
+ PublishStrategyOptions:
+ additionalProperties:
+ type: string
+ type: object
+ baseImage:
+ description: a base image that can be used as base layer for all
+ images. It can be useful if you want to provide some custom
+ base image with further utility softwares
+ type: string
+ buildStrategy:
+ description: the strategy to adopt for building an Integration
+ base image
+ enum:
+ - routine
+ - pod
+ type: string
+ kanikoBuildCache:
+ description: 'Deprecated: Use PublishStrategyOptions instead enables
+ Kaniko publish strategy cache'
+ type: boolean
+ maven:
+ description: Maven configuration used to build the Camel/Camel-Quarkus
+ applications
+ properties:
+ caSecret:
+ description: 'Deprecated: use CASecrets The Secret name and
+ key, containing the CA certificate(s) used to connect to
+ remote Maven repositories. It can contain X.509 certificates,
+ and PKCS#7 formatted certificate chains. A JKS formatted
+ keystore is automatically created to store the CA certificate(s),
+ and configured to be used as a trusted certificate(s) by
+ the Maven commands. Note that the root CA certificates are
+ also imported into the created keystore.'
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ caSecrets:
+ description: The Secrets name and key, containing the CA certificate(s)
+ used to connect to remote Maven repositories. It can contain
+ X.509 certificates, and PKCS#7 formatted certificate chains.
+ A JKS formatted keystore is automatically created to store
+ the CA certificate(s), and configured to be used as a trusted
+ certificate(s) by the Maven commands. Note that the root
+ CA certificates are also imported into the created keystore.
+ items:
+ description: SecretKeySelector selects a key of a Secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ type: array
+ cliOptions:
+ description: The CLI options that are appended to the list
+ of arguments for Maven commands, e.g., `-V,--no-transfer-progress,-Dstyle.color=never`.
+ See https://maven.apache.org/ref/3.8.4/maven-embedder/cli.html.
+ items:
+ type: string
+ type: array
+ extension:
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
+ items:
+ description: MavenArtifact defines a GAV (Group:Artifact:Version)
+ Maven artifact
+ properties:
+ artifactId:
+ description: Maven Artifact
+ type: string
+ groupId:
+ description: Maven Group
+ type: string
+ version:
+ description: Maven Version
+ type: string
+ required:
+ - artifactId
+ - groupId
+ type: object
+ type: array
+ localRepository:
+ description: The path of the local Maven repository.
+ type: string
+ properties:
+ additionalProperties:
+ type: string
+ description: The Maven properties.
+ type: object
+ settings:
+ description: A reference to the ConfigMap or Secret key that
+ contains the Maven settings.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ secretKeyRef:
+ description: Selects a key of a secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ type: object
+ settingsSecurity:
+ description: A reference to the ConfigMap or Secret key that
+ contains the security of the Maven settings.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ secretKeyRef:
+ description: Selects a key of a secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ type: object
+ type: object
+ persistentVolumeClaim:
+ description: 'Deprecated: Use PublishStrategyOptions instead the
+ Persistent Volume Claim used by Kaniko publish strategy, if
+ cache is enabled'
+ type: string
+ publishStrategy:
+ description: the strategy to adopt for publishing an Integration
+ base image
+ type: string
+ registry:
+ description: the image registry used to push/pull Integration
+ images
+ properties:
+ address:
+ description: the URI to access
+ type: string
+ ca:
+ description: the configmap which stores the Certificate Authority
+ type: string
+ insecure:
+ description: if the container registry is insecure (ie, http
+ only)
+ type: boolean
+ organization:
+ description: the registry organization
+ type: string
+ secret:
+ description: the secret where credentials are stored
+ type: string
+ type: object
+ runtimeProvider:
+ description: the runtime used. Likely Camel Quarkus (we used to
+ have main runtime which has been discontinued since version
1.5)
type: string
runtimeVersion:
@@ -711,39 +1951,1279 @@ spec:
uri:
description: the remote repository in the format github:ORG/REPO/PATH_TO_KAMELETS_FOLDER
type: string
- type: object
- type: array
- type: object
- observedGeneration:
- description: ObservedGeneration is the most recent generation observed
- for this IntegrationPlatform.
- format: int64
- type: integer
- phase:
- description: defines in what phase the IntegrationPlatform is found
- type: string
- profile:
- description: the profile you wish to use. It will apply certain traits
- which are required by the specific profile chosen. It usually relates
- the Cluster with the optional definition of special profiles (ie,
- Knative)
- type: string
- resources:
- description: 'Deprecated: not used'
- type: object
- traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
- type: object
- x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: list of traits to be executed for all the Integration/IntegrationKits
- built from this IntegrationPlatform
+ type: object
+ type: array
+ type: object
+ observedGeneration:
+ description: ObservedGeneration is the most recent generation observed
+ for this IntegrationPlatform.
+ format: int64
+ type: integer
+ phase:
+ description: defines in what phase the IntegrationPlatform is found
+ type: string
+ profile:
+ description: the profile you wish to use. It will apply certain traits
+ which are required by the specific profile chosen. It usually relates
+ the Cluster with the optional definition of special profiles (ie,
+ Knative)
+ type: string
+ resources:
+ description: 'Deprecated: not used'
+ type: object
+ traits:
+ description: list of traits to be executed for all the Integration/IntegrationKits
+ built from this IntegrationPlatform
+ properties:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of an addon
+ trait
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ description: The extension point with addon traits
+ type: object
+ affinity:
+ description: The configuration of Affinity trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on the
+ node.
+ items:
+ type: string
+ type: array
+ podAffinity:
+ description: Always co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should be co-located with.
+ items:
+ type: string
+ type: array
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should not be co-located with.
+ items:
+ type: string
+ type: array
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the build
+ task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the Integration
+ runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the integration.
+ It overrides the default version set in the Integration
+ Platform.
+ type: string
+ type: object
+ container:
+ description: The configuration of Container trait
+ properties:
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via kubernetes
+ Service.
+ type: boolean
+ image:
+ description: The main container image
+ type: string
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
+ type: string
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before liveness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the liveness probe. Deprecated: replaced by the
+ health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the liveness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by the
+ container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the port
+ exposed by the container. It defaults to `http` only when
+ the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
+ type: boolean
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before readiness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ readiness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the readiness probe. Deprecated: replaced by
+ the health trait.'
+ type: string
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the readiness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the container
+ port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name the
+ container port is to be exposed (default `http`).
+ type: string
+ type: object
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative to
+ the start time, that the job may be continuously active
+ before it is considered to be failed. It defaults to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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). \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work when
+ the schedule is triggered externally by Kubernetes. A specific
+ customizer is activated for each specified component. E.g.
+ for the `timer` component, the `cron-timer` customizer is
+ activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the `cron`
+ endpoint (`quartz`) instead of trying to materialize the
+ integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the same
+ schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting the
+ job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed. It
+ defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and
+ `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added to
+ the integration container. The syntax is KEY=VALUE, e.g.,
+ `MY_VAR="my value"`. These take precedence over the previously
+ defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either `disabled`,
+ `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has started
+ before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness probe
+ times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has started
+ before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness probe
+ times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever the
+ integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR subnets
+ that should not be intercepted by the Istio proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16`
+ by default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment and
+ not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path, used
+ to verify client certificates, applicable when `protocol`
+ is `https` and `use-ssl-client-authentication` is `true`
+ (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a client
+ certificate to allow access to the Jolokia endpoint, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a client
+ flag in the extended key usage section, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent should
+ bind to. If `"\*"` or `"0.0.0.0"` is given, the servers
+ binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used for
+ authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for the
+ newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before the
+ main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM in
+ the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to load
+ into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete configuration
+ in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of integration
+ routes. Can contain simple endpoint names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration will
+ produce. Can contain simple event types or full Camel URIs
+ (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration will
+ be subscribed to. Can contain simple event types or full
+ Camel URIs (to use a specific broker different from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the header
+ "ce-knativehistory". Since this header has been removed
+ in newer versions of Knative, filtering is disabled by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink via
+ a Knative SinkBinding resource. This can be used when the
+ integration targets a single sink. It's enabled by default
+ when the integration targets a single sink (except when
+ the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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`
+ is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric property
+ (e.g. to set `concurrency` based or `cpu` based autoscaling).
+ \n Refer to the Knative documentation for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU percentage
+ (depending on the autoscaling metric) for each Pod. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class property
+ (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev`
+ autoscaling). \n Refer to the Knative documentation for
+ more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that can
+ be running in parallel for the integration. Knative has
+ its own cap value that depends on the installation. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be running
+ at any time for the integration. It's **zero** by default,
+ meaning that the integration is scaled down to zero when
+ not used for a configured amount of time. \n Refer to the
+ Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the latest
+ Revision and sets the rollout duration. It's disabled by
+ default and must be expressed as a Golang `time.Duration`
+ string representation, rounded to a second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources as
+ they are processed by runtime Camel Context and tried to
+ be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly from
+ the Route. Syntax: [configmap|secret]:name[/key], where
+ name represents the resource name and key optionally represents
+ the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The destination
+ path can be either a default location or any path specified
+ by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path represents
+ the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be mounted.
+ Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that can
+ be unavailable after an eviction. It can be either an absolute
+ number or a percentage (default `1` if `min-available` is
+ also not set). Only one of `max-unavailable` and `min-available`
+ can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that must
+ still be available after an eviction. It can be either an
+ absolute number or a percentage. Only one of `min-available`
+ and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when the
+ platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created globally
+ in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created (default
+ `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared platform,
+ this enables delegation of the `system:image-puller` cluster
+ role on the operator namespace to the integration service
+ account.
+ type: boolean
+ secretName:
+ description: The pull secret name to set on the Pod. If left
+ empty this is automatically taken from the `IntegrationPlatform`
+ registry configuration.
+ type: string
+ type: object
+ quarkus:
+ description: The configuration of Quarkus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
+ registry:
+ description: The configuration of Registry trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ route:
+ description: The configuration of Route trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: To configure the host exposed by the route.
+ type: string
+ tlsCACertificate:
+ description: "The TLS CA certificate contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsCACertificateSecret:
+ description: "The secret name and key reference to the TLS
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsCertificate:
+ description: "The TLS certificate contents. \n Refer to the
+ OpenShift route documentation for additional information."
+ type: string
+ tlsCertificateSecret:
+ description: "The secret name and key reference to the TLS
+ certificate. The format is \"secret-name[/key-name]\", the
+ value represents the secret name, if there is only one key
+ in the secret it will be read, otherwise you can set a key
+ name separated with a \"/\". \n Refer to the OpenShift route
+ documentation for additional information."
+ type: string
+ tlsDestinationCACertificate:
+ description: "The destination CA certificate provides the
+ contents of the ca certificate of the final destination.
+ \ When using reencrypt termination this file should be provided
+ in order to have routers use it for health checks on the
+ secure connection. If this field is not specified, the router
+ may provide its own destination CA and perform hostname
+ validation using the short service name (service.namespace.svc),
+ which allows infrastructure generated certificates to automatically
+ verify. \n Refer to the OpenShift route documentation for
+ additional information."
+ type: string
+ tlsDestinationCACertificateSecret:
+ description: "The secret name and key reference to the destination
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsInsecureEdgeTerminationPolicy:
+ 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."
+ type: string
+ tlsKey:
+ description: "The TLS certificate key contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsKeySecret:
+ description: "The secret name and key reference to the TLS
+ certificate key. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsTermination:
+ description: "The TLS termination type, like `edge`, `passthrough`
+ or `reencrypt`. \n Refer to the OpenShift route documentation
+ for additional information."
+ type: string
+ type: object
+ service:
+ description: The configuration of Service trait
+ properties:
+ auto:
+ description: To automatically detect from the code if a Service
+ needs to be created.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodePort:
+ description: Enable Service to be exposed as NodePort (default
+ `false`).
+ type: boolean
+ type: object
+ service-binding:
+ description: The configuration of Service Binding trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ services:
+ description: List of Services in the form [[apigroup/]version:]kind:[namespace/]name
+ items:
+ type: string
+ type: array
+ type: object
+ strimzi:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ toleration:
+ description: The configuration of Toleration trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ taints:
+ description: The list of taints to tolerate, in the form `Key[=Value]:Effect[:Seconds]`
+ items:
+ type: string
+ type: array
+ type: object
+ tracing:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
type: object
version:
description: the Camel K operator version controlling this IntegrationPlatform
diff --git a/config/crd/bases/camel.apache.org_integrations.yaml b/config/crd/bases/camel.apache.org_integrations.yaml
index 764a2e332..e0cc1dbae 100644
--- a/config/crd/bases/camel.apache.org_integrations.yaml
+++ b/config/crd/bases/camel.apache.org_integrations.yaml
@@ -5845,17 +5845,1257 @@ spec:
type: object
type: object
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
+ description: the traits needed to run this Integration
+ properties:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of an addon
+ trait
type: object
x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: the traits needed to run this Integration
+ description: The extension point with addon traits
+ type: object
+ affinity:
+ description: The configuration of Affinity trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on the
+ node.
+ items:
+ type: string
+ type: array
+ podAffinity:
+ description: Always co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should be co-located with.
+ items:
+ type: string
+ type: array
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should not be co-located with.
+ items:
+ type: string
+ type: array
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the build
+ task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the Integration
+ runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the integration.
+ It overrides the default version set in the Integration
+ Platform.
+ type: string
+ type: object
+ container:
+ description: The configuration of Container trait
+ properties:
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via kubernetes
+ Service.
+ type: boolean
+ image:
+ description: The main container image
+ type: string
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
+ type: string
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before liveness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the liveness probe. Deprecated: replaced by the
+ health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the liveness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by the
+ container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the port
+ exposed by the container. It defaults to `http` only when
+ the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
+ type: boolean
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before readiness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ readiness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the readiness probe. Deprecated: replaced by
+ the health trait.'
+ type: string
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the readiness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the container
+ port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name the
+ container port is to be exposed (default `http`).
+ type: string
+ type: object
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative to
+ the start time, that the job may be continuously active
+ before it is considered to be failed. It defaults to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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). \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work when
+ the schedule is triggered externally by Kubernetes. A specific
+ customizer is activated for each specified component. E.g.
+ for the `timer` component, the `cron-timer` customizer is
+ activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the `cron`
+ endpoint (`quartz`) instead of trying to materialize the
+ integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the same
+ schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting the
+ job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed. It
+ defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and
+ `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added to
+ the integration container. The syntax is KEY=VALUE, e.g.,
+ `MY_VAR="my value"`. These take precedence over the previously
+ defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either `disabled`,
+ `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has started
+ before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness probe
+ times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has started
+ before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness probe
+ times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever the
+ integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR subnets
+ that should not be intercepted by the Istio proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16`
+ by default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment and
+ not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path, used
+ to verify client certificates, applicable when `protocol`
+ is `https` and `use-ssl-client-authentication` is `true`
+ (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a client
+ certificate to allow access to the Jolokia endpoint, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a client
+ flag in the extended key usage section, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent should
+ bind to. If `"\*"` or `"0.0.0.0"` is given, the servers
+ binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used for
+ authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for the
+ newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before the
+ main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM in
+ the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to load
+ into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete configuration
+ in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of integration
+ routes. Can contain simple endpoint names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration will
+ produce. Can contain simple event types or full Camel URIs
+ (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration will
+ be subscribed to. Can contain simple event types or full
+ Camel URIs (to use a specific broker different from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the header
+ "ce-knativehistory". Since this header has been removed
+ in newer versions of Knative, filtering is disabled by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink via
+ a Knative SinkBinding resource. This can be used when the
+ integration targets a single sink. It's enabled by default
+ when the integration targets a single sink (except when
+ the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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`
+ is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric property
+ (e.g. to set `concurrency` based or `cpu` based autoscaling).
+ \n Refer to the Knative documentation for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU percentage
+ (depending on the autoscaling metric) for each Pod. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class property
+ (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev`
+ autoscaling). \n Refer to the Knative documentation for
+ more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that can
+ be running in parallel for the integration. Knative has
+ its own cap value that depends on the installation. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be running
+ at any time for the integration. It's **zero** by default,
+ meaning that the integration is scaled down to zero when
+ not used for a configured amount of time. \n Refer to the
+ Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the latest
+ Revision and sets the rollout duration. It's disabled by
+ default and must be expressed as a Golang `time.Duration`
+ string representation, rounded to a second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources as
+ they are processed by runtime Camel Context and tried to
+ be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly from
+ the Route. Syntax: [configmap|secret]:name[/key], where
+ name represents the resource name and key optionally represents
+ the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The destination
+ path can be either a default location or any path specified
+ by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path represents
+ the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be mounted.
+ Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that can
+ be unavailable after an eviction. It can be either an absolute
+ number or a percentage (default `1` if `min-available` is
+ also not set). Only one of `max-unavailable` and `min-available`
+ can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that must
+ still be available after an eviction. It can be either an
+ absolute number or a percentage. Only one of `min-available`
+ and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when the
+ platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created globally
+ in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created (default
+ `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared platform,
+ this enables delegation of the `system:image-puller` cluster
+ role on the operator namespace to the integration service
+ account.
+ type: boolean
+ secretName:
+ description: The pull secret name to set on the Pod. If left
+ empty this is automatically taken from the `IntegrationPlatform`
+ registry configuration.
+ type: string
+ type: object
+ quarkus:
+ description: The configuration of Quarkus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
+ registry:
+ description: The configuration of Registry trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ route:
+ description: The configuration of Route trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: To configure the host exposed by the route.
+ type: string
+ tlsCACertificate:
+ description: "The TLS CA certificate contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsCACertificateSecret:
+ description: "The secret name and key reference to the TLS
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsCertificate:
+ description: "The TLS certificate contents. \n Refer to the
+ OpenShift route documentation for additional information."
+ type: string
+ tlsCertificateSecret:
+ description: "The secret name and key reference to the TLS
+ certificate. The format is \"secret-name[/key-name]\", the
+ value represents the secret name, if there is only one key
+ in the secret it will be read, otherwise you can set a key
+ name separated with a \"/\". \n Refer to the OpenShift route
+ documentation for additional information."
+ type: string
+ tlsDestinationCACertificate:
+ description: "The destination CA certificate provides the
+ contents of the ca certificate of the final destination.
+ \ When using reencrypt termination this file should be provided
+ in order to have routers use it for health checks on the
+ secure connection. If this field is not specified, the router
+ may provide its own destination CA and perform hostname
+ validation using the short service name (service.namespace.svc),
+ which allows infrastructure generated certificates to automatically
+ verify. \n Refer to the OpenShift route documentation for
+ additional information."
+ type: string
+ tlsDestinationCACertificateSecret:
+ description: "The secret name and key reference to the destination
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsInsecureEdgeTerminationPolicy:
+ 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."
+ type: string
+ tlsKey:
+ description: "The TLS certificate key contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsKeySecret:
+ description: "The secret name and key reference to the TLS
+ certificate key. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsTermination:
+ description: "The TLS termination type, like `edge`, `passthrough`
+ or `reencrypt`. \n Refer to the OpenShift route documentation
+ for additional information."
+ type: string
+ type: object
+ service:
+ description: The configuration of Service trait
+ properties:
+ auto:
+ description: To automatically detect from the code if a Service
+ needs to be created.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodePort:
+ description: Enable Service to be exposed as NodePort (default
+ `false`).
+ type: boolean
+ type: object
+ service-binding:
+ description: The configuration of Service Binding trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ services:
+ description: List of Services in the form [[apigroup/]version:]kind:[namespace/]name
+ items:
+ type: string
+ type: array
+ type: object
+ strimzi:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ toleration:
+ description: The configuration of Toleration trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ taints:
+ description: The list of taints to tolerate, in the form `Key[=Value]:Effect[:Seconds]`
+ items:
+ type: string
+ type: array
+ type: object
+ tracing:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
type: object
type: object
status:
diff --git a/config/crd/bases/camel.apache.org_kameletbindings.yaml b/config/crd/bases/camel.apache.org_kameletbindings.yaml
index 549e42c83..c8e451d32 100644
--- a/config/crd/bases/camel.apache.org_kameletbindings.yaml
+++ b/config/crd/bases/camel.apache.org_kameletbindings.yaml
@@ -6125,17 +6125,1280 @@ spec:
type: object
type: object
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
+ description: the traits needed to run this Integration
+ properties:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of
+ an addon trait
type: object
x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: the traits needed to run this Integration
+ description: The extension point with addon traits
+ type: object
+ affinity:
+ description: The configuration of Affinity trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on
+ the node.
+ items:
+ type: string
+ type: array
+ podAffinity:
+ description: Always co-locates multiple replicas of the
+ integration in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace)
+ that the integration pod(s) should be co-located with.
+ items:
+ type: string
+ type: array
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the
+ integration in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace)
+ that the integration pod(s) should not be co-located
+ with.
+ items:
+ type: string
+ type: array
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the
+ build task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components
+ that support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the
+ Integration runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the
+ integration. It overrides the default version set in
+ the Integration Platform.
+ type: string
+ type: object
+ container:
+ description: The configuration of Container trait
+ properties:
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via
+ kubernetes Service.
+ type: boolean
+ image:
+ description: The main container image
+ type: string
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
+ type: string
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe
+ to be considered failed after having succeeded. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has
+ started before liveness probes are initiated. Deprecated:
+ replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults
+ to HTTP. Applies to the liveness probe. Deprecated:
+ replaced by the health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe
+ times out. Applies to the liveness probe. Deprecated:
+ replaced by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by
+ the container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the
+ port exposed by the container. It defaults to `http`
+ only when the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
+ type: boolean
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe
+ to be considered failed after having succeeded. Applies
+ to the readiness probe. Deprecated: replaced by the
+ health trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has
+ started before readiness probes are initiated. Deprecated:
+ replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies
+ to the readiness probe. Deprecated: replaced by the
+ health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults
+ to HTTP. Applies to the readiness probe. Deprecated:
+ replaced by the health trait.'
+ type: string
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the
+ health trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe
+ times out. Applies to the readiness probe. Deprecated:
+ replaced by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the
+ container port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name
+ the container port is to be exposed (default `http`).
+ type: string
+ type: object
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative
+ to the start time, that the job may be continuously
+ active before it is considered to be failed. It defaults
+ to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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).
+ \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work
+ when the schedule is triggered externally by Kubernetes.
+ A specific customizer is activated for each specified
+ component. E.g. for the `timer` component, the `cron-timer`
+ customizer is activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the
+ `cron` endpoint (`quartz`) instead of trying to materialize
+ the integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the
+ same schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting
+ the job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed.
+ It defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY`
+ and `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added
+ to the integration container. The syntax is KEY=VALUE,
+ e.g., `MY_VAR="my value"`. These take precedence over
+ the previously defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either
+ `disabled`, `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has
+ started before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness
+ probe times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has
+ started before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness
+ probe times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever
+ the integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR
+ subnets that should not be intercepted by the Istio
+ proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16` by
+ default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment
+ and not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path,
+ used to verify client certificates, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a
+ client certificate to allow access to the Jolokia endpoint,
+ applicable when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a
+ client flag in the extended key usage section, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent
+ should bind to. If `"\*"` or `"0.0.0.0"` is given, the
+ servers binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used
+ for authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for
+ the newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before
+ the main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM
+ in the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to
+ load into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete
+ configuration in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of
+ integration routes. Can contain simple endpoint names
+ or full Camel URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration
+ will produce. Can contain simple event types or full
+ Camel URIs (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration
+ will be subscribed to. Can contain simple event types
+ or full Camel URIs (to use a specific broker different
+ from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the
+ header "ce-knativehistory". Since this header has been
+ removed in newer versions of Knative, filtering is disabled
+ by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink
+ via a Knative SinkBinding resource. This can be used
+ when the integration targets a single sink. It's enabled
+ by default when the integration targets a single sink
+ (except when the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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` is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric
+ property (e.g. to set `concurrency` based or `cpu` based
+ autoscaling). \n Refer to the Knative documentation
+ for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU
+ percentage (depending on the autoscaling metric) for
+ each Pod. \n Refer to the Knative documentation for
+ more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class
+ property (e.g. to set `hpa.autoscaling.knative.dev`
+ or `kpa.autoscaling.knative.dev` autoscaling). \n Refer
+ to the Knative documentation for more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that
+ can be running in parallel for the integration. Knative
+ has its own cap value that depends on the installation.
+ \n Refer to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be
+ running at any time for the integration. It's **zero**
+ by default, meaning that the integration is scaled down
+ to zero when not used for a configured amount of time.
+ \n Refer to the Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the
+ latest Revision and sets the rollout duration. It's
+ disabled by default and must be expressed as a Golang
+ `time.Duration` string representation, rounded to a
+ second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources
+ as they are processed by runtime Camel Context and tried
+ to be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly
+ from the Route. Syntax: [configmap|secret]:name[/key],
+ where name represents the resource name and key optionally
+ represents the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The
+ destination path can be either a default location or
+ any path specified by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path
+ represents the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be
+ mounted. Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that
+ can be unavailable after an eviction. It can be either
+ an absolute number or a percentage (default `1` if `min-available`
+ is also not set). Only one of `max-unavailable` and
+ `min-available` can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that
+ must still be available after an eviction. It can be
+ either an absolute number or a percentage. Only one
+ of `min-available` and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when
+ the platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created
+ globally in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created
+ (default `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared
+ platform, this enables delegation of the `system:image-puller`
+ cluster role on the operator namespace to the integration
+ service account.
+ type: boolean
+ secretName:
+ description: The pull secret name to set on the Pod. If
+ left empty this is automatically taken from the `IntegrationPlatform`
+ registry configuration.
+ type: string
+ type: object
+ quarkus:
+ description: The configuration of Quarkus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence
+ over the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
+ registry:
+ description: The configuration of Registry trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ type: object
+ route:
+ description: The configuration of Route trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ host:
+ description: To configure the host exposed by the route.
+ type: string
+ tlsCACertificate:
+ description: "The TLS CA certificate contents. \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsCACertificateSecret:
+ description: "The secret name and key reference to the
+ TLS CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only
+ one key in the secret it will be read, otherwise you
+ can set a key name separated with a \"/\". \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsCertificate:
+ description: "The TLS certificate contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsCertificateSecret:
+ description: "The secret name and key reference to the
+ TLS certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only
+ one key in the secret it will be read, otherwise you
+ can set a key name separated with a \"/\". \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsDestinationCACertificate:
+ description: "The destination CA certificate provides
+ the contents of the ca certificate of the final destination.
+ \ When using reencrypt termination this file should
+ be provided in order to have routers use it for health
+ checks on the secure connection. If this field is not
+ specified, the router may provide its own destination
+ CA and perform hostname validation using the short service
+ name (service.namespace.svc), which allows infrastructure
+ generated certificates to automatically verify. \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsDestinationCACertificateSecret:
+ description: "The secret name and key reference to the
+ destination CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only
+ one key in the secret it will be read, otherwise you
+ can set a key name separated with a \"/\". \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsInsecureEdgeTerminationPolicy:
+ 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."
+ type: string
+ tlsKey:
+ description: "The TLS certificate key contents. \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsKeySecret:
+ description: "The secret name and key reference to the
+ TLS certificate key. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only
+ one key in the secret it will be read, otherwise you
+ can set a key name separated with a \"/\". \n Refer
+ to the OpenShift route documentation for additional
+ information."
+ type: string
+ tlsTermination:
+ description: "The TLS termination type, like `edge`, `passthrough`
+ or `reencrypt`. \n Refer to the OpenShift route documentation
+ for additional information."
+ type: string
+ type: object
+ service:
+ description: The configuration of Service trait
+ properties:
+ auto:
+ description: To automatically detect from the code if
+ a Service needs to be created.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ nodePort:
+ description: Enable Service to be exposed as NodePort
+ (default `false`).
+ type: boolean
+ type: object
+ service-binding:
+ description: The configuration of Service Binding trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ services:
+ description: List of Services in the form [[apigroup/]version:]kind:[namespace/]name
+ items:
+ type: string
+ type: array
+ type: object
+ strimzi:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ toleration:
+ description: The configuration of Toleration trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait.
+ All traits share this common property.
+ type: boolean
+ taints:
+ description: The list of taints to tolerate, in the form
+ `Key[=Value]:Effect[:Seconds]`
+ items:
+ type: string
+ type: array
+ type: object
+ tracing:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
type: object
type: object
replicas:
diff --git a/docs/modules/traits/pages/container.adoc b/docs/modules/traits/pages/container.adoc
index f5be96f2c..e2f6aa9bf 100755
--- a/docs/modules/traits/pages/container.adoc
+++ b/docs/modules/traits/pages/container.adoc
@@ -31,7 +31,7 @@ The following configuration options are available:
| container.auto
| bool
-|
+| To automatically enable the trait
| container.request-cpu
| string
diff --git a/docs/modules/traits/pages/gc.adoc b/docs/modules/traits/pages/gc.adoc
index c7a9ee825..88af7ba26 100755
--- a/docs/modules/traits/pages/gc.adoc
+++ b/docs/modules/traits/pages/gc.adoc
@@ -26,7 +26,7 @@ The following configuration options are available:
| Can be used to enable or disable a trait. All traits share this common property.
| gc.discovery-cache
-| github.com/apache/camel-k/pkg/trait.discoveryCacheType
+| github.com/apache/camel-k/pkg/apis/camel/v1/trait.DiscoveryCacheType
| Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`)
|===
diff --git a/docs/modules/traits/pages/quarkus.adoc b/docs/modules/traits/pages/quarkus.adoc
index e9d579e10..595572dd6 100755
--- a/docs/modules/traits/pages/quarkus.adoc
+++ b/docs/modules/traits/pages/quarkus.adoc
@@ -36,7 +36,7 @@ The following configuration options are available:
| Can be used to enable or disable a trait. All traits share this common property.
| quarkus.package-type
-| []github.com/apache/camel-k/pkg/trait.quarkusPackageType
+| []github.com/apache/camel-k/pkg/apis/camel/v1/trait.QuarkusPackageType
| The Quarkus package types, either `fast-jar` or `native` (default `fast-jar`).
In case both `fast-jar` and `native` are specified, two `IntegrationKit` resources are created,
with the `native` kit having precedence over the `fast-jar` one once ready.
diff --git a/docs/modules/traits/pages/service-binding.adoc b/docs/modules/traits/pages/service-binding.adoc
index 79a0b40fe..ac4e88cee 100755
--- a/docs/modules/traits/pages/service-binding.adoc
+++ b/docs/modules/traits/pages/service-binding.adoc
@@ -3,7 +3,8 @@
// Start of autogenerated code - DO NOT EDIT! (description)
The Service Binding trait allows users to connect to Services in Kubernetes:
https://github.com/k8s-service-bindings/spec#service-binding
-As the specification is still evolving this is subject to change
+As the specification is still evolving this is subject to change.
+
This trait is available in the following profiles: **Kubernetes, Knative, OpenShift**.
diff --git a/go.mod b/go.mod
index c28f89e8b..4ee008a89 100644
--- a/go.mod
+++ b/go.mod
@@ -57,7 +57,7 @@ require (
k8s.io/gengo v0.0.0-20211129171323-c02415ce4185
k8s.io/klog/v2 v2.40.1
k8s.io/kubectl v0.22.5
- k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9
+ k8s.io/utils v0.0.0-20211208161948-7d6a63dca704
knative.dev/eventing v0.29.0
knative.dev/pkg v0.0.0-20220118160532-77555ea48cd4
knative.dev/serving v0.29.0
diff --git a/go.sum b/go.sum
index 9783c2877..5bc79daf9 100644
--- a/go.sum
+++ b/go.sum
@@ -2134,9 +2134,8 @@ k8s.io/utils v0.0.0-20210707171843-4b05e18ac7d9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/
k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
+k8s.io/utils v0.0.0-20211208161948-7d6a63dca704 h1:ZKMMxTvduyf5WUtREOqg5LiXaN1KO/+0oOQPRFrClpo=
k8s.io/utils v0.0.0-20211208161948-7d6a63dca704/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
-k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9 h1:HNSDgDCrr/6Ly3WEGKZftiE7IY19Vz2GdbOCyI4qqhc=
-k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
knative.dev/caching v0.0.0-20220118175933-0c1cc094a7f4/go.mod h1:OHsK3XaWmdi2/mPaNBiX8LbefbtM6TptnT90eVbYGSA=
knative.dev/eventing v0.29.0 h1:+AhcYEuuz37x1op71bknZ/lFgsvuZJl0AKFOOFiH03s=
knative.dev/eventing v0.29.0/go.mod h1:u5T5NZTDUsLR7yJwp5MDnBnDX5MhywD3yK3Rq+7gTtI=
diff --git a/helm/camel-k/crds/crd-integration-kit.yaml b/helm/camel-k/crds/crd-integration-kit.yaml
index ca5c8f90f..06e61aaf3 100644
--- a/helm/camel-k/crds/crd-integration-kit.yaml
+++ b/helm/camel-k/crds/crd-integration-kit.yaml
@@ -111,7 +111,7 @@ spec:
type: string
type: array
image:
- description: the container image as identify in the container registry
+ description: the container image as identified in the container registry
type: string
profile:
description: the profile which is expected by this kit
@@ -122,17 +122,73 @@ spec:
type: string
type: array
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
+ description: traits that the kit will execute
+ properties:
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of an addon
+ trait
type: object
x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: traits that the kit will execute
+ description: The collection of addon trait configurations
+ type: object
+ builder:
+ description: The builder trait is internally used to determine
+ the best strategy to build and configure IntegrationKits.
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the build
+ task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ quarkus:
+ description: 'The Quarkus trait configures the Quarkus runtime.
+ It''s enabled by default. NOTE: Compiling to a native executable,
+ i.e. when using `package-type=native`, is only supported for
+ kamelets, as well as YAML and XML integrations. It also requires
+ at least 4GiB of memory, so the Pod running the native build,
+ that is either the operator Pod, or the build Pod (depending
+ on the build strategy configured for the platform), must have
+ enough memory available.'
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
type: object
type: object
status:
diff --git a/helm/camel-k/crds/crd-integration-platform.yaml b/helm/camel-k/crds/crd-integration-platform.yaml
index d83005fbe..716a18b7e 100644
--- a/helm/camel-k/crds/crd-integration-platform.yaml
+++ b/helm/camel-k/crds/crd-integration-platform.yaml
@@ -367,255 +367,1495 @@ spec:
description: 'Deprecated: not used'
type: object
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
- type: object
- x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
description: list of traits to be executed for all the Integration/IntegrationKits
built from this IntegrationPlatform
- type: object
- type: object
- status:
- description: IntegrationPlatformStatus defines the observed state of IntegrationPlatform
- properties:
- build:
- description: specify how to build the Integration/IntegrationKits
properties:
- PublishStrategyOptions:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
additionalProperties:
- type: string
+ description: AddonTrait represents the configuration of an addon
+ trait
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ description: The extension point with addon traits
type: object
- baseImage:
- description: a base image that can be used as base layer for all
- images. It can be useful if you want to provide some custom
- base image with further utility softwares
- type: string
- buildStrategy:
- description: the strategy to adopt for building an Integration
- base image
- enum:
- - routine
- - pod
- type: string
- kanikoBuildCache:
- description: 'Deprecated: Use PublishStrategyOptions instead enables
- Kaniko publish strategy cache'
- type: boolean
- maven:
- description: Maven configuration used to build the Camel/Camel-Quarkus
- applications
+ affinity:
+ description: The configuration of Affinity trait
properties:
- caSecret:
- description: 'Deprecated: use CASecrets The Secret name and
- key, containing the CA certificate(s) used to connect to
- remote Maven repositories. It can contain X.509 certificates,
- and PKCS#7 formatted certificate chains. A JKS formatted
- keystore is automatically created to store the CA certificate(s),
- and configured to be used as a trusted certificate(s) by
- the Maven commands. Note that the root CA certificates are
- also imported into the created keystore.'
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
type: object
- caSecrets:
- description: The Secrets name and key, containing the CA certificate(s)
- used to connect to remote Maven repositories. It can contain
- X.509 certificates, and PKCS#7 formatted certificate chains.
- A JKS formatted keystore is automatically created to store
- the CA certificate(s), and configured to be used as a trusted
- certificate(s) by the Maven commands. Note that the root
- CA certificates are also imported into the created keystore.
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on the
+ node.
items:
- description: SecretKeySelector selects a key of a Secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind, uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
+ type: string
type: array
- cliOptions:
- description: The CLI options that are appended to the list
- of arguments for Maven commands, e.g., `-V,--no-transfer-progress,-Dstyle.color=never`.
- See https://maven.apache.org/ref/3.8.4/maven-embedder/cli.html.
+ podAffinity:
+ description: Always co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should be co-located with.
items:
type: string
type: array
- extension:
- description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should not be co-located with.
items:
- description: MavenArtifact defines a GAV (Group:Artifact:Version)
- Maven artifact
- properties:
- artifactId:
- description: Maven Artifact
- type: string
- groupId:
- description: Maven Group
- type: string
- version:
- description: Maven Version
- type: string
- required:
- - artifactId
- - groupId
- type: object
+ type: string
type: array
- localRepository:
- description: The path of the local Maven repository.
- type: string
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
properties:
- additionalProperties:
+ description: A list of properties to be provided to the build
+ task
+ items:
type: string
- description: The Maven properties.
- type: object
- settings:
- description: A reference to the ConfigMap or Secret key that
- contains the Maven settings.
- properties:
- configMapKeyRef:
- description: Selects a key of a ConfigMap.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- secretKeyRef:
- description: Selects a key of a secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- type: object
- settingsSecurity:
- description: A reference to the ConfigMap or Secret key that
- contains the security of the Maven settings.
- properties:
- configMapKeyRef:
- description: Selects a key of a ConfigMap.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- secretKeyRef:
- description: Selects a key of a secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- TODO: Add other useful fields. apiVersion, kind,
- uid?'
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the Integration
+ runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the integration.
+ It overrides the default version set in the Integration
+ Platform.
+ type: string
type: object
- persistentVolumeClaim:
- description: 'Deprecated: Use PublishStrategyOptions instead the
- Persistent Volume Claim used by Kaniko publish strategy, if
- cache is enabled'
- type: string
- publishStrategy:
- description: the strategy to adopt for publishing an Integration
- base image
- type: string
- registry:
- description: the image registry used to push/pull Integration
- images
+ container:
+ description: The configuration of Container trait
properties:
- address:
- description: the URI to access
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via kubernetes
+ Service.
+ type: boolean
+ image:
+ description: The main container image
type: string
- ca:
- description: the configmap which stores the Certificate Authority
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
type: string
- insecure:
- description: if the container registry is insecure (ie, http
- only)
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before liveness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the liveness probe. Deprecated: replaced by the
+ health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the liveness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by the
+ container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the port
+ exposed by the container. It defaults to `http` only when
+ the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
type: boolean
- organization:
- description: the registry organization
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before readiness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ readiness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the readiness probe. Deprecated: replaced by
+ the health trait.'
type: string
- secret:
- description: the secret where credentials are stored
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the readiness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the container
+ port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name the
+ container port is to be exposed (default `http`).
type: string
type: object
- runtimeProvider:
- description: the runtime used. Likely Camel Quarkus (we used to
- have main runtime which has been discontinued since version
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative to
+ the start time, that the job may be continuously active
+ before it is considered to be failed. It defaults to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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). \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work when
+ the schedule is triggered externally by Kubernetes. A specific
+ customizer is activated for each specified component. E.g.
+ for the `timer` component, the `cron-timer` customizer is
+ activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the `cron`
+ endpoint (`quartz`) instead of trying to materialize the
+ integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the same
+ schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting the
+ job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed. It
+ defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and
+ `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added to
+ the integration container. The syntax is KEY=VALUE, e.g.,
+ `MY_VAR="my value"`. These take precedence over the previously
+ defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either `disabled`,
+ `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has started
+ before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness probe
+ times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has started
+ before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness probe
+ times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever the
+ integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR subnets
+ that should not be intercepted by the Istio proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16`
+ by default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment and
+ not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path, used
+ to verify client certificates, applicable when `protocol`
+ is `https` and `use-ssl-client-authentication` is `true`
+ (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a client
+ certificate to allow access to the Jolokia endpoint, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a client
+ flag in the extended key usage section, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent should
+ bind to. If `"\*"` or `"0.0.0.0"` is given, the servers
+ binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used for
+ authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for the
+ newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before the
+ main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM in
+ the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to load
+ into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete configuration
+ in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of integration
+ routes. Can contain simple endpoint names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration will
+ produce. Can contain simple event types or full Camel URIs
+ (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration will
+ be subscribed to. Can contain simple event types or full
+ Camel URIs (to use a specific broker different from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the header
+ "ce-knativehistory". Since this header has been removed
+ in newer versions of Knative, filtering is disabled by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink via
+ a Knative SinkBinding resource. This can be used when the
+ integration targets a single sink. It's enabled by default
+ when the integration targets a single sink (except when
+ the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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`
+ is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric property
+ (e.g. to set `concurrency` based or `cpu` based autoscaling).
+ \n Refer to the Knative documentation for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU percentage
+ (depending on the autoscaling metric) for each Pod. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class property
+ (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev`
+ autoscaling). \n Refer to the Knative documentation for
+ more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that can
+ be running in parallel for the integration. Knative has
+ its own cap value that depends on the installation. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be running
+ at any time for the integration. It's **zero** by default,
+ meaning that the integration is scaled down to zero when
+ not used for a configured amount of time. \n Refer to the
+ Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the latest
+ Revision and sets the rollout duration. It's disabled by
+ default and must be expressed as a Golang `time.Duration`
+ string representation, rounded to a second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources as
+ they are processed by runtime Camel Context and tried to
+ be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly from
+ the Route. Syntax: [configmap|secret]:name[/key], where
+ name represents the resource name and key optionally represents
+ the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The destination
+ path can be either a default location or any path specified
+ by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path represents
+ the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be mounted.
+ Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that can
+ be unavailable after an eviction. It can be either an absolute
+ number or a percentage (default `1` if `min-available` is
+ also not set). Only one of `max-unavailable` and `min-available`
+ can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that must
+ still be available after an eviction. It can be either an
+ absolute number or a percentage. Only one of `min-available`
+ and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when the
+ platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created globally
+ in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created (default
+ `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared platform,
+ this enables delegation of the `system:image-puller` cluster
+ role on the operator namespace to the integration service
+ account.
+ type: boolean
+ secretName:
+ description: The pull secret name to set on the Pod. If left
+ empty this is automatically taken from the `IntegrationPlatform`
+ registry configuration.
+ type: string
+ type: object
+ quarkus:
+ description: The configuration of Quarkus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
+ registry:
+ description: The configuration of Registry trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ route:
+ description: The configuration of Route trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: To configure the host exposed by the route.
+ type: string
+ tlsCACertificate:
+ description: "The TLS CA certificate contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsCACertificateSecret:
+ description: "The secret name and key reference to the TLS
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsCertificate:
+ description: "The TLS certificate contents. \n Refer to the
+ OpenShift route documentation for additional information."
+ type: string
+ tlsCertificateSecret:
+ description: "The secret name and key reference to the TLS
+ certificate. The format is \"secret-name[/key-name]\", the
+ value represents the secret name, if there is only one key
+ in the secret it will be read, otherwise you can set a key
+ name separated with a \"/\". \n Refer to the OpenShift route
+ documentation for additional information."
+ type: string
+ tlsDestinationCACertificate:
+ description: "The destination CA certificate provides the
+ contents of the ca certificate of the final destination.
+ \ When using reencrypt termination this file should be provided
+ in order to have routers use it for health checks on the
+ secure connection. If this field is not specified, the router
+ may provide its own destination CA and perform hostname
+ validation using the short service name (service.namespace.svc),
+ which allows infrastructure generated certificates to automatically
+ verify. \n Refer to the OpenShift route documentation for
+ additional information."
+ type: string
+ tlsDestinationCACertificateSecret:
+ description: "The secret name and key reference to the destination
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsInsecureEdgeTerminationPolicy:
+ 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."
+ type: string
+ tlsKey:
+ description: "The TLS certificate key contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsKeySecret:
+ description: "The secret name and key reference to the TLS
+ certificate key. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsTermination:
+ description: "The TLS termination type, like `edge`, `passthrough`
+ or `reencrypt`. \n Refer to the OpenShift route documentation
+ for additional information."
+ type: string
+ type: object
+ service:
+ description: The configuration of Service trait
+ properties:
+ auto:
+ description: To automatically detect from the code if a Service
+ needs to be created.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodePort:
+ description: Enable Service to be exposed as NodePort (default
+ `false`).
+ type: boolean
+ type: object
+ service-binding:
+ description: The configuration of Service Binding trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ services:
+ description: List of Services in the form [[apigroup/]version:]kind:[namespace/]name
+ items:
+ type: string
+ type: array
+ type: object
+ strimzi:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ toleration:
+ description: The configuration of Toleration trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ taints:
+ description: The list of taints to tolerate, in the form `Key[=Value]:Effect[:Seconds]`
+ items:
+ type: string
+ type: array
+ type: object
+ tracing:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ type: object
+ type: object
+ status:
+ description: IntegrationPlatformStatus defines the observed state of IntegrationPlatform
+ properties:
+ build:
+ description: specify how to build the Integration/IntegrationKits
+ properties:
+ PublishStrategyOptions:
+ additionalProperties:
+ type: string
+ type: object
+ baseImage:
+ description: a base image that can be used as base layer for all
+ images. It can be useful if you want to provide some custom
+ base image with further utility softwares
+ type: string
+ buildStrategy:
+ description: the strategy to adopt for building an Integration
+ base image
+ enum:
+ - routine
+ - pod
+ type: string
+ kanikoBuildCache:
+ description: 'Deprecated: Use PublishStrategyOptions instead enables
+ Kaniko publish strategy cache'
+ type: boolean
+ maven:
+ description: Maven configuration used to build the Camel/Camel-Quarkus
+ applications
+ properties:
+ caSecret:
+ description: 'Deprecated: use CASecrets The Secret name and
+ key, containing the CA certificate(s) used to connect to
+ remote Maven repositories. It can contain X.509 certificates,
+ and PKCS#7 formatted certificate chains. A JKS formatted
+ keystore is automatically created to store the CA certificate(s),
+ and configured to be used as a trusted certificate(s) by
+ the Maven commands. Note that the root CA certificates are
+ also imported into the created keystore.'
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ caSecrets:
+ description: The Secrets name and key, containing the CA certificate(s)
+ used to connect to remote Maven repositories. It can contain
+ X.509 certificates, and PKCS#7 formatted certificate chains.
+ A JKS formatted keystore is automatically created to store
+ the CA certificate(s), and configured to be used as a trusted
+ certificate(s) by the Maven commands. Note that the root
+ CA certificates are also imported into the created keystore.
+ items:
+ description: SecretKeySelector selects a key of a Secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind, uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ type: array
+ cliOptions:
+ description: The CLI options that are appended to the list
+ of arguments for Maven commands, e.g., `-V,--no-transfer-progress,-Dstyle.color=never`.
+ See https://maven.apache.org/ref/3.8.4/maven-embedder/cli.html.
+ items:
+ type: string
+ type: array
+ extension:
+ description: The Maven build extensions. See https://maven.apache.org/guides/mini/guide-using-extensions.html.
+ items:
+ description: MavenArtifact defines a GAV (Group:Artifact:Version)
+ Maven artifact
+ properties:
+ artifactId:
+ description: Maven Artifact
+ type: string
+ groupId:
+ description: Maven Group
+ type: string
+ version:
+ description: Maven Version
+ type: string
+ required:
+ - artifactId
+ - groupId
+ type: object
+ type: array
+ localRepository:
+ description: The path of the local Maven repository.
+ type: string
+ properties:
+ additionalProperties:
+ type: string
+ description: The Maven properties.
+ type: object
+ settings:
+ description: A reference to the ConfigMap or Secret key that
+ contains the Maven settings.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ secretKeyRef:
+ description: Selects a key of a secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ type: object
+ settingsSecurity:
+ description: A reference to the ConfigMap or Secret key that
+ contains the security of the Maven settings.
+ properties:
+ configMapKeyRef:
+ description: Selects a key of a ConfigMap.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ secretKeyRef:
+ description: Selects a key of a secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ TODO: Add other useful fields. apiVersion, kind,
+ uid?'
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ type: object
+ type: object
+ persistentVolumeClaim:
+ description: 'Deprecated: Use PublishStrategyOptions instead the
+ Persistent Volume Claim used by Kaniko publish strategy, if
+ cache is enabled'
+ type: string
+ publishStrategy:
+ description: the strategy to adopt for publishing an Integration
+ base image
+ type: string
+ registry:
+ description: the image registry used to push/pull Integration
+ images
+ properties:
+ address:
+ description: the URI to access
+ type: string
+ ca:
+ description: the configmap which stores the Certificate Authority
+ type: string
+ insecure:
+ description: if the container registry is insecure (ie, http
+ only)
+ type: boolean
+ organization:
+ description: the registry organization
+ type: string
+ secret:
+ description: the secret where credentials are stored
+ type: string
+ type: object
+ runtimeProvider:
+ description: the runtime used. Likely Camel Quarkus (we used to
+ have main runtime which has been discontinued since version
1.5)
type: string
runtimeVersion:
@@ -711,39 +1951,1279 @@ spec:
uri:
description: the remote repository in the format github:ORG/REPO/PATH_TO_KAMELETS_FOLDER
type: string
- type: object
- type: array
- type: object
- observedGeneration:
- description: ObservedGeneration is the most recent generation observed
- for this IntegrationPlatform.
- format: int64
- type: integer
- phase:
- description: defines in what phase the IntegrationPlatform is found
- type: string
- profile:
- description: the profile you wish to use. It will apply certain traits
- which are required by the specific profile chosen. It usually relates
- the Cluster with the optional definition of special profiles (ie,
- Knative)
- type: string
- resources:
- description: 'Deprecated: not used'
- type: object
- traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
- type: object
- x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: list of traits to be executed for all the Integration/IntegrationKits
- built from this IntegrationPlatform
+ type: object
+ type: array
+ type: object
+ observedGeneration:
+ description: ObservedGeneration is the most recent generation observed
+ for this IntegrationPlatform.
+ format: int64
+ type: integer
+ phase:
+ description: defines in what phase the IntegrationPlatform is found
+ type: string
+ profile:
+ description: the profile you wish to use. It will apply certain traits
+ which are required by the specific profile chosen. It usually relates
+ the Cluster with the optional definition of special profiles (ie,
+ Knative)
+ type: string
+ resources:
+ description: 'Deprecated: not used'
+ type: object
+ traits:
+ description: list of traits to be executed for all the Integration/IntegrationKits
+ built from this IntegrationPlatform
+ properties:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of an addon
+ trait
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ description: The extension point with addon traits
+ type: object
+ affinity:
+ description: The configuration of Affinity trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on the
+ node.
+ items:
+ type: string
+ type: array
+ podAffinity:
+ description: Always co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should be co-located with.
+ items:
+ type: string
+ type: array
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should not be co-located with.
+ items:
+ type: string
+ type: array
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the build
+ task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the Integration
+ runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the integration.
+ It overrides the default version set in the Integration
+ Platform.
+ type: string
+ type: object
+ container:
+ description: The configuration of Container trait
+ properties:
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via kubernetes
+ Service.
+ type: boolean
+ image:
+ description: The main container image
+ type: string
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
+ type: string
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before liveness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the liveness probe. Deprecated: replaced by the
+ health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the liveness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by the
+ container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the port
+ exposed by the container. It defaults to `http` only when
+ the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
+ type: boolean
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before readiness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ readiness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the readiness probe. Deprecated: replaced by
+ the health trait.'
+ type: string
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the readiness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the container
+ port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name the
+ container port is to be exposed (default `http`).
+ type: string
+ type: object
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative to
+ the start time, that the job may be continuously active
+ before it is considered to be failed. It defaults to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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). \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work when
+ the schedule is triggered externally by Kubernetes. A specific
+ customizer is activated for each specified component. E.g.
+ for the `timer` component, the `cron-timer` customizer is
+ activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the `cron`
+ endpoint (`quartz`) instead of trying to materialize the
+ integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the same
+ schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting the
+ job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed. It
+ defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and
+ `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added to
+ the integration container. The syntax is KEY=VALUE, e.g.,
+ `MY_VAR="my value"`. These take precedence over the previously
+ defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either `disabled`,
+ `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has started
+ before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness probe
+ times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has started
+ before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness probe
+ times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever the
+ integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR subnets
+ that should not be intercepted by the Istio proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16`
+ by default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment and
+ not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path, used
+ to verify client certificates, applicable when `protocol`
+ is `https` and `use-ssl-client-authentication` is `true`
+ (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a client
+ certificate to allow access to the Jolokia endpoint, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a client
+ flag in the extended key usage section, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent should
+ bind to. If `"\*"` or `"0.0.0.0"` is given, the servers
+ binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used for
+ authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for the
+ newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before the
+ main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM in
+ the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to load
+ into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete configuration
+ in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of integration
+ routes. Can contain simple endpoint names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration will
+ produce. Can contain simple event types or full Camel URIs
+ (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration will
+ be subscribed to. Can contain simple event types or full
+ Camel URIs (to use a specific broker different from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the header
+ "ce-knativehistory". Since this header has been removed
+ in newer versions of Knative, filtering is disabled by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink via
+ a Knative SinkBinding resource. This can be used when the
+ integration targets a single sink. It's enabled by default
+ when the integration targets a single sink (except when
+ the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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`
+ is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric property
+ (e.g. to set `concurrency` based or `cpu` based autoscaling).
+ \n Refer to the Knative documentation for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU percentage
+ (depending on the autoscaling metric) for each Pod. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class property
+ (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev`
+ autoscaling). \n Refer to the Knative documentation for
+ more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that can
+ be running in parallel for the integration. Knative has
+ its own cap value that depends on the installation. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be running
+ at any time for the integration. It's **zero** by default,
+ meaning that the integration is scaled down to zero when
+ not used for a configured amount of time. \n Refer to the
+ Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the latest
+ Revision and sets the rollout duration. It's disabled by
+ default and must be expressed as a Golang `time.Duration`
+ string representation, rounded to a second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources as
+ they are processed by runtime Camel Context and tried to
+ be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly from
+ the Route. Syntax: [configmap|secret]:name[/key], where
+ name represents the resource name and key optionally represents
+ the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The destination
+ path can be either a default location or any path specified
+ by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path represents
+ the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be mounted.
+ Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that can
+ be unavailable after an eviction. It can be either an absolute
+ number or a percentage (default `1` if `min-available` is
+ also not set). Only one of `max-unavailable` and `min-available`
+ can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that must
+ still be available after an eviction. It can be either an
+ absolute number or a percentage. Only one of `min-available`
+ and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when the
+ platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created globally
+ in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created (default
+ `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared platform,
+ this enables delegation of the `system:image-puller` cluster
+ role on the operator namespace to the integration service
+ account.
+ type: boolean
+ secretName:
+ description: The pull secret name to set on the Pod. If left
+ empty this is automatically taken from the `IntegrationPlatform`
+ registry configuration.
+ type: string
+ type: object
+ quarkus:
+ description: The configuration of Quarkus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ packageTypes:
+ description: The Quarkus package types, either `fast-jar`
+ or `native` (default `fast-jar`). In case both `fast-jar`
+ and `native` are specified, two `IntegrationKit` resources
+ are created, with the `native` kit having precedence over
+ the `fast-jar` one once ready. 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.
+ items:
+ type: string
+ type: array
+ type: object
+ registry:
+ description: The configuration of Registry trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ route:
+ description: The configuration of Route trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: To configure the host exposed by the route.
+ type: string
+ tlsCACertificate:
+ description: "The TLS CA certificate contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsCACertificateSecret:
+ description: "The secret name and key reference to the TLS
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsCertificate:
+ description: "The TLS certificate contents. \n Refer to the
+ OpenShift route documentation for additional information."
+ type: string
+ tlsCertificateSecret:
+ description: "The secret name and key reference to the TLS
+ certificate. The format is \"secret-name[/key-name]\", the
+ value represents the secret name, if there is only one key
+ in the secret it will be read, otherwise you can set a key
+ name separated with a \"/\". \n Refer to the OpenShift route
+ documentation for additional information."
+ type: string
+ tlsDestinationCACertificate:
+ description: "The destination CA certificate provides the
+ contents of the ca certificate of the final destination.
+ \ When using reencrypt termination this file should be provided
+ in order to have routers use it for health checks on the
+ secure connection. If this field is not specified, the router
+ may provide its own destination CA and perform hostname
+ validation using the short service name (service.namespace.svc),
+ which allows infrastructure generated certificates to automatically
+ verify. \n Refer to the OpenShift route documentation for
+ additional information."
+ type: string
+ tlsDestinationCACertificateSecret:
+ description: "The secret name and key reference to the destination
+ CA certificate. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsInsecureEdgeTerminationPolicy:
+ 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."
+ type: string
+ tlsKey:
+ description: "The TLS certificate key contents. \n Refer to
+ the OpenShift route documentation for additional information."
+ type: string
+ tlsKeySecret:
+ description: "The secret name and key reference to the TLS
+ certificate key. The format is \"secret-name[/key-name]\",
+ the value represents the secret name, if there is only one
+ key in the secret it will be read, otherwise you can set
+ a key name separated with a \"/\". \n Refer to the OpenShift
+ route documentation for additional information."
+ type: string
+ tlsTermination:
+ description: "The TLS termination type, like `edge`, `passthrough`
+ or `reencrypt`. \n Refer to the OpenShift route documentation
+ for additional information."
+ type: string
+ type: object
+ service:
+ description: The configuration of Service trait
+ properties:
+ auto:
+ description: To automatically detect from the code if a Service
+ needs to be created.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodePort:
+ description: Enable Service to be exposed as NodePort (default
+ `false`).
+ type: boolean
+ type: object
+ service-binding:
+ description: The configuration of Service Binding trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ services:
+ description: List of Services in the form [[apigroup/]version:]kind:[namespace/]name
+ items:
+ type: string
+ type: array
+ type: object
+ strimzi:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ toleration:
+ description: The configuration of Toleration trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ taints:
+ description: The list of taints to tolerate, in the form `Key[=Value]:Effect[:Seconds]`
+ items:
+ type: string
+ type: array
+ type: object
+ tracing:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
type: object
version:
description: the Camel K operator version controlling this IntegrationPlatform
diff --git a/helm/camel-k/crds/crd-integration.yaml b/helm/camel-k/crds/crd-integration.yaml
index 764a2e332..e0cc1dbae 100644
--- a/helm/camel-k/crds/crd-integration.yaml
+++ b/helm/camel-k/crds/crd-integration.yaml
@@ -5845,17 +5845,1257 @@ spec:
type: object
type: object
traits:
- additionalProperties:
- description: A TraitSpec contains the configuration of a trait
- properties:
- configuration:
- description: TraitConfiguration parameters configuration
+ description: the traits needed to run this Integration
+ properties:
+ 3scale:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ addons:
+ additionalProperties:
+ description: AddonTrait represents the configuration of an addon
+ trait
type: object
x-kubernetes-preserve-unknown-fields: true
- required:
- - configuration
- type: object
- description: the traits needed to run this Integration
+ description: The extension point with addon traits
+ type: object
+ affinity:
+ description: The configuration of Affinity trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ nodeAffinityLabels:
+ description: Defines a set of nodes the integration pod(s)
+ are eligible to be scheduled on, based on labels on the
+ node.
+ items:
+ type: string
+ type: array
+ podAffinity:
+ description: Always co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should be co-located with.
+ items:
+ type: string
+ type: array
+ podAntiAffinity:
+ description: Never co-locates multiple replicas of the integration
+ in the same node (default *false*).
+ type: boolean
+ podAntiAffinityLabels:
+ description: Defines a set of pods (namely those matching
+ the label selector, relative to the given namespace) that
+ the integration pod(s) should not be co-located with.
+ items:
+ type: string
+ type: array
+ type: object
+ builder:
+ description: The configuration of Builder trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the build
+ task
+ items:
+ type: string
+ type: array
+ verbose:
+ description: Enable verbose logging on build components that
+ support it (e.g. Kaniko build pod).
+ type: boolean
+ type: object
+ camel:
+ description: The configuration of Camel trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ properties:
+ description: A list of properties to be provided to the Integration
+ runtime
+ items:
+ type: string
+ type: array
+ runtimeVersion:
+ description: The camel-k-runtime version to use for the integration.
+ It overrides the default version set in the Integration
+ Platform.
+ type: string
+ type: object
+ container:
+ description: The configuration of Container trait
+ properties:
+ auto:
+ description: To automatically enable the trait
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ expose:
+ description: Can be used to enable/disable exposure via kubernetes
+ Service.
+ type: boolean
+ image:
+ description: The main container image
+ type: string
+ imagePullPolicy:
+ description: 'The pull policy: Always|Never|IfNotPresent'
+ type: string
+ limitCPU:
+ description: The maximum amount of CPU required.
+ type: string
+ limitMemory:
+ description: The maximum amount of memory required.
+ type: string
+ livenessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before liveness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ liveness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ livenessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the liveness probe. Deprecated: replaced by the
+ health trait.'
+ type: string
+ livenessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the liveness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the liveness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ name:
+ description: The main container name. It's named `integration`
+ by default.
+ type: string
+ port:
+ description: To configure a different port exposed by the
+ container (default `8080`).
+ type: integer
+ portName:
+ description: To configure a different port name for the port
+ exposed by the container. It defaults to `http` only when
+ the `expose` parameter is true.
+ type: string
+ probesEnabled:
+ description: 'DeprecatedProbesEnabled enable/disable probes
+ on the container (default `false`) Deprecated: replaced
+ by the health trait.'
+ type: boolean
+ readinessFailureThreshold:
+ description: 'Minimum consecutive failures for the probe to
+ be considered failed after having succeeded. Applies to
+ the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: 'Number of seconds after the container has started
+ before readiness probes are initiated. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: 'How often to perform the probe. Applies to the
+ readiness probe. Deprecated: replaced by the health trait.'
+ format: int32
+ type: integer
+ readinessScheme:
+ description: 'Scheme to use when connecting. Defaults to HTTP.
+ Applies to the readiness probe. Deprecated: replaced by
+ the health trait.'
+ type: string
+ readinessSuccessThreshold:
+ description: 'Minimum consecutive successes for the probe
+ to be considered successful after having failed. Applies
+ to the readiness probe. Deprecated: replaced by the health
+ trait.'
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: 'Number of seconds after which the probe times
+ out. Applies to the readiness probe. Deprecated: replaced
+ by the health trait.'
+ format: int32
+ type: integer
+ requestCPU:
+ description: The minimum amount of CPU required.
+ type: string
+ requestMemory:
+ description: The minimum amount of memory required.
+ type: string
+ servicePort:
+ description: To configure under which service port the container
+ port is to be exposed (default `80`).
+ type: integer
+ servicePortName:
+ description: To configure under which service port name the
+ container port is to be exposed (default `http`).
+ type: string
+ type: object
+ cron:
+ description: The configuration of Cron trait
+ properties:
+ activeDeadlineSeconds:
+ description: Specifies the duration in seconds, relative to
+ the start time, that the job may be continuously active
+ before it is considered to be failed. It defaults to 60s.
+ format: int64
+ type: integer
+ auto:
+ 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). \n 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)."
+ type: boolean
+ backoffLimit:
+ description: Specifies the number of retries before marking
+ the job failed. It defaults to 2.
+ format: int32
+ type: integer
+ components:
+ description: "A comma separated list of the Camel components
+ that need to be customized in order for them to work when
+ the schedule is triggered externally by Kubernetes. A specific
+ customizer is activated for each specified component. E.g.
+ for the `timer` component, the `cron-timer` customizer is
+ activated (it's present in the `org.apache.camel.k:camel-k-cron`
+ library). \n Supported components are currently: `cron`,
+ `timer` and `quartz`."
+ type: string
+ concurrencyPolicy:
+ description: 'Specifies how to treat concurrent executions
+ of a Job. Valid values are: - "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'
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ fallback:
+ description: Use the default Camel implementation of the `cron`
+ endpoint (`quartz`) instead of trying to materialize the
+ integration as Kubernetes CronJob.
+ type: boolean
+ schedule:
+ description: The CronJob schedule for the whole integration.
+ If multiple routes are declared, they must have the same
+ schedule for this mechanism to work correctly.
+ type: string
+ startingDeadlineSeconds:
+ description: Optional deadline in seconds for starting the
+ job if it misses scheduled time for any reason. Missed
+ jobs executions will be counted as failed ones.
+ format: int64
+ type: integer
+ type: object
+ dependencies:
+ description: The configuration of Dependencies trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ deployer:
+ description: The configuration of Deployer trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ kind:
+ description: Allows to explicitly select the desired deployment
+ kind between `deployment`, `cron-job` or `knative-service`
+ when creating the resources for running the integration.
+ type: string
+ useSSA:
+ description: 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.
+ type: boolean
+ type: object
+ deployment:
+ description: The configuration of Deployment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ progressDeadlineSeconds:
+ description: The maximum time in seconds for the deployment
+ to make progress before it is considered to be failed. It
+ defaults to 60s.
+ format: int32
+ type: integer
+ type: object
+ environment:
+ description: The configuration of Environment trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ containerMeta:
+ description: Enables injection of `NAMESPACE` and `POD_NAME`
+ environment variables (default `true`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ httpProxy:
+ description: Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and
+ `NO_PROXY` environment variables (default `true`)
+ type: boolean
+ vars:
+ description: A list of environment variables to be added to
+ the integration container. The syntax is KEY=VALUE, e.g.,
+ `MY_VAR="my value"`. These take precedence over the previously
+ defined environment variables.
+ items:
+ type: string
+ type: array
+ type: object
+ error-handler:
+ description: The configuration of Error Handler trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ ref:
+ description: The error handler ref name provided or found
+ in application properties
+ type: string
+ type: object
+ gc:
+ description: The configuration of GC trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryCache:
+ description: Discovery client cache to be used, either `disabled`,
+ `disk` or `memory` (default `memory`)
+ type: string
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ health:
+ description: The configuration of Health trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ livenessFailureThreshold:
+ description: Minimum consecutive failures for the liveness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ livenessInitialDelay:
+ description: Number of seconds after the container has started
+ before the liveness probe is initiated.
+ format: int32
+ type: integer
+ livenessPeriod:
+ description: How often to perform the liveness probe.
+ format: int32
+ type: integer
+ livenessProbeEnabled:
+ description: Configures the liveness probe for the integration
+ container (default `false`).
+ type: boolean
+ livenessScheme:
+ description: Scheme to use when connecting to the liveness
+ probe (default `HTTP`).
+ type: string
+ livenessSuccessThreshold:
+ description: Minimum consecutive successes for the liveness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ livenessTimeout:
+ description: Number of seconds after which the liveness probe
+ times out.
+ format: int32
+ type: integer
+ readinessFailureThreshold:
+ description: Minimum consecutive failures for the readiness
+ probe to be considered failed after having succeeded.
+ format: int32
+ type: integer
+ readinessInitialDelay:
+ description: Number of seconds after the container has started
+ before the readiness probe is initiated.
+ format: int32
+ type: integer
+ readinessPeriod:
+ description: How often to perform the readiness probe.
+ format: int32
+ type: integer
+ readinessProbeEnabled:
+ description: Configures the readiness probe for the integration
+ container (default `true`).
+ type: boolean
+ readinessScheme:
+ description: Scheme to use when connecting to the readiness
+ probe (default `HTTP`).
+ type: string
+ readinessSuccessThreshold:
+ description: Minimum consecutive successes for the readiness
+ probe to be considered successful after having failed.
+ format: int32
+ type: integer
+ readinessTimeout:
+ description: Number of seconds after which the readiness probe
+ times out.
+ format: int32
+ type: integer
+ type: object
+ ingress:
+ description: The configuration of Ingress trait
+ properties:
+ auto:
+ description: To automatically add an ingress whenever the
+ integration uses a HTTP endpoint consumer.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ host:
+ description: '**Required**. To configure the host exposed
+ by the ingress.'
+ type: string
+ type: object
+ istio:
+ description: The configuration of Istio trait
+ properties:
+ allow:
+ description: Configures a (comma-separated) list of CIDR subnets
+ that should not be intercepted by the Istio proxy (`10.0.0.0/8,172.16.0.0/12,192.168.0.0/16`
+ by default).
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ inject:
+ description: Forces the value for labels `sidecar.istio.io/inject`.
+ By default the label is set to `true` on deployment and
+ not set on Knative Service.
+ type: boolean
+ type: object
+ jolokia:
+ description: The configuration of Jolokia trait
+ properties:
+ CACert:
+ description: The PEM encoded CA certification file path, used
+ to verify client certificates, applicable when `protocol`
+ is `https` and `use-ssl-client-authentication` is `true`
+ (default `/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt`
+ for OpenShift).
+ type: string
+ clientPrincipal:
+ description: The principal(s) which must be given in a client
+ certificate to allow access to the Jolokia endpoint, applicable
+ when `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `clientPrincipal=cn=system:master-proxy`,
+ `cn=hawtio-online.hawtio.svc` and `cn=fuse-console.fuse.svc`
+ for OpenShift).
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ discoveryEnabled:
+ description: Listen for multicast requests (default `false`)
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ extendedClientCheck:
+ description: Mandate the client certificate contains a client
+ flag in the extended key usage section, applicable when
+ `protocol` is `https` and `use-ssl-client-authentication`
+ is `true` (default `true` for OpenShift).
+ type: boolean
+ host:
+ description: The Host address to which the Jolokia agent should
+ bind to. If `"\*"` or `"0.0.0.0"` is given, the servers
+ binds to every network interface (default `"*"`).
+ type: string
+ options:
+ description: A list of additional Jolokia options as defined
+ in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM
+ agent configuration options]
+ items:
+ type: string
+ type: array
+ password:
+ description: The password used for authentication, applicable
+ when the `user` option is set.
+ type: string
+ port:
+ description: The Jolokia endpoint port (default `8778`).
+ type: integer
+ protocol:
+ description: The protocol to use, either `http` or `https`
+ (default `https` for OpenShift)
+ type: string
+ useSSLClientAuthentication:
+ description: Whether client certificates should be used for
+ authentication (default `true` for OpenShift).
+ type: boolean
+ user:
+ description: The user to be used for authentication
+ type: string
+ type: object
+ jvm:
+ description: The configuration of JVM trait
+ properties:
+ classpath:
+ description: Additional JVM classpath (use `Linux` classpath
+ separator)
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ debug:
+ description: Activates remote debugging, so that a debugger
+ can be attached to the JVM, e.g., using port-forwarding
+ type: boolean
+ debugAddress:
+ description: Transport address at which to listen for the
+ newly launched JVM (default `*:5005`)
+ type: string
+ debugSuspend:
+ description: Suspends the target JVM immediately before the
+ main class is loaded
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ options:
+ description: A list of JVM options
+ items:
+ type: string
+ type: array
+ printCommand:
+ description: Prints the command used the start the JVM in
+ the container logs (default `true`)
+ type: boolean
+ type: object
+ kamelets:
+ description: The configuration of Kamelets trait
+ properties:
+ auto:
+ description: Automatically inject all referenced Kamelets
+ and their default configuration (enabled by default)
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ list:
+ description: Comma separated list of Kamelet names to load
+ into the current integration
+ type: string
+ type: object
+ keda:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ knative:
+ description: The configuration of Knative trait
+ properties:
+ auto:
+ description: Enable automatic discovery of all trait properties.
+ type: boolean
+ channelSinks:
+ description: List of channels used as destination of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ channelSources:
+ description: List of channels used as source of integration
+ routes. Can contain simple channel names or full Camel URIs.
+ items:
+ type: string
+ type: array
+ config:
+ description: Can be used to inject a Knative complete configuration
+ in JSON format.
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ endpointSinks:
+ description: List of endpoints used as destination of integration
+ routes. Can contain simple endpoint names or full Camel
+ URIs.
+ items:
+ type: string
+ type: array
+ endpointSources:
+ description: List of channels used as source of integration
+ routes.
+ items:
+ type: string
+ type: array
+ eventSinks:
+ description: List of event types that the integration will
+ produce. Can contain simple event types or full Camel URIs
+ (to use a specific broker).
+ items:
+ type: string
+ type: array
+ eventSources:
+ description: List of event types that the integration will
+ be subscribed to. Can contain simple event types or full
+ Camel URIs (to use a specific broker different from "default").
+ items:
+ type: string
+ type: array
+ filterSourceChannels:
+ description: Enables filtering on events based on the header
+ "ce-knativehistory". Since this header has been removed
+ in newer versions of Knative, filtering is disabled by default.
+ type: boolean
+ sinkBinding:
+ description: Allows binding the integration to a sink via
+ a Knative SinkBinding resource. This can be used when the
+ integration targets a single sink. It's enabled by default
+ when the integration targets a single sink (except when
+ the integration is owned by a Knative source).
+ type: boolean
+ type: object
+ knative-service:
+ description: The configuration of Knative Service trait
+ properties:
+ auto:
+ 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`
+ is a passive consumer)"
+ type: boolean
+ autoscalingMetric:
+ description: "Configures the Knative autoscaling metric property
+ (e.g. to set `concurrency` based or `cpu` based autoscaling).
+ \n Refer to the Knative documentation for more information."
+ type: string
+ autoscalingTarget:
+ description: "Sets the allowed concurrency level or CPU percentage
+ (depending on the autoscaling metric) for each Pod. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ class:
+ description: "Configures the Knative autoscaling class property
+ (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev`
+ autoscaling). \n Refer to the Knative documentation for
+ more information."
+ type: string
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxScale:
+ description: "An upper bound for the number of Pods that can
+ be running in parallel for the integration. Knative has
+ its own cap value that depends on the installation. \n Refer
+ to the Knative documentation for more information."
+ type: integer
+ minScale:
+ description: "The minimum number of Pods that should be running
+ at any time for the integration. It's **zero** by default,
+ meaning that the integration is scaled down to zero when
+ not used for a configured amount of time. \n Refer to the
+ Knative documentation for more information."
+ type: integer
+ rolloutDuration:
+ description: Enables to gradually shift traffic to the latest
+ Revision and sets the rollout duration. It's disabled by
+ default and must be expressed as a Golang `time.Duration`
+ string representation, rounded to a second precision.
+ type: string
+ type: object
+ logging:
+ description: The configuration of Logging trait
+ properties:
+ color:
+ description: Colorize the log output
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ format:
+ description: Logs message format
+ type: string
+ json:
+ description: Output the logs in JSON
+ type: boolean
+ jsonPrettyPrint:
+ description: Enable "pretty printing" of the JSON logs
+ type: boolean
+ level:
+ description: Adjust the logging level (defaults to INFO)
+ type: string
+ type: object
+ master:
+ description: 'Deprecated: for backward compatibility.'
+ properties:
+ configuration:
+ description: TraitConfiguration parameters configuration
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ required:
+ - configuration
+ type: object
+ mount:
+ description: The configuration of Mount trait
+ properties:
+ configs:
+ description: 'A list of configuration pointing to configmap/secret.
+ The configuration are expected to be UTF-8 resources as
+ they are processed by runtime Camel Context and tried to
+ be parsed as property files. They are also made available
+ on the classpath in order to ease their usage directly from
+ the Route. Syntax: [configmap|secret]:name[/key], where
+ name represents the resource name and key optionally represents
+ the resource key to be filtered'
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ resources:
+ description: 'A list of resources (text or binary content)
+ pointing to configmap/secret. The resources are expected
+ to be any resource type (text or binary content). The destination
+ path can be either a default location or any path specified
+ by the user. Syntax: [configmap|secret]:name[/key][@path],
+ where name represents the resource name, key optionally
+ represents the resource key to be filtered and path represents
+ the destination path'
+ items:
+ type: string
+ type: array
+ volumes:
+ description: 'A list of Persistent Volume Claims to be mounted.
+ Syntax: [pvcname:/container/path]'
+ items:
+ type: string
+ type: array
+ type: object
+ openapi:
+ description: The configuration of OpenAPI trait
+ properties:
+ configmaps:
+ description: The configmaps holding the spec of the OpenAPI
+ items:
+ type: string
+ type: array
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ owner:
+ description: The configuration of Owner trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ targetAnnotations:
+ description: The set of annotations to be transferred
+ items:
+ type: string
+ type: array
+ targetLabels:
+ description: The set of labels to be transferred
+ items:
+ type: string
+ type: array
+ type: object
+ pdb:
+ description: The configuration of PDB trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ maxUnavailable:
+ description: The number of pods for the Integration that can
+ be unavailable after an eviction. It can be either an absolute
+ number or a percentage (default `1` if `min-available` is
+ also not set). Only one of `max-unavailable` and `min-available`
+ can be specified.
+ type: string
+ minAvailable:
+ description: The number of pods for the Integration that must
+ still be available after an eviction. It can be either an
+ absolute number or a percentage. Only one of `min-available`
+ and `max-unavailable` can be specified.
+ type: string
+ type: object
+ platform:
+ description: The configuration of Platform trait
+ properties:
+ auto:
+ description: To automatically detect from the environment
+ if a default platform can be created (it will be created
+ on OpenShift only).
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ createDefault:
+ description: To create a default (empty) platform when the
+ platform is missing.
+ type: boolean
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ global:
+ description: Indicates if the platform should be created globally
+ in the case of global operator (default true).
+ type: boolean
+ type: object
+ pod:
+ description: The configuration of Pod trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ type: object
+ prometheus:
+ description: The configuration of Prometheus trait
+ properties:
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ podMonitor:
+ description: Whether a `PodMonitor` resource is created (default
+ `true`).
+ type: boolean
+ podMonitorLabels:
+ description: The `PodMonitor` resource labels, applicable
+ when `pod-monitor` is `true`.
+ items:
+ type: string
+ type: array
+ type: object
+ pull-secret:
+ description: The configuration of Pull Secret trait
+ properties:
+ auto:
+ description: Automatically configures the platform registry
+ secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.
+ type: boolean
+ configuration:
+ description: 'Legacy trait configuration parameters. Deprecated:
+ for backward compatibility.'
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ enabled:
+ description: Can be used to enable or disable a trait. All
+ traits share this common property.
+ type: boolean
+ imagePullerDelegation:
+ description: When using a global operator with a shared platform,
+ this enables delegation of the `system:image-puller` cluster
+ role on the operator namespace to the integration service
... 2002 lines suppressed ...