[#_camel_apache_org_v1]
== camel.apache.org/v1

Package v1 contains API Schema definitions for the camel v1 API group

==  Resource Types

[#_camel_apache_org_v1_Build]
=== Build

Build is the Schema for the builds API.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`Build`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_BuildSpec[BuildSpec]*
|




|`status` +
*xref:#_camel_apache_org_v1_BuildStatus[BuildStatus]*
|





|===

[#_camel_apache_org_v1_CamelCatalog]
=== CamelCatalog

CamelCatalog represents the languages, components, data formats and capabilities enabled on a given runtime provider. The catalog may be statically generated.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`CamelCatalog`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`status` +
*xref:#_camel_apache_org_v1_CamelCatalogStatus[CamelCatalogStatus]*
|


the actual state of the catalog

|`spec` +
*xref:#_camel_apache_org_v1_CamelCatalogSpec[CamelCatalogSpec]*
|


the desired state of the catalog


|===

[#_camel_apache_org_v1_Integration]
=== Integration

Integration is the Schema for the integrations API.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`Integration`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_IntegrationSpec[IntegrationSpec]*
|


the desired Integration specification

|`status` +
*xref:#_camel_apache_org_v1_IntegrationStatus[IntegrationStatus]*
|


the status of the Integration


|===

[#_camel_apache_org_v1_IntegrationKit]
=== IntegrationKit

IntegrationKit defines a container image and additional configuration needed to run an `Integration`.
An `IntegrationKit` is a generic image generally built from the requirements of an `Integration`, but agnostic to it,
in order to be reused by any other `Integration` which has the same required set of capabilities. An `IntegrationKit`
may be used for other kits as a base container layer, when the `incremental` build option is enabled.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`IntegrationKit`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_IntegrationKitSpec[IntegrationKitSpec]*
|


the desired configuration

|`status` +
*xref:#_camel_apache_org_v1_IntegrationKitStatus[IntegrationKitStatus]*
|


the actual status


|===

[#_camel_apache_org_v1_IntegrationPlatform]
=== IntegrationPlatform

IntegrationPlatform is the resource used to drive the Camel K operator behavior.
It defines the behavior of all Custom Resources (`IntegrationKit`, `Integration`, `Kamelet`) in the given namespace.
When the Camel K operator is installed in `global` mode,
you will need to specify an `IntegrationPlatform` in each namespace where you want the Camel K operator to be executed.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`IntegrationPlatform`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_IntegrationPlatformSpec[IntegrationPlatformSpec]*
|




|`status` +
*xref:#_camel_apache_org_v1_IntegrationPlatformStatus[IntegrationPlatformStatus]*
|





|===

[#_camel_apache_org_v1_IntegrationProfile]
=== IntegrationProfile

IntegrationProfile is the resource used to apply user defined settings to the Camel K operator behavior.
It defines the behavior of all Custom Resources (`IntegrationKit`, `Integration`, `Kamelet`) in the given namespace.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`IntegrationProfile`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_IntegrationProfileSpec[IntegrationProfileSpec]*
|




|`status` +
*xref:#_camel_apache_org_v1_IntegrationProfileStatus[IntegrationProfileStatus]*
|


Deprecated: no longer in use.


|===

[#_camel_apache_org_v1_Kamelet]
=== Kamelet

Kamelet is the Schema for the kamelets API.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`Kamelet`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_KameletSpec[KameletSpec]*
|


the desired specification

|`status` +
*xref:#_camel_apache_org_v1_KameletStatus[KameletStatus]*
|


the actual status of the resource
Deprecated no longer in use


|===

[#_camel_apache_org_v1_Pipe]
=== Pipe

Pipe is the Schema for the Pipe API.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`apiVersion` +
string
|`camel.apache.org/v1`

|`kind` +
string
|`Pipe`
|`metadata` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectmeta-v1-meta[Kubernetes meta/v1.ObjectMeta]*
|




Refer to the Kubernetes API documentation for the fields of the `metadata` field.
|`spec` +
*xref:#_camel_apache_org_v1_PipeSpec[PipeSpec]*
|


the specification of a Pipe

|`status` +
*xref:#_camel_apache_org_v1_PipeStatus[PipeStatus]*
|


the status of a Pipe


|===

== Internal Types

[#_camel_apache_org_v1_AddonTrait]
=== AddonTrait

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitTraits, IntegrationKitTraits>>
* <<#_camel_apache_org_v1_Traits, Traits>>

AddonTrait represents the configuration of an addon trait.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)


Generic raw message, typically a map containing the keys (trait parameters) and the values (either single text or array)


|===

[#_camel_apache_org_v1_Args]
=== Args

*Appears on:*

* <<#_camel_apache_org_v1_Container, Container>>

Args -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`arg` +
string
|





|===

[#_camel_apache_org_v1_Artifact]
=== Artifact

*Appears on:*

* <<#_camel_apache_org_v1_BuildStatus, BuildStatus>>
* <<#_camel_apache_org_v1_IntegrationKitStatus, IntegrationKitStatus>>

Artifact represents a materialized artifact (a jar dependency or in general a file used by the build).

[cols="2,2a",options="header"]
|===
|Field
|Description

|`id` +
string
|


the identification (GAV for maven dependencies or file name for other file types)

|`location` +
string
|


where it is located in the builder `Pod`

|`target` +
string
|


the expected location in the runtime

|`checksum` +
string
|


a checksum (SHA1) of the content


|===

[#_camel_apache_org_v1_BaseTask]
=== BaseTask

*Appears on:*

* <<#_camel_apache_org_v1_BuildahTask, BuildahTask>>
* <<#_camel_apache_org_v1_BuilderTask, BuilderTask>>
* <<#_camel_apache_org_v1_JibTask, JibTask>>
* <<#_camel_apache_org_v1_KanikoTask, KanikoTask>>
* <<#_camel_apache_org_v1_S2iTask, S2iTask>>
* <<#_camel_apache_org_v1_SpectrumTask, SpectrumTask>>
* <<#_camel_apache_org_v1_UserTask, UserTask>>

BaseTask is a base for the struct hierarchy.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`name` +
string
|


name of the task

|`configuration` +
*xref:#_camel_apache_org_v1_BuildConfiguration[BuildConfiguration]*
|


The configuration that should be used to perform the Build.


|===

[#_camel_apache_org_v1_BeanProperties]
=== BeanProperties

BeanProperties represent an unstructured object properties to be set on a bean.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_BuildCondition]
=== BuildCondition

*Appears on:*

* <<#_camel_apache_org_v1_BuildStatus, BuildStatus>>

BuildCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_BuildConditionType[BuildConditionType]*
|


Type of integration condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.


|===

[#_camel_apache_org_v1_BuildConditionType]
=== BuildConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_BuildCondition, BuildCondition>>

BuildConditionType -- .


[#_camel_apache_org_v1_BuildConfiguration]
=== BuildConfiguration

*Appears on:*

* <<#_camel_apache_org_v1_BaseTask, BaseTask>>
* <<#_camel_apache_org_v1_BuildSpec, BuildSpec>>
* <<#_camel_apache_org_v1_IntegrationPlatformBuildSpec, IntegrationPlatformBuildSpec>>

BuildConfiguration represent the configuration required to build the runtime.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`toolImage` +
string
|


The container image to be used to run the build.

|`operatorNamespace` +
string
|


The namespace where to run the builder Pod (must be the same of the operator in charge of this Build reconciliation).

Deprecated: no longer in use.

|`strategy` +
*xref:#_camel_apache_org_v1_BuildStrategy[BuildStrategy]*
|


the strategy to adopt

|`orderStrategy` +
*xref:#_camel_apache_org_v1_BuildOrderStrategy[BuildOrderStrategy]*
|


the build order strategy to adopt

|`requestCPU` +
string
|


The minimum amount of CPU required. Only used for `pod` strategy

|`requestMemory` +
string
|


The minimum amount of memory required. Only used for `pod` strategy

|`limitCPU` +
string
|


The maximum amount of CPU required. Only used for `pod` strategy

|`limitMemory` +
string
|


The maximum amount of memory required. Only used for `pod` strategy

|`nodeSelector` +
map[string]string
|


The node selector for the builder pod. Only used for `pod` strategy

|`annotations` +
map[string]string
|


Annotation to use for the builder pod. Only used for `pod` strategy

|`platforms` +
[]string
|


The list of platforms used in order to build a container image.


|===

[#_camel_apache_org_v1_BuildOrderStrategy]
=== BuildOrderStrategy(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_BuildConfiguration, BuildConfiguration>>

BuildOrderStrategy specifies how builds are reconciled and queued.


[#_camel_apache_org_v1_BuildPhase]
=== BuildPhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_BuildStatus, BuildStatus>>

BuildPhase -- .


[#_camel_apache_org_v1_BuildSpec]
=== BuildSpec

*Appears on:*

* <<#_camel_apache_org_v1_Build, Build>>

BuildSpec defines the list of tasks to be execute for a Build. From Camel K version 2, it would be more appropriate
to think it as pipeline.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`tasks` +
*xref:#_camel_apache_org_v1_Task[[\]Task]*
|


The sequence of tasks (pipeline) to be performed.

|`configuration` +
*xref:#_camel_apache_org_v1_BuildConfiguration[BuildConfiguration]*
|


The configuration that should be used to perform the Build.
Deprecated: no longer in use in Camel K 2 - maintained for backward compatibility

|`toolImage` +
string
|


The container image to be used to run the build.
Deprecated: no longer in use in Camel K 2 - maintained for backward compatibility

|`operatorNamespace` +
string
|


The namespace where to run the builder Pod (must be the same of the operator in charge of this Build reconciliation).
Deprecated: no longer in use in Camel K 2 - maintained for backward compatibility

|`timeout` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#duration-v1-meta[Kubernetes meta/v1.Duration]*
|


Timeout defines the Build maximum execution duration.
The Build deadline is set to the Build start time plus the Timeout duration.
If the Build deadline is exceeded, the Build context is canceled,
and its phase set to BuildPhaseFailed.

|`maxRunningBuilds` +
int32
|


the maximum amount of parallel running builds started by this operator instance
Deprecated: no longer in use in Camel K 2 - maintained for backward compatibility


|===

[#_camel_apache_org_v1_BuildStatus]
=== BuildStatus

*Appears on:*

* <<#_camel_apache_org_v1_Build, Build>>

BuildStatus defines the observed state of Build.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this Build.

|`phase` +
*xref:#_camel_apache_org_v1_BuildPhase[BuildPhase]*
|


describes the phase

|`image` +
string
|


the image name built

|`digest` +
string
|


the digest from image

|`rootImage` +
string
|


root image (the first image from which the incremental image has started)

|`baseImage` +
string
|


the base image used for this build

|`artifacts` +
*xref:#_camel_apache_org_v1_Artifact[[\]Artifact]*
|


a list of artifacts contained in the build

|`error` +
string
|


the error description (if any)

|`failure` +
*xref:#_camel_apache_org_v1_Failure[Failure]*
|


the reason of the failure (if any)

|`startedAt` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


the time when it started

|`conditions` +
*xref:#_camel_apache_org_v1_BuildCondition[[\]BuildCondition]*
|


a list of conditions occurred during the build

|`duration` +
string
|


how long it took for the build
Change to Duration / ISO 8601 when CRD uses OpenAPI spec v3
https://github.com/OAI/OpenAPI-Specification/issues/845


|===

[#_camel_apache_org_v1_BuildStrategy]
=== BuildStrategy(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_BuildConfiguration, BuildConfiguration>>

BuildStrategy specifies how the Build should be executed.
It will trigger a Maven process (either as an Operator routine or Kubernetes Pod execution) that
will take care of producing the expected Camel/Camel-Quarkus runtime.


[#_camel_apache_org_v1_BuildahTask]
=== BuildahTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

BuildahTask is used to configure Buildah.
Deprecated: no longer in use.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`PublishTask` +
*xref:#_camel_apache_org_v1_PublishTask[PublishTask]*
|(Members of `PublishTask` are embedded into this type.)




|`platform` +
string
|


The platform of build image

|`verbose` +
bool
|


log more information

|`executorImage` +
string
|


docker image to use


|===

[#_camel_apache_org_v1_BuilderTask]
=== BuilderTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

BuilderTask is the generic task in charge of building the application image.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`baseImage` +
string
|


the base image layer

|`runtime` +
*xref:#_camel_apache_org_v1_RuntimeSpec[RuntimeSpec]*
|


the configuration required for the runtime application

|`dependencies` +
[]string
|


the list of dependencies to use for this build

|`steps` +
[]string
|


the list of steps to execute (see pkg/builder/)

|`maven` +
*xref:#_camel_apache_org_v1_MavenBuildSpec[MavenBuildSpec]*
|


the configuration required by Maven for the application build phase

|`buildDir` +
string
|


workspace directory to use

|`sources` +
*xref:#_camel_apache_org_v1_SourceSpec[[\]SourceSpec]*
|


the sources to add at build time

|`git` +
*xref:#_camel_apache_org_v1_GitConfigSpec[GitConfigSpec]*
|


the configuration of the project to build on Git


|===

[#_camel_apache_org_v1_CamelArtifact]
=== CamelArtifact

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalogSpec, CamelCatalogSpec>>

CamelArtifact represent the configuration for a feature offered by Camel.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`CamelArtifactDependency` +
*xref:#_camel_apache_org_v1_CamelArtifactDependency[CamelArtifactDependency]*
|(Members of `CamelArtifactDependency` are embedded into this type.)


Base Camel Artifact dependency

|`schemes` +
*xref:#_camel_apache_org_v1_CamelScheme[[\]CamelScheme]*
|


accepted URI schemes

|`languages` +
[]string
|


accepted languages

|`dataformats` +
[]string
|


accepted data formats

|`dependencies` +
*xref:#_camel_apache_org_v1_CamelArtifactDependency[[\]CamelArtifactDependency]*
|


required dependencies

|`javaTypes` +
[]string
|


the Java types used by the artifact feature (ie, component, data format, ...)


|===

[#_camel_apache_org_v1_CamelArtifactDependency]
=== CamelArtifactDependency

*Appears on:*

* <<#_camel_apache_org_v1_CamelArtifact, CamelArtifact>>
* <<#_camel_apache_org_v1_CamelSchemeScope, CamelSchemeScope>>

CamelArtifactDependency represent a maven's dependency.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`MavenArtifact` +
*xref:#_camel_apache_org_v1_MavenArtifact[MavenArtifact]*
|(Members of `MavenArtifact` are embedded into this type.)


the maven dependency

|`exclusions` +
*xref:#_camel_apache_org_v1_CamelArtifactExclusion[[\]CamelArtifactExclusion]*
|


provide a list of artifacts to exclude for this dependency


|===

[#_camel_apache_org_v1_CamelArtifactExclusion]
=== CamelArtifactExclusion

*Appears on:*

* <<#_camel_apache_org_v1_CamelArtifactDependency, CamelArtifactDependency>>

CamelArtifactExclusion represents an exclusion clause.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`groupId` +
string
|


Maven Group

|`artifactId` +
string
|


Maven Artifact


|===

[#_camel_apache_org_v1_CamelCatalogCondition]
=== CamelCatalogCondition

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalogStatus, CamelCatalogStatus>>

CamelCatalogCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_CamelCatalogConditionType[CamelCatalogConditionType]*
|


Type of CamelCatalog condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.


|===

[#_camel_apache_org_v1_CamelCatalogConditionType]
=== CamelCatalogConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalogCondition, CamelCatalogCondition>>

CamelCatalogConditionType --.


[#_camel_apache_org_v1_CamelCatalogPhase]
=== CamelCatalogPhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalogStatus, CamelCatalogStatus>>

CamelCatalogPhase -- .


[#_camel_apache_org_v1_CamelCatalogSpec]
=== CamelCatalogSpec

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalog, CamelCatalog>>

CamelCatalogSpec specify what features a Camel runtime provides.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`runtime` +
*xref:#_camel_apache_org_v1_RuntimeSpec[RuntimeSpec]*
|


the runtime targeted for the catalog

|`artifacts` +
*xref:#_camel_apache_org_v1_CamelArtifact[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.CamelArtifact]*
|


artifacts required by this catalog

|`loaders` +
*xref:#_camel_apache_org_v1_CamelLoader[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.CamelLoader]*
|


loaders required by this catalog


|===

[#_camel_apache_org_v1_CamelCatalogStatus]
=== CamelCatalogStatus

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalog, CamelCatalog>>

CamelCatalogStatus defines the observed state of CamelCatalog.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this Catalog.

|`phase` +
*xref:#_camel_apache_org_v1_CamelCatalogPhase[CamelCatalogPhase]*
|


the actual phase

|`conditions` +
*xref:#_camel_apache_org_v1_CamelCatalogCondition[[\]CamelCatalogCondition]*
|


a list of events happened for the CamelCatalog

|`image` +
string
|


the container image available for building an application with this catalog


|===

[#_camel_apache_org_v1_CamelLoader]
=== CamelLoader

*Appears on:*

* <<#_camel_apache_org_v1_CamelCatalogSpec, CamelCatalogSpec>>

CamelLoader represents the configuration required to load a DSL.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`MavenArtifact` +
*xref:#_camel_apache_org_v1_MavenArtifact[MavenArtifact]*
|(Members of `MavenArtifact` are embedded into this type.)


the base Maven artifact required

|`languages` +
[]string
|


a list of DSLs supported

|`dependencies` +
*xref:#_camel_apache_org_v1_MavenArtifact[[\]MavenArtifact]*
|


a list of additional dependencies required beside the base one

|`metadata` +
map[string]string
|


the metadata of the loader


|===

[#_camel_apache_org_v1_CamelProperty]
=== CamelProperty

*Appears on:*

* <<#_camel_apache_org_v1_Capability, Capability>>

CamelProperty represents a Camel property that may end up in an application.properties file.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`key` +
string
|




|`value` +
string
|





|===

[#_camel_apache_org_v1_CamelScheme]
=== CamelScheme

*Appears on:*

* <<#_camel_apache_org_v1_CamelArtifact, CamelArtifact>>

CamelScheme represents the scheme used to identify a component in a URI (ie, timer in a timer:xyz endpoint URI).

[cols="2,2a",options="header"]
|===
|Field
|Description

|`id` +
string
|


the ID (ie, timer in a timer:xyz URI)

|`passive` +
bool
|


is a passive scheme

|`http` +
bool
|


is a HTTP based scheme

|`consumer` +
*xref:#_camel_apache_org_v1_CamelSchemeScope[CamelSchemeScope]*
|


required scope for consumer

|`producer` +
*xref:#_camel_apache_org_v1_CamelSchemeScope[CamelSchemeScope]*
|


required scope for producers


|===

[#_camel_apache_org_v1_CamelSchemeScope]
=== CamelSchemeScope

*Appears on:*

* <<#_camel_apache_org_v1_CamelScheme, CamelScheme>>

CamelSchemeScope contains scoped information about a scheme.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`dependencies` +
*xref:#_camel_apache_org_v1_CamelArtifactDependency[[\]CamelArtifactDependency]*
|


list of dependencies needed for this scope


|===

[#_camel_apache_org_v1_Capability]
=== Capability

*Appears on:*

* <<#_camel_apache_org_v1_RuntimeSpec, RuntimeSpec>>

Capability is a particular feature which requires a well known set of dependencies and other properties
which are specified in the runtime catalog.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`dependencies` +
*xref:#_camel_apache_org_v1_MavenArtifact[[\]MavenArtifact]*
|


List of required Maven dependencies

|`runtimeProperties` +
*xref:#_camel_apache_org_v1_CamelProperty[[\]CamelProperty]*
|


Set of required Camel runtime properties

|`buildTimeProperties` +
*xref:#_camel_apache_org_v1_CamelProperty[[\]CamelProperty]*
|


Set of required Camel build time properties

|`metadata` +
map[string]string
|


Set of generic metadata


|===

[#_camel_apache_org_v1_Catalog]
=== Catalog

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitStatus, IntegrationKitStatus>>
* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>

Catalog represents the Camel Catalog runtime specification.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`version` +
string
|




|`provider` +
*xref:#_camel_apache_org_v1_RuntimeProvider[RuntimeProvider]*
|





|===

[#_camel_apache_org_v1_Configurable]
=== Configurable

Configurable --.


[#_camel_apache_org_v1_ConfigurationSpec]
=== ConfigurationSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitSpec, IntegrationKitSpec>>
* <<#_camel_apache_org_v1_IntegrationPlatformSpec, IntegrationPlatformSpec>>
* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>
* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>

ConfigurationSpec represents a generic configuration specification.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
string
|


represents the type of configuration, ie: property, configmap, secret, ...

|`value` +
string
|


the value to assign to the configuration (syntax may vary depending on the `Type`)


|===

[#_camel_apache_org_v1_Container]
=== Container

*Appears on:*

* <<#_camel_apache_org_v1_PluginConfiguration, PluginConfiguration>>

Container -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`entrypoint` +
string
|




|`args` +
*xref:#_camel_apache_org_v1_Args[Args]*
|





|===

[#_camel_apache_org_v1_DataSpec]
=== DataSpec

*Appears on:*

* <<#_camel_apache_org_v1_SourceSpec, SourceSpec>>

DataSpec represents the way the source is materialized in the running `Pod`.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`name` +
string
|


the name of the specification

|`path` +
string
|


the path where the file is stored

|`content` +
string
|


the source code (plain text)

|`rawContent` +
[]byte
|


the source code (binary)

|`contentRef` +
string
|


the confimap reference holding the source content

|`contentKey` +
string
|


the confimap key holding the source content

|`contentType` +
string
|


the content type (tipically text or binary)

|`compression` +
bool
|


if the content is compressed (base64 encrypted)


|===

[#_camel_apache_org_v1_DataTypeReference]
=== DataTypeReference

*Appears on:*

* <<#_camel_apache_org_v1_Endpoint, Endpoint>>

DataTypeReference references to the specification of a data type by its scheme and format name.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`scheme` +
string
|


the data type component scheme

|`format` +
string
|


the data type format name


|===

[#_camel_apache_org_v1_DataTypeSpec]
=== DataTypeSpec

*Appears on:*

* <<#_camel_apache_org_v1_DataTypesSpec, DataTypesSpec>>

DataTypeSpec represents the specification for a data type.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`scheme` +
string
|


the data type component scheme

|`format` +
string
|


the data type format name

|`description` +
string
|


optional description

|`mediaType` +
string
|


media type as expected for HTTP media types (ie, application/json)

|`dependencies` +
[]string
|


the list of Camel or Maven dependencies required by the data type

|`headers` +
*xref:#_camel_apache_org_v1_HeaderSpec[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.HeaderSpec]*
|


one to many header specifications

|`schema` +
*xref:#_camel_apache_org_v1_JSONSchemaProps[JSONSchemaProps]*
|


the expected schema for the data type


|===

[#_camel_apache_org_v1_DataTypesSpec]
=== DataTypesSpec

*Appears on:*

* <<#_camel_apache_org_v1_KameletSpecBase, KameletSpecBase>>

DataTypesSpec represents the specification for a set of data types.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`default` +
string
|


the default data type for this Kamelet

|`types` +
*xref:#_camel_apache_org_v1_DataTypeSpec[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.DataTypeSpec]*
|


one to many data type specifications

|`headers` +
*xref:#_camel_apache_org_v1_HeaderSpec[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.HeaderSpec]*
|


one to many header specifications


|===

[#_camel_apache_org_v1_Endpoint]
=== Endpoint

*Appears on:*

* <<#_camel_apache_org_v1_ErrorHandlerSink, ErrorHandlerSink>>
* <<#_camel_apache_org_v1_PipeSpec, PipeSpec>>

Endpoint represents a source/sink external entity (could be any Kubernetes resource or Camel URI).

[cols="2,2a",options="header"]
|===
|Field
|Description

|`ref` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectreference-v1-core[Kubernetes core/v1.ObjectReference]*
|


Ref can be used to declare a Kubernetes resource as source/sink endpoint

|`uri` +
string
|


URI can be used to specify the (Camel) endpoint explicitly

|`properties` +
*xref:#_camel_apache_org_v1_EndpointProperties[EndpointProperties]*
|


Properties are a key value representation of endpoint properties

|`dataTypes` +
*xref:#_camel_apache_org_v1_DataTypeReference[map[github.com/apache/camel-k/v2/pkg/apis/camel/v1.TypeSlot\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.DataTypeReference]*
|


DataTypes defines the data type of the data produced/consumed by the endpoint and references a given data type specification.


|===

[#_camel_apache_org_v1_EndpointProperties]
=== EndpointProperties

*Appears on:*

* <<#_camel_apache_org_v1_Endpoint, Endpoint>>

EndpointProperties is a key/value struct represented as JSON raw to allow numeric/boolean values.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_EndpointType]
=== EndpointType(`string` alias)

EndpointType represents the type (ie, source or sink).


[#_camel_apache_org_v1_ErrorHandler]
=== ErrorHandler

ErrorHandler is a generic interface that represent any type of error handler specification.


[#_camel_apache_org_v1_ErrorHandlerLog]
=== ErrorHandlerLog

*Appears on:*

* <<#_camel_apache_org_v1_ErrorHandlerSink, ErrorHandlerSink>>

ErrorHandlerLog represent a default (log) error handler type.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`ErrorHandlerNone` +
*xref:#_camel_apache_org_v1_ErrorHandlerNone[ErrorHandlerNone]*
|




|`parameters` +
*xref:#_camel_apache_org_v1_ErrorHandlerParameters[ErrorHandlerParameters]*
|





|===

[#_camel_apache_org_v1_ErrorHandlerNone]
=== ErrorHandlerNone

*Appears on:*

* <<#_camel_apache_org_v1_ErrorHandlerLog, ErrorHandlerLog>>

ErrorHandlerNone --.

[cols="2,2a",options="header"]
|===
|Field
|Description


|===

[#_camel_apache_org_v1_ErrorHandlerParameters]
=== ErrorHandlerParameters

*Appears on:*

* <<#_camel_apache_org_v1_ErrorHandlerLog, ErrorHandlerLog>>

ErrorHandlerParameters represent an unstructured object for error handler parameters.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_ErrorHandlerSink]
=== ErrorHandlerSink

ErrorHandlerSink represents a sink error handler type which behave like a dead letter channel.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`ErrorHandlerLog` +
*xref:#_camel_apache_org_v1_ErrorHandlerLog[ErrorHandlerLog]*
|




|`endpoint` +
*xref:#_camel_apache_org_v1_Endpoint[Endpoint]*
|





|===

[#_camel_apache_org_v1_ErrorHandlerSpec]
=== ErrorHandlerSpec

*Appears on:*

* <<#_camel_apache_org_v1_PipeSpec, PipeSpec>>

ErrorHandlerSpec represents an unstructured object for an error handler.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_ErrorHandlerType]
=== ErrorHandlerType(`string` alias)

ErrorHandlerType a type of error handler (ie, sink).


[#_camel_apache_org_v1_EventTypeSpec]
=== EventTypeSpec

*Appears on:*

* <<#_camel_apache_org_v1_KameletSpecBase, KameletSpecBase>>

EventTypeSpec represents a specification for an event type.
Deprecated: In favor of using DataTypeSpec.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`mediaType` +
string
|


media type as expected for HTTP media types (ie, application/json)

|`schema` +
*xref:#_camel_apache_org_v1_JSONSchemaProps[JSONSchemaProps]*
|


the expected schema for the event


|===

[#_camel_apache_org_v1_ExternalDocumentation]
=== ExternalDocumentation

*Appears on:*

* <<#_camel_apache_org_v1_JSONSchemaProps, JSONSchemaProps>>

ExternalDocumentation allows referencing an external resource for extended documentation.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`description` +
string
|




|`url` +
string
|





|===

[#_camel_apache_org_v1_ExtraDirectories]
=== ExtraDirectories

*Appears on:*

* <<#_camel_apache_org_v1_PluginConfiguration, PluginConfiguration>>

ExtraDirectories -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`paths>path` +
*xref:#_camel_apache_org_v1_Path[[\]Path]*
|




|`permissions>permission` +
*xref:#_camel_apache_org_v1_Permission[[\]Permission]*
|





|===

[#_camel_apache_org_v1_Failure]
=== Failure

*Appears on:*

* <<#_camel_apache_org_v1_BuildStatus, BuildStatus>>
* <<#_camel_apache_org_v1_IntegrationKitStatus, IntegrationKitStatus>>

Failure represent a message specifying the reason and the time of an event failure.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`reason` +
string
|


a short text specifying the reason

|`time` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


the time when the failure has happened

|`recovery` +
*xref:#_camel_apache_org_v1_FailureRecovery[FailureRecovery]*
|


the recovery attempted for this failure


|===

[#_camel_apache_org_v1_FailureRecovery]
=== FailureRecovery

*Appears on:*

* <<#_camel_apache_org_v1_Failure, Failure>>

FailureRecovery defines the attempts to recover a failure.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`attempt` +
int
|


attempt number

|`attemptMax` +
int
|


maximum number of attempts

|`attemptTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|
*(Optional)*

time of the attempt execution


|===

[#_camel_apache_org_v1_Filter]
=== Filter

*Appears on:*

* <<#_camel_apache_org_v1_PluginExtensionConfiguration, PluginExtensionConfiguration>>

Filter -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`glob` +
string
|




|`toLayer` +
string
|





|===

[#_camel_apache_org_v1_Flow]
=== Flow

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>

Flow is an unstructured object representing a Camel Flow in YAML/JSON DSL.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_GitConfigSpec]
=== GitConfigSpec

*Appears on:*

* <<#_camel_apache_org_v1_BuilderTask, BuilderTask>>
* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>

GitConfigSpec defines the Git configuration of a project.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`url` +
string
|


the URL of the project

|`secret` +
string
|


the Kubernetes secret where token is stored

|`branch` +
string
|


the git branch to check out

|`tag` +
string
|


the git tag to check out

|`commit` +
string
|


the git commit (full SHA) to check out


|===

[#_camel_apache_org_v1_HeaderSpec]
=== HeaderSpec

*Appears on:*

* <<#_camel_apache_org_v1_DataTypeSpec, DataTypeSpec>>
* <<#_camel_apache_org_v1_DataTypesSpec, DataTypesSpec>>

HeaderSpec represents the specification for a header used in the Kamelet.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
string
|




|`title` +
string
|




|`description` +
string
|




|`required` +
bool
|




|`default` +
string
|





|===

[#_camel_apache_org_v1_HealthCheck]
=== HealthCheck



[cols="2,2a",options="header"]
|===
|Field
|Description

|`status` +
*xref:#_camel_apache_org_v1_HealthCheckStatus[HealthCheckStatus]*
|




|`checks` +
*xref:#_camel_apache_org_v1_HealthCheckResponse[[\]HealthCheckResponse]*
|





|===

[#_camel_apache_org_v1_HealthCheckResponse]
=== HealthCheckResponse

*Appears on:*

* <<#_camel_apache_org_v1_HealthCheck, HealthCheck>>
* <<#_camel_apache_org_v1_PodCondition, PodCondition>>



[cols="2,2a",options="header"]
|===
|Field
|Description

|`name` +
string
|




|`status` +
*xref:#_camel_apache_org_v1_HealthCheckStatus[HealthCheckStatus]*
|




|`data` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|





|===

[#_camel_apache_org_v1_HealthCheckStatus]
=== HealthCheckStatus(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_HealthCheck, HealthCheck>>
* <<#_camel_apache_org_v1_HealthCheckResponse, HealthCheckResponse>>




[#_camel_apache_org_v1_IntegrationCondition]
=== IntegrationCondition

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>

IntegrationCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_IntegrationConditionType[IntegrationConditionType]*
|


Type of integration condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`firstTruthyTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


First time the condition status transitioned to True.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.

|`pods` +
*xref:#_camel_apache_org_v1_PodCondition[[\]PodCondition]*
|


Pods collect health and conditions information from the owned PODs


|===

[#_camel_apache_org_v1_IntegrationConditionType]
=== IntegrationConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationCondition, IntegrationCondition>>

IntegrationConditionType --.


[#_camel_apache_org_v1_IntegrationKitCondition]
=== IntegrationKitCondition

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitStatus, IntegrationKitStatus>>

IntegrationKitCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_IntegrationKitConditionType[IntegrationKitConditionType]*
|


Type of integration condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.


|===

[#_camel_apache_org_v1_IntegrationKitConditionType]
=== IntegrationKitConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitCondition, IntegrationKitCondition>>

IntegrationKitConditionType --.


[#_camel_apache_org_v1_IntegrationKitPhase]
=== IntegrationKitPhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitStatus, IntegrationKitStatus>>

IntegrationKitPhase --.


[#_camel_apache_org_v1_IntegrationKitSpec]
=== IntegrationKitSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKit, IntegrationKit>>

IntegrationKitSpec defines a container image and additional configurations required to kick off an `Integration` with certain features.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`image` +
string
|


the container image as identified in the container registry

|`dependencies` +
[]string
|


a list of Camel dependencies used by this kit

|`profile` +
*xref:#_camel_apache_org_v1_TraitProfile[TraitProfile]*
|


the profile which is expected by this kit

|`traits` +
*xref:#_camel_apache_org_v1_IntegrationKitTraits[IntegrationKitTraits]*
|


traits that the kit will execute

|`configuration` +
*xref:#_camel_apache_org_v1_ConfigurationSpec[[\]ConfigurationSpec]*
|


Deprecated:
Use camel trait (camel.properties) to manage properties
Use mount trait (mount.configs) to manage configs
Use mount trait (mount.resources) to manage resources
Use mount trait (mount.volumes) to manage volumes
configuration used by the kit

|`repositories` +
[]string
|


Maven repositories that can be used by the kit

|`sources` +
*xref:#_camel_apache_org_v1_SourceSpec[[\]SourceSpec]*
|


the sources to add at build time

|`capabilities` +
[]string
|


features offered by the IntegrationKit


|===

[#_camel_apache_org_v1_IntegrationKitStatus]
=== IntegrationKitStatus

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKit, IntegrationKit>>

IntegrationKitStatus defines the observed state of IntegrationKit.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this IntegrationKit.

|`phase` +
*xref:#_camel_apache_org_v1_IntegrationKitPhase[IntegrationKitPhase]*
|


phase of the kit

|`rootImage` +
string
|


root image used by the kit (the first image from which the incremental image has started, typically a JDK/JRE base image)

|`baseImage` +
string
|


base image used by the kit (could be another IntegrationKit)

|`image` +
string
|


actual image name of the kit

|`digest` +
string
|


actual image digest of the kit

|`artifacts` +
*xref:#_camel_apache_org_v1_Artifact[[\]Artifact]*
|


list of artifacts used by the kit

|`failure` +
*xref:#_camel_apache_org_v1_Failure[Failure]*
|


failure reason (if any)

|`runtimeVersion` +
string
|


the runtime version for which this kit was configured

|`runtimeProvider` +
*xref:#_camel_apache_org_v1_RuntimeProvider[RuntimeProvider]*
|


the runtime provider for which this kit was configured

|`catalog` +
*xref:#_camel_apache_org_v1_Catalog[Catalog]*
|


the catalog used to build/operate the IntegrationKit.

|`platform` +
string
|


the platform for which this kit was configured

|`version` +
string
|


the Camel K operator version for which this kit was configured

|`conditions` +
*xref:#_camel_apache_org_v1_IntegrationKitCondition[[\]IntegrationKitCondition]*
|


a list of conditions which happened for the events related the kit


|===

[#_camel_apache_org_v1_IntegrationKitTraits]
=== IntegrationKitTraits

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitSpec, IntegrationKitSpec>>

IntegrationKitTraits defines traits assigned to an `IntegrationKit`.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`builder` +
*xref:#_camel_apache_org_v1_trait_BuilderTrait[BuilderTrait]*
|


The builder trait is internally used to determine the best strategy to build and configure IntegrationKits.

|`camel` +
*xref:#_camel_apache_org_v1_trait_CamelTrait[CamelTrait]*
|


The Camel trait sets up Camel configuration.

|`quarkus` +
*xref:#_camel_apache_org_v1_trait_QuarkusTrait[QuarkusTrait]*
|


The Quarkus trait configures the Quarkus runtime.
It's enabled by default.
NOTE: Compiling to a native executable, requires at least 4GiB of memory, so the Pod running the native build must have enough memory available.

|`registry` +
*xref:#_camel_apache_org_v1_trait_RegistryTrait[RegistryTrait]*
|


The Registry trait sets up Maven to use the Image registry as a Maven repository (support removed since version 2.5.0).
Deprecated: use jvm trait or read documentation.

|`addons` +
*xref:#_camel_apache_org_v1_AddonTrait[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.AddonTrait]*
|


Deprecated: no longer in use.


|===

[#_camel_apache_org_v1_IntegrationPhase]
=== IntegrationPhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>

IntegrationPhase --.


[#_camel_apache_org_v1_IntegrationPlatformBuildPublishStrategy]
=== IntegrationPlatformBuildPublishStrategy(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformBuildSpec, IntegrationPlatformBuildSpec>>

IntegrationPlatformBuildPublishStrategy defines the strategy used to package and publish an Integration base image.


[#_camel_apache_org_v1_IntegrationPlatformBuildSpec]
=== IntegrationPlatformBuildSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformSpec, IntegrationPlatformSpec>>

IntegrationPlatformBuildSpec contains platform related build information.
This configuration can be used to tune the behavior of the Integration/IntegrationKit image builds.
You can define the build strategy, the image registry to use and the Maven configuration to adopt.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`buildConfiguration` +
*xref:#_camel_apache_org_v1_BuildConfiguration[BuildConfiguration]*
|


the configuration required to build an Integration container image

|`publishStrategy` +
*xref:#_camel_apache_org_v1_IntegrationPlatformBuildPublishStrategy[IntegrationPlatformBuildPublishStrategy]*
|


the strategy to adopt for publishing an Integration container image

|`runtimeVersion` +
string
|


the Camel K Runtime dependency version

|`runtimeProvider` +
*xref:#_camel_apache_org_v1_RuntimeProvider[RuntimeProvider]*
|


the runtime used. Likely Camel Quarkus (we used to have main runtime which has been discontinued since version 1.5)

|`runtimeCoreVersion` +
string
|


the Camel core version used by this IntegrationPlatform

|`baseImage` +
string
|


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 software

|`registry` +
*xref:#_camel_apache_org_v1_RegistrySpec[RegistrySpec]*
|


the image registry used to push/pull Integration images

|`buildCatalogToolTimeout` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#duration-v1-meta[Kubernetes meta/v1.Duration]*
|


the timeout (in seconds) to use when creating the build tools container image
Deprecated: no longer in use

|`timeout` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#duration-v1-meta[Kubernetes meta/v1.Duration]*
|


how much time to wait before time out the pipeline process

|`maven` +
*xref:#_camel_apache_org_v1_MavenSpec[MavenSpec]*
|


Maven configuration used to build the Camel/Camel-Quarkus applications

|`PublishStrategyOptions` +
map[string]string
|


Deprecated: no longer in use

|`maxRunningBuilds` +
int32
|


the maximum amount of parallel running pipelines started by this operator instance


|===

[#_camel_apache_org_v1_IntegrationPlatformCluster]
=== IntegrationPlatformCluster(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformSpec, IntegrationPlatformSpec>>

IntegrationPlatformCluster is the kind of orchestration cluster the platform is installed into.


[#_camel_apache_org_v1_IntegrationPlatformCondition]
=== IntegrationPlatformCondition

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformStatus, IntegrationPlatformStatus>>

IntegrationPlatformCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_IntegrationPlatformConditionType[IntegrationPlatformConditionType]*
|


Type of integration condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.


|===

[#_camel_apache_org_v1_IntegrationPlatformConditionType]
=== IntegrationPlatformConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformCondition, IntegrationPlatformCondition>>

IntegrationPlatformConditionType defines the type of condition.


[#_camel_apache_org_v1_IntegrationPlatformKameletSpec]
=== IntegrationPlatformKameletSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformSpec, IntegrationPlatformSpec>>

IntegrationPlatformKameletSpec define the behavior for all the Kamelets controller by the IntegrationPlatform.
Deprecated: to be removed in future versions.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`repositories` +
*xref:#_camel_apache_org_v1_KameletRepositorySpec[[\]KameletRepositorySpec]*
|


remote repository used to retrieve Kamelet catalog


|===

[#_camel_apache_org_v1_IntegrationPlatformPhase]
=== IntegrationPlatformPhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformStatus, IntegrationPlatformStatus>>

IntegrationPlatformPhase is the phase of an IntegrationPlatform.


[#_camel_apache_org_v1_IntegrationPlatformSpec]
=== IntegrationPlatformSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatform, IntegrationPlatform>>
* <<#_camel_apache_org_v1_IntegrationPlatformStatus, IntegrationPlatformStatus>>

IntegrationPlatformSpec defines the desired state of IntegrationPlatform.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`cluster` +
*xref:#_camel_apache_org_v1_IntegrationPlatformCluster[IntegrationPlatformCluster]*
|


what kind of cluster you're running (ie, plain Kubernetes or OpenShift)

|`profile` +
*xref:#_camel_apache_org_v1_TraitProfile[TraitProfile]*
|


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)

|`build` +
*xref:#_camel_apache_org_v1_IntegrationPlatformBuildSpec[IntegrationPlatformBuildSpec]*
|


specify how to build the Integration/IntegrationKits

|`traits` +
*xref:#_camel_apache_org_v1_Traits[Traits]*
|


list of traits to be executed for all the Integration/IntegrationKits built from this IntegrationPlatform

|`configuration` +
*xref:#_camel_apache_org_v1_ConfigurationSpec[[\]ConfigurationSpec]*
|


Deprecated:
Use camel trait (camel.properties) to manage properties
Use mount trait (mount.configs) to manage configs
Use mount trait (mount.resources) to manage resources
Use mount trait (mount.volumes) to manage volumes
list of configuration properties to be attached to all the Integration/IntegrationKits built from this IntegrationPlatform

|`kamelet` +
*xref:#_camel_apache_org_v1_IntegrationPlatformKameletSpec[IntegrationPlatformKameletSpec]*
|


configuration to be executed to all Kamelets controlled by this IntegrationPlatform


|===

[#_camel_apache_org_v1_IntegrationPlatformStatus]
=== IntegrationPlatformStatus

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatform, IntegrationPlatform>>

IntegrationPlatformStatus defines the observed state of IntegrationPlatform.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`IntegrationPlatformSpec` +
*xref:#_camel_apache_org_v1_IntegrationPlatformSpec[IntegrationPlatformSpec]*
|(Members of `IntegrationPlatformSpec` are embedded into this type.)




|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this IntegrationPlatform.

|`phase` +
*xref:#_camel_apache_org_v1_IntegrationPlatformPhase[IntegrationPlatformPhase]*
|


defines in what phase the IntegrationPlatform is found

|`conditions` +
*xref:#_camel_apache_org_v1_IntegrationPlatformCondition[[\]IntegrationPlatformCondition]*
|


which are the conditions met (particularly useful when in ERROR phase)

|`version` +
string
|


the Camel K operator version controlling this IntegrationPlatform

|`info` +
map[string]string
|


generic information related to the build of Camel K operator software


|===

[#_camel_apache_org_v1_IntegrationProfileBuildSpec]
=== IntegrationProfileBuildSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfileSpec, IntegrationProfileSpec>>

IntegrationProfileBuildSpec contains profile related build information.
This configuration can be used to tune the behavior of the Integration/IntegrationKit image builds.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`runtimeVersion` +
string
|


the Camel K Runtime dependency version

|`runtimeProvider` +
*xref:#_camel_apache_org_v1_RuntimeProvider[RuntimeProvider]*
|


the runtime used. Likely Camel Quarkus (we used to have main runtime which has been discontinued since version 1.5)

|`baseImage` +
string
|


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 software

|`registry` +
*xref:#_camel_apache_org_v1_RegistrySpec[RegistrySpec]*
|


the image registry used to push/pull Integration images

|`timeout` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#duration-v1-meta[Kubernetes meta/v1.Duration]*
|


how much time to wait before time out the pipeline process

|`maven` +
*xref:#_camel_apache_org_v1_MavenSpec[MavenSpec]*
|


Maven configuration used to build the Camel/Camel-Quarkus applications


|===

[#_camel_apache_org_v1_IntegrationProfileCondition]
=== IntegrationProfileCondition

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfileStatus, IntegrationProfileStatus>>

IntegrationProfileCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_IntegrationProfileConditionType[IntegrationProfileConditionType]*
|


Type of integration condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.


|===

[#_camel_apache_org_v1_IntegrationProfileConditionType]
=== IntegrationProfileConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfileCondition, IntegrationProfileCondition>>

IntegrationProfileConditionType defines the type of condition.


[#_camel_apache_org_v1_IntegrationProfileKameletSpec]
=== IntegrationProfileKameletSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfileSpec, IntegrationProfileSpec>>

IntegrationProfileKameletSpec define the behavior for all the Kamelets controller by the IntegrationProfile.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`repositories` +
*xref:#_camel_apache_org_v1_KameletRepositorySpec[[\]KameletRepositorySpec]*
|


remote repository used to retrieve Kamelet catalog


|===

[#_camel_apache_org_v1_IntegrationProfilePhase]
=== IntegrationProfilePhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfileStatus, IntegrationProfileStatus>>

IntegrationProfilePhase is the phase of an IntegrationProfile.


[#_camel_apache_org_v1_IntegrationProfileSpec]
=== IntegrationProfileSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfile, IntegrationProfile>>
* <<#_camel_apache_org_v1_IntegrationProfileStatus, IntegrationProfileStatus>>

IntegrationProfileSpec applies user defined settings to the IntegrationProfile.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`build` +
*xref:#_camel_apache_org_v1_IntegrationProfileBuildSpec[IntegrationProfileBuildSpec]*
|


specify how to build the Integration/IntegrationKits

|`traits` +
*xref:#_camel_apache_org_v1_Traits[Traits]*
|


list of traits to be executed for all the Integration/IntegrationKits built from this IntegrationProfile

|`kamelet` +
*xref:#_camel_apache_org_v1_IntegrationProfileKameletSpec[IntegrationProfileKameletSpec]*
|


configuration to be executed to all Kamelets controlled by this IntegrationProfile


|===

[#_camel_apache_org_v1_IntegrationProfileStatus]
=== IntegrationProfileStatus

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationProfile, IntegrationProfile>>

IntegrationProfileStatus defines the observed state of IntegrationProfile.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`IntegrationProfileSpec` +
*xref:#_camel_apache_org_v1_IntegrationProfileSpec[IntegrationProfileSpec]*
|(Members of `IntegrationProfileSpec` are embedded into this type.)




|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this IntegrationProfile.

|`phase` +
*xref:#_camel_apache_org_v1_IntegrationProfilePhase[IntegrationProfilePhase]*
|


defines in what phase the IntegrationProfile is found

|`conditions` +
*xref:#_camel_apache_org_v1_IntegrationProfileCondition[[\]IntegrationProfileCondition]*
|


which are the conditions met (particularly useful when in ERROR phase)


|===

[#_camel_apache_org_v1_IntegrationSpec]
=== IntegrationSpec

*Appears on:*

* <<#_camel_apache_org_v1_Integration, Integration>>
* <<#_camel_apache_org_v1_PipeSpec, PipeSpec>>

IntegrationSpec specifies the configuration of an Integration.
The Integration will be watched by the operator which will be in charge to run the related application, according to the configuration specified.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`replicas` +
int32
|


the number of `Pods` needed for the running Integration

|`sources` +
*xref:#_camel_apache_org_v1_SourceSpec[[\]SourceSpec]*
|


the sources which contain the Camel routes to run

|`git` +
*xref:#_camel_apache_org_v1_GitConfigSpec[GitConfigSpec]*
|


the configuration of the project to build on Git

|`flows` +
*xref:#_camel_apache_org_v1_Flow[[\]Flow]*
|


a source in YAML DSL language which contain the routes to run

|`integrationKit` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectreference-v1-core[Kubernetes core/v1.ObjectReference]*
|


the reference of the `IntegrationKit` which is used for this Integration

|`dependencies` +
[]string
|


the list of Camel or Maven dependencies required by the Integration

|`profile` +
*xref:#_camel_apache_org_v1_TraitProfile[TraitProfile]*
|


the profile needed to run this Integration

|`traits` +
*xref:#_camel_apache_org_v1_Traits[Traits]*
|


the traits needed to run this Integration

|`template` +
*xref:#_camel_apache_org_v1_PodSpecTemplate[PodSpecTemplate]*
|


Pod template customization
Deprecated:
Use container, init-containers or owner traits instead

|`configuration` +
*xref:#_camel_apache_org_v1_ConfigurationSpec[[\]ConfigurationSpec]*
|


Deprecated:
Use camel trait (camel.properties) to manage properties
Use mount trait (mount.configs) to manage configs
Use mount trait (mount.resources) to manage resources
Use mount trait (mount.volumes) to manage volumes

|`repositories` +
[]string
|


additional Maven repositories to be used

|`serviceAccountName` +
string
|


custom SA to use for the Integration


|===

[#_camel_apache_org_v1_IntegrationStatus]
=== IntegrationStatus

*Appears on:*

* <<#_camel_apache_org_v1_Integration, Integration>>

IntegrationStatus defines the observed state of Integration.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this Integration.

|`phase` +
*xref:#_camel_apache_org_v1_IntegrationPhase[IntegrationPhase]*
|


the actual phase

|`digest` +
string
|


the digest calculated for this Integration

|`image` +
string
|


the container image used

|`jar` +
string
|


the Java jar dependency to execute (if available)

|`dependencies` +
[]string
|


a list of dependencies needed by the application

|`profile` +
*xref:#_camel_apache_org_v1_TraitProfile[TraitProfile]*
|


the profile needed to run this Integration

|`traits` +
*xref:#_camel_apache_org_v1_Traits[Traits]*
|


the traits executed for the Integration

|`integrationKit` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#objectreference-v1-core[Kubernetes core/v1.ObjectReference]*
|


the reference of the `IntegrationKit` which is used for this Integration

|`platform` +
string
|


The IntegrationPlatform watching this Integration

|`generatedSources` +
*xref:#_camel_apache_org_v1_SourceSpec[[\]SourceSpec]*
|


a list of sources generated for this Integration

|`runtimeVersion` +
string
|


the runtime version targeted for this Integration

|`runtimeProvider` +
*xref:#_camel_apache_org_v1_RuntimeProvider[RuntimeProvider]*
|


the runtime provider targeted for this Integration

|`catalog` +
*xref:#_camel_apache_org_v1_Catalog[Catalog]*
|


the catalog used to build/operate the Integration.

|`configuration` +
*xref:#_camel_apache_org_v1_ConfigurationSpec[[\]ConfigurationSpec]*
|


Deprecated:
a list of configuration specification

|`conditions` +
*xref:#_camel_apache_org_v1_IntegrationCondition[[\]IntegrationCondition]*
|


a list of events happened for the Integration

|`version` +
string
|


the operator version

|`replicas` +
int32
|


the number of replicas

|`selector` +
string
|


label selector

|`capabilities` +
[]string
|


features offered by the Integration

|`lastInitTimestamp` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


the timestamp representing the last time when this integration was initialized.

|`lastDeploymentTimestamp` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


the timestamp representing the last time when this integration was deployed.


|===

[#_camel_apache_org_v1_JSON]
=== JSON

*Appears on:*

* <<#_camel_apache_org_v1_JSONSchemaProp, JSONSchemaProp>>
* <<#_camel_apache_org_v1_JSONSchemaProps, JSONSchemaProps>>

JSON represents any valid JSON value.
These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_JSONSchemaProp]
=== JSONSchemaProp

*Appears on:*

* <<#_camel_apache_org_v1_JSONSchemaProps, JSONSchemaProps>>



[cols="2,2a",options="header"]
|===
|Field
|Description

|`id` +
string
|




|`deprecated` +
bool
|




|`description` +
string
|




|`type` +
string
|




|`format` +
string
|


format is an OpenAPI v3 format string. Unknown formats are ignored. The following formats are validated:

- bsonobjectid: a bson object ID, i.e. a 24 characters hex string
- uri: an URI as parsed by Golang net/url.ParseRequestURI
- email: an email address as parsed by Golang net/mail.ParseAddress
- hostname: a valid representation for an Internet host name, as defined by RFC 1034, section 3.1 [RFC1034].
- ipv4: an IPv4 IP as parsed by Golang net.ParseIP
- ipv6: an IPv6 IP as parsed by Golang net.ParseIP
- cidr: a CIDR as parsed by Golang net.ParseCIDR
- mac: a MAC address as parsed by Golang net.ParseMAC
- uuid: an UUID that allows uppercase defined by the regex (?i)^[0-9a-f]\{8}-?[0-9a-f]\{4}-?[0-9a-f]\{4}-?[0-9a-f]\{4}-?[0-9a-f]\{12}$
- uuid3: an UUID3 that allows uppercase defined by the regex (?i)^[0-9a-f]\{8}-?[0-9a-f]\{4}-?3[0-9a-f]\{3}-?[0-9a-f]\{4}-?[0-9a-f]\{12}$
- uuid4: an UUID4 that allows uppercase defined by the regex (?i)^[0-9a-f]\{8}-?[0-9a-f]\{4}-?4[0-9a-f]\{3}-?[89ab][0-9a-f]\{3}-?[0-9a-f]\{12}$
- uuid5: an UUID5 that allows uppercase defined by the regex (?i)^[0-9a-f]\{8}-?[0-9a-f]\{4}-?5[0-9a-f]\{3}-?[89ab][0-9a-f]\{3}-?[0-9a-f]\{12}$
- isbn: an ISBN10 or ISBN13 number string like "0321751043" or "978-0321751041"
- isbn10: an ISBN10 number string like "0321751043"
- isbn13: an ISBN13 number string like "978-0321751041"
- creditcard: a credit card number defined by the regex ^(?:4[0-9]\{12}(?:[0-9]\{3})?{vbar}5[1-5][0-9]\{14}{vbar}6(?:011{vbar}5[0-9][0-9])[0-9]\{12}{vbar}3[47][0-9]\{13}{vbar}3(?:0[0-5]{vbar}[68][0-9])[0-9]\{11}{vbar}(?:2131{vbar}1800{vbar}35\\d\{3})\\d\{11})$ with any non digit characters mixed in
- ssn: a U.S. social security number following the regex ^\\d\{3}[- ]?\\d\{2}[- ]?\\d\{4}$
- hexcolor: an hexadecimal color code like "\#FFFFFF" following the regex ^#?([0-9a-fA-F]\{3}{vbar}[0-9a-fA-F]\{6})$
- rgbcolor: an RGB color code like rgb like "rgb(255,255,255)"
- byte: base64 encoded binary data
- password: any kind of string
- date: a date string like "2006-01-02" as defined by full-date in RFC3339
- duration: a duration string like "22 ns" as parsed by Golang time.ParseDuration or compatible with Scala duration format
- datetime: a date time string like "2014-12-15T19:30:20.000Z" as defined by date-time in RFC3339.

|`title` +
string
|




|`default` +
*xref:#_camel_apache_org_v1_JSON[JSON]*
|


default is a default value for undefined object fields.

|`maximum` +
encoding/json.Number
|




|`exclusiveMaximum` +
bool
|




|`minimum` +
encoding/json.Number
|




|`exclusiveMinimum` +
bool
|




|`maxLength` +
int64
|




|`minLength` +
int64
|




|`pattern` +
string
|




|`maxItems` +
int64
|




|`minItems` +
int64
|




|`uniqueItems` +
bool
|




|`maxProperties` +
int64
|




|`minProperties` +
int64
|




|`multipleOf` +
encoding/json.Number
|




|`enum` +
*xref:#_camel_apache_org_v1_JSON[[\]JSON]*
|




|`example` +
*xref:#_camel_apache_org_v1_JSON[JSON]*
|




|`nullable` +
bool
|




|`x-descriptors` +
[]string
|


XDescriptors is a list of extended properties that trigger a custom behavior in external systems


|===

[#_camel_apache_org_v1_JSONSchemaProps]
=== JSONSchemaProps

*Appears on:*

* <<#_camel_apache_org_v1_DataTypeSpec, DataTypeSpec>>
* <<#_camel_apache_org_v1_EventTypeSpec, EventTypeSpec>>
* <<#_camel_apache_org_v1_KameletSpecBase, KameletSpecBase>>

JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-schema.org/).

[cols="2,2a",options="header"]
|===
|Field
|Description

|`id` +
string
|




|`description` +
string
|




|`title` +
string
|




|`properties` +
*xref:#_camel_apache_org_v1_JSONSchemaProp[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.JSONSchemaProp]*
|




|`required` +
[]string
|




|`example` +
*xref:#_camel_apache_org_v1_JSON[JSON]*
|




|`externalDocs` +
*xref:#_camel_apache_org_v1_ExternalDocumentation[ExternalDocumentation]*
|




|`$schema` +
*xref:#_camel_apache_org_v1_JSONSchemaURL[JSONSchemaURL]*
|




|`type` +
string
|





|===

[#_camel_apache_org_v1_JSONSchemaURL]
=== JSONSchemaURL(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_JSONSchemaProps, JSONSchemaProps>>

JSONSchemaURL represents a schema url.


[#_camel_apache_org_v1_JibTask]
=== JibTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

JibTask is used to configure Jib.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`PublishTask` +
*xref:#_camel_apache_org_v1_PublishTask[PublishTask]*
|(Members of `PublishTask` are embedded into this type.)





|===

[#_camel_apache_org_v1_KameletCondition]
=== KameletCondition

*Appears on:*

* <<#_camel_apache_org_v1_KameletStatus, KameletStatus>>

KameletCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_KameletConditionType[KameletConditionType]*
|


Type of kamelet condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human-readable message indicating details about the transition.


|===

[#_camel_apache_org_v1_KameletConditionType]
=== KameletConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_KameletCondition, KameletCondition>>

KameletConditionType --.


[#_camel_apache_org_v1_KameletPhase]
=== KameletPhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_KameletStatus, KameletStatus>>

KameletPhase --.


[#_camel_apache_org_v1_KameletProperty]
=== KameletProperty

*Appears on:*

* <<#_camel_apache_org_v1_KameletStatus, KameletStatus>>

KameletProperty specify the behavior of a property in a Kamelet.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`name` +
string
|


the name of the property

|`default` +
string
|


the default value of the property (if any)


|===

[#_camel_apache_org_v1_KameletRepositorySpec]
=== KameletRepositorySpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformKameletSpec, IntegrationPlatformKameletSpec>>
* <<#_camel_apache_org_v1_IntegrationProfileKameletSpec, IntegrationProfileKameletSpec>>

KameletRepositorySpec defines the location of the Kamelet catalog to use.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`uri` +
string
|


the remote repository in the format github:ORG/REPO/PATH_TO_KAMELETS_FOLDER


|===

[#_camel_apache_org_v1_KameletSpec]
=== KameletSpec

*Appears on:*

* <<#_camel_apache_org_v1_Kamelet, Kamelet>>

KameletSpec specifies the configuration required to execute a Kamelet.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`KameletSpecBase` +
*xref:#_camel_apache_org_v1_KameletSpecBase[KameletSpecBase]*
|(Members of `KameletSpecBase` are embedded into this type.)




|`versions` +
*xref:#_camel_apache_org_v1_KameletSpecBase[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.KameletSpecBase]*
|


the optional versions available for this Kamelet. This field may not be taken in account by Camel core and is meant to support
any user defined versioning model on cluster only. If the user wants to use any given version, she must materialize a file with the given version spec
as the `main` Kamelet spec on the runtime.


|===

[#_camel_apache_org_v1_KameletSpecBase]
=== KameletSpecBase

*Appears on:*

* <<#_camel_apache_org_v1_KameletSpec, KameletSpec>>

KameletSpecBase specifies the base configuration of a Kamelet.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`definition` +
*xref:#_camel_apache_org_v1_JSONSchemaProps[JSONSchemaProps]*
|


defines the formal configuration of the Kamelet

|`sources` +
*xref:#_camel_apache_org_v1_SourceSpec[[\]SourceSpec]*
|


sources in any Camel DSL supported

|`template` +
*xref:#_camel_apache_org_v1_Template[Template]*
|


the main source in YAML DSL

|`types` +
*xref:#_camel_apache_org_v1_EventTypeSpec[map[github.com/apache/camel-k/v2/pkg/apis/camel/v1.TypeSlot\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.EventTypeSpec]*
|


data specification types for the events consumed/produced by the Kamelet
Deprecated: In favor of using DataTypes

|`dataTypes` +
*xref:#_camel_apache_org_v1_DataTypesSpec[map[github.com/apache/camel-k/v2/pkg/apis/camel/v1.TypeSlot\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.DataTypesSpec]*
|


data specification types for the events consumed/produced by the Kamelet

|`dependencies` +
[]string
|


Camel dependencies needed by the Kamelet


|===

[#_camel_apache_org_v1_KameletStatus]
=== KameletStatus

*Appears on:*

* <<#_camel_apache_org_v1_Kamelet, Kamelet>>

KameletStatus defines the observed state of Kamelet.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this Kamelet.

|`phase` +
*xref:#_camel_apache_org_v1_KameletPhase[KameletPhase]*
|


Phase --

|`conditions` +
*xref:#_camel_apache_org_v1_KameletCondition[[\]KameletCondition]*
|


Conditions --

|`properties` +
*xref:#_camel_apache_org_v1_KameletProperty[[\]KameletProperty]*
|


Properties --


|===

[#_camel_apache_org_v1_KanikoTask]
=== KanikoTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

KanikoTask is used to configure Kaniko.
Deprecated: no longer in use.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`PublishTask` +
*xref:#_camel_apache_org_v1_PublishTask[PublishTask]*
|(Members of `PublishTask` are embedded into this type.)




|`verbose` +
bool
|


log more information

|`cache` +
*xref:#_camel_apache_org_v1_KanikoTaskCache[KanikoTaskCache]*
|


use a cache

|`executorImage` +
string
|


docker image to use


|===

[#_camel_apache_org_v1_KanikoTaskCache]
=== KanikoTaskCache

*Appears on:*

* <<#_camel_apache_org_v1_KanikoTask, KanikoTask>>

KanikoTaskCache is used to configure Kaniko cache.
Deprecated: no longer in use.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`enabled` +
bool
|


true if a cache is enabled

|`persistentVolumeClaim` +
string
|


the PVC used to store the cache


|===

[#_camel_apache_org_v1_Language]
=== Language(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_SourceSpec, SourceSpec>>

Language represents a supported language (Camel DSL).


[#_camel_apache_org_v1_MavenArtifact]
=== MavenArtifact

*Appears on:*

* <<#_camel_apache_org_v1_CamelArtifactDependency, CamelArtifactDependency>>
* <<#_camel_apache_org_v1_CamelLoader, CamelLoader>>
* <<#_camel_apache_org_v1_Capability, Capability>>
* <<#_camel_apache_org_v1_MavenSpec, MavenSpec>>
* <<#_camel_apache_org_v1_RuntimeSpec, RuntimeSpec>>

MavenArtifact defines a GAV (Group:Artifact:Type:Version:Classifier) Maven artifact.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`groupId` +
string
|


Maven Group

|`artifactId` +
string
|


Maven Artifact

|`type` +
string
|


Maven Type

|`version` +
string
|


Maven Version

|`classifier` +
string
|


Maven Classifier


|===

[#_camel_apache_org_v1_MavenBuildSpec]
=== MavenBuildSpec

*Appears on:*

* <<#_camel_apache_org_v1_BuilderTask, BuilderTask>>

MavenBuildSpec defines the Maven configuration plus additional repositories to use.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`MavenSpec` +
*xref:#_camel_apache_org_v1_MavenSpec[MavenSpec]*
|(Members of `MavenSpec` are embedded into this type.)


base Maven specification

|`repositories` +
*xref:#_camel_apache_org_v1_Repository[[\]Repository]*
|


additional repositories

|`servers` +
*xref:#_camel_apache_org_v1_Server[[\]Server]*
|


Servers (auth)


|===

[#_camel_apache_org_v1_MavenSpec]
=== MavenSpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformBuildSpec, IntegrationPlatformBuildSpec>>
* <<#_camel_apache_org_v1_IntegrationProfileBuildSpec, IntegrationProfileBuildSpec>>
* <<#_camel_apache_org_v1_MavenBuildSpec, MavenBuildSpec>>

MavenSpec --.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`localRepository` +
string
|


The path of the local Maven repository.

|`properties` +
map[string]string
|


The Maven properties.

|`profiles` +
*xref:#_camel_apache_org_v1_ValueSource[[\]ValueSource]*
|


A reference to the ConfigMap or Secret key that contains
the Maven profile.

|`settings` +
*xref:#_camel_apache_org_v1_ValueSource[ValueSource]*
|


A reference to the ConfigMap or Secret key that contains
the Maven settings.

|`settingsSecurity` +
*xref:#_camel_apache_org_v1_ValueSource[ValueSource]*
|


A reference to the ConfigMap or Secret key that contains
the security of the Maven settings.

|`caSecrets` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#secretkeyselector-v1-core[[\]Kubernetes core/v1.SecretKeySelector]*
|


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.

|`extension` +
*xref:#_camel_apache_org_v1_MavenArtifact[[\]MavenArtifact]*
|


The Maven build extensions.
See https://maven.apache.org/guides/mini/guide-using-extensions.html.

|`cliOptions` +
[]string
|


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.


|===

[#_camel_apache_org_v1_Path]
=== Path

*Appears on:*

* <<#_camel_apache_org_v1_ExtraDirectories, ExtraDirectories>>

Path -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`from` +
string
|




|`into` +
string
|




|`excludes>exclude` +
[]string
|





|===

[#_camel_apache_org_v1_Permission]
=== Permission

*Appears on:*

* <<#_camel_apache_org_v1_ExtraDirectories, ExtraDirectories>>

Permission -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`file` +
string
|




|`mode` +
string
|





|===

[#_camel_apache_org_v1_PipeCondition]
=== PipeCondition

*Appears on:*

* <<#_camel_apache_org_v1_PipeStatus, PipeStatus>>

PipeCondition describes the state of a resource at a certain point.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
*xref:#_camel_apache_org_v1_PipeConditionType[PipeConditionType]*
|


Type of pipe condition.

|`status` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#conditionstatus-v1-core[Kubernetes core/v1.ConditionStatus]*
|


Status of the condition, one of True, False, Unknown.

|`lastUpdateTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


The last time this condition was updated.

|`lastTransitionTime` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#time-v1-meta[Kubernetes meta/v1.Time]*
|


Last time the condition transitioned from one status to another.

|`reason` +
string
|


The reason for the condition's last transition.

|`message` +
string
|


A human readable message indicating details about the transition.

|`pods` +
*xref:#_camel_apache_org_v1_PodCondition[[\]PodCondition]*
|


Pods collect health and conditions information from the owned PODs


|===

[#_camel_apache_org_v1_PipeConditionType]
=== PipeConditionType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_PipeCondition, PipeCondition>>

PipeConditionType --.


[#_camel_apache_org_v1_PipePhase]
=== PipePhase(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_PipeStatus, PipeStatus>>

PipePhase --.


[#_camel_apache_org_v1_PipeSpec]
=== PipeSpec

*Appears on:*

* <<#_camel_apache_org_v1_Pipe, Pipe>>

PipeSpec defines the binding between a source and a sink. It can include custom parameters and additional intermediate steps and error handling.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`integration` +
*xref:#_camel_apache_org_v1_IntegrationSpec[IntegrationSpec]*
|


Integration is an optional integration used to specify custom parameters
Deprecated don't use this. Use trait annotations if you need to change any cluster configuration.

|`source` +
*xref:#_camel_apache_org_v1_Endpoint[Endpoint]*
|


Source is the starting point of the integration defined by this Pipe

|`sink` +
*xref:#_camel_apache_org_v1_Endpoint[Endpoint]*
|


Sink is the destination of the integration defined by this Pipe

|`errorHandler` +
*xref:#_camel_apache_org_v1_ErrorHandlerSpec[ErrorHandlerSpec]*
|


ErrorHandler is an optional handler called upon an error occurring in the integration

|`traits` +
*xref:#_camel_apache_org_v1_Traits[Traits]*
|


the traits needed to customize the depending Integration

|`steps` +
*xref:#_camel_apache_org_v1_Endpoint[[\]Endpoint]*
|


Steps contains an optional list of intermediate steps that are executed between the Source and the Sink

|`replicas` +
int32
|


Replicas is the number of desired replicas for the Pipe

|`serviceAccountName` +
string
|


Custom SA to use for the Pipe

|`dependencies` +
[]string
|


the list of Camel or Maven dependencies required by the Pipe


|===

[#_camel_apache_org_v1_PipeStatus]
=== PipeStatus

*Appears on:*

* <<#_camel_apache_org_v1_Pipe, Pipe>>

PipeStatus specify the status of a Pipe.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`observedGeneration` +
int64
|


ObservedGeneration is the most recent generation observed for this Pipe.

|`phase` +
*xref:#_camel_apache_org_v1_PipePhase[PipePhase]*
|


Phase --

|`conditions` +
*xref:#_camel_apache_org_v1_PipeCondition[[\]PipeCondition]*
|


Conditions --

|`replicas` +
int32
|


Replicas is the number of actual replicas of the pipe

|`selector` +
string
|


Selector allows to identify pods belonging to the pipe


|===

[#_camel_apache_org_v1_PluginConfiguration]
=== PluginConfiguration

PluginConfiguration see link:https://maven.apache.org/settings.html[Maven settings].

[cols="2,2a",options="header"]
|===
|Field
|Description

|`container` +
*xref:#_camel_apache_org_v1_Container[Container]*
|




|`allowInsecureRegistries` +
string
|




|`extraDirectories` +
*xref:#_camel_apache_org_v1_ExtraDirectories[ExtraDirectories]*
|




|`pluginExtensions` +
*xref:#_camel_apache_org_v1_PluginExtensions[PluginExtensions]*
|





|===

[#_camel_apache_org_v1_PluginExtension]
=== PluginExtension

*Appears on:*

* <<#_camel_apache_org_v1_PluginExtensions, PluginExtensions>>

PluginExtension -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`implementation` +
string
|




|`configuration` +
*xref:#_camel_apache_org_v1_PluginExtensionConfiguration[PluginExtensionConfiguration]*
|





|===

[#_camel_apache_org_v1_PluginExtensionConfiguration]
=== PluginExtensionConfiguration

*Appears on:*

* <<#_camel_apache_org_v1_PluginExtension, PluginExtension>>

PluginExtensionConfiguration -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`filters>Filter` +
*xref:#_camel_apache_org_v1_Filter[[\]Filter]*
|




|`_implementation` +
string
|





|===

[#_camel_apache_org_v1_PluginExtensions]
=== PluginExtensions

*Appears on:*

* <<#_camel_apache_org_v1_PluginConfiguration, PluginConfiguration>>

PluginExtensions -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`pluginExtension` +
*xref:#_camel_apache_org_v1_PluginExtension[PluginExtension]*
|





|===

[#_camel_apache_org_v1_PluginProperties]
=== PluginProperties(`map[string]github.com/apache/camel-k/v2/pkg/apis/camel/v1.StringOrProperties` alias)

PluginProperties -- .


[#_camel_apache_org_v1_PodCondition]
=== PodCondition

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationCondition, IntegrationCondition>>
* <<#_camel_apache_org_v1_PipeCondition, PipeCondition>>



[cols="2,2a",options="header"]
|===
|Field
|Description

|`name` +
string
|




|`condition` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#podcondition-v1-core[Kubernetes core/v1.PodCondition]*
|




|`health` +
*xref:#_camel_apache_org_v1_HealthCheckResponse[[\]HealthCheckResponse]*
|





|===

[#_camel_apache_org_v1_PodSpec]
=== PodSpec

*Appears on:*

* <<#_camel_apache_org_v1_PodSpecTemplate, PodSpecTemplate>>

PodSpec defines a group of Kubernetes resources.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`automountServiceAccountToken` +
bool
|


AutomountServiceAccountToken

|`volumes` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#volume-v1-core[[\]Kubernetes core/v1.Volume]*
|


Volumes

|`initContainers` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#container-v1-core[[\]Kubernetes core/v1.Container]*
|


InitContainers

|`containers` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#container-v1-core[[\]Kubernetes core/v1.Container]*
|


Containers

|`ephemeralContainers` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#ephemeralcontainer-v1-core[[\]Kubernetes core/v1.EphemeralContainer]*
|


EphemeralContainers

|`restartPolicy` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#restartpolicy-v1-core[Kubernetes core/v1.RestartPolicy]*
|


RestartPolicy

|`terminationGracePeriodSeconds` +
int64
|


TerminationGracePeriodSeconds

|`activeDeadlineSeconds` +
int64
|


ActiveDeadlineSeconds

|`dnsPolicy` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#dnspolicy-v1-core[Kubernetes core/v1.DNSPolicy]*
|


DNSPolicy

|`nodeSelector` +
map[string]string
|


NodeSelector

|`topologySpreadConstraints` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#topologyspreadconstraint-v1-core[[\]Kubernetes core/v1.TopologySpreadConstraint]*
|


TopologySpreadConstraints

|`securityContext` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#podsecuritycontext-v1-core[Kubernetes core/v1.PodSecurityContext]*
|


PodSecurityContext


|===

[#_camel_apache_org_v1_PodSpecTemplate]
=== PodSpecTemplate

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>

PodSpecTemplate represent a template used to deploy an Integration `Pod`.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`spec` +
*xref:#_camel_apache_org_v1_PodSpec[PodSpec]*
|


the specification


|===

[#_camel_apache_org_v1_Properties]
=== Properties(`map[string]string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_Server, Server>>
* <<#_camel_apache_org_v1_StringOrProperties, StringOrProperties>>

Properties -- .


[#_camel_apache_org_v1_PublishTask]
=== PublishTask

*Appears on:*

* <<#_camel_apache_org_v1_BuildahTask, BuildahTask>>
* <<#_camel_apache_org_v1_JibTask, JibTask>>
* <<#_camel_apache_org_v1_KanikoTask, KanikoTask>>
* <<#_camel_apache_org_v1_S2iTask, S2iTask>>
* <<#_camel_apache_org_v1_SpectrumTask, SpectrumTask>>

PublishTask image publish configuration.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`contextDir` +
string
|


can be useful to share info with other tasks

|`baseImage` +
string
|


base image layer

|`image` +
string
|


final image name

|`registry` +
*xref:#_camel_apache_org_v1_RegistrySpec[RegistrySpec]*
|


where to publish the final image


|===

[#_camel_apache_org_v1_RawMessage]
=== RawMessage(`[]byte` alias)

*Appears on:*

* <<#_camel_apache_org_v1_AddonTrait, AddonTrait>>
* <<#_camel_apache_org_v1_BeanProperties, BeanProperties>>
* <<#_camel_apache_org_v1_EndpointProperties, EndpointProperties>>
* <<#_camel_apache_org_v1_ErrorHandlerParameters, ErrorHandlerParameters>>
* <<#_camel_apache_org_v1_ErrorHandlerSpec, ErrorHandlerSpec>>
* <<#_camel_apache_org_v1_Flow, Flow>>
* <<#_camel_apache_org_v1_HealthCheckResponse, HealthCheckResponse>>
* <<#_camel_apache_org_v1_JSON, JSON>>
* <<#_camel_apache_org_v1_Template, Template>>
* <<#_camel_apache_org_v1_TraitConfiguration, TraitConfiguration>>

RawMessage is a raw encoded JSON value.
It implements Marshaler and Unmarshaler and can
be used to delay JSON decoding or precompute a JSON encoding.


[#_camel_apache_org_v1_RegistrySpec]
=== RegistrySpec

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformBuildSpec, IntegrationPlatformBuildSpec>>
* <<#_camel_apache_org_v1_IntegrationProfileBuildSpec, IntegrationProfileBuildSpec>>
* <<#_camel_apache_org_v1_PublishTask, PublishTask>>

RegistrySpec provides the configuration for the container registry.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`insecure` +
bool
|


if the container registry is insecure (ie, http only)

|`address` +
string
|


the URI to access

|`secret` +
string
|


the secret where credentials are stored

|`ca` +
string
|


the configmap which stores the Certificate Authority

|`organization` +
string
|


the registry organization


|===

[#_camel_apache_org_v1_Repository]
=== Repository

*Appears on:*

* <<#_camel_apache_org_v1_MavenBuildSpec, MavenBuildSpec>>

Repository defines a Maven repository.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`id` +
string
|


identifies the repository

|`name` +
string
|


name of the repository

|`url` +
string
|


location of the repository

|`snapshots` +
*xref:#_camel_apache_org_v1_RepositoryPolicy[RepositoryPolicy]*
|


can use snapshot

|`releases` +
*xref:#_camel_apache_org_v1_RepositoryPolicy[RepositoryPolicy]*
|


can use stable releases


|===

[#_camel_apache_org_v1_RepositoryPolicy]
=== RepositoryPolicy

*Appears on:*

* <<#_camel_apache_org_v1_Repository, Repository>>

RepositoryPolicy defines the policy associated to a Maven repository.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`enabled` +
bool
|


is the policy activated or not

|`updatePolicy` +
string
|


This element specifies how often updates should attempt to occur.
Maven will compare the local POM's timestamp (stored in a repository's maven-metadata file) to the remote.
The choices are: `always`, `daily` (default), `interval:X` (where X is an integer in minutes) or `never`

|`checksumPolicy` +
string
|


When Maven deploys files to the repository, it also deploys corresponding checksum files.
Your options are to `ignore`, `fail`, or `warn` on missing or incorrect checksums.


|===

[#_camel_apache_org_v1_ResourceCondition]
=== ResourceCondition

ResourceCondition is a common type for all conditions.


[#_camel_apache_org_v1_RuntimeProvider]
=== RuntimeProvider(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_Catalog, Catalog>>
* <<#_camel_apache_org_v1_IntegrationKitStatus, IntegrationKitStatus>>
* <<#_camel_apache_org_v1_IntegrationPlatformBuildSpec, IntegrationPlatformBuildSpec>>
* <<#_camel_apache_org_v1_IntegrationProfileBuildSpec, IntegrationProfileBuildSpec>>
* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>
* <<#_camel_apache_org_v1_RuntimeSpec, RuntimeSpec>>

RuntimeProvider is the provider chosen for the runtime.


[#_camel_apache_org_v1_RuntimeSpec]
=== RuntimeSpec

*Appears on:*

* <<#_camel_apache_org_v1_BuilderTask, BuilderTask>>
* <<#_camel_apache_org_v1_CamelCatalogSpec, CamelCatalogSpec>>

RuntimeSpec represents the configuration for the Java runtime in charge to execute the Camel application.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`version` +
string
|


Camel K Runtime version

|`provider` +
*xref:#_camel_apache_org_v1_RuntimeProvider[RuntimeProvider]*
|


Camel main application provider, ie, Camel Quarkus

|`applicationClass` +
string
|


application entry point (main) to be executed

|`dependencies` +
*xref:#_camel_apache_org_v1_MavenArtifact[[\]MavenArtifact]*
|


list of dependencies needed to run the application

|`metadata` +
map[string]string
|


set of metadata

|`capabilities` +
*xref:#_camel_apache_org_v1_Capability[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.Capability]*
|


features offered by this runtime


|===

[#_camel_apache_org_v1_S2iTask]
=== S2iTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

S2iTask is used to configure S2I.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`PublishTask` +
*xref:#_camel_apache_org_v1_PublishTask[PublishTask]*
|(Members of `PublishTask` are embedded into this type.)




|`tag` +
string
|


used by the ImageStream


|===

[#_camel_apache_org_v1_Server]
=== Server

*Appears on:*

* <<#_camel_apache_org_v1_MavenBuildSpec, MavenBuildSpec>>

Server see link:https://maven.apache.org/settings.html[Maven settings].

[cols="2,2a",options="header"]
|===
|Field
|Description

|`-` +
encoding/xml.Name
|




|`id` +
string
|




|`username` +
string
|




|`password` +
string
|




|`configuration` +
*xref:#_camel_apache_org_v1_Properties[Properties]*
|





|===

[#_camel_apache_org_v1_SourceSpec]
=== SourceSpec

*Appears on:*

* <<#_camel_apache_org_v1_BuilderTask, BuilderTask>>
* <<#_camel_apache_org_v1_IntegrationKitSpec, IntegrationKitSpec>>
* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>
* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>
* <<#_camel_apache_org_v1_KameletSpecBase, KameletSpecBase>>

SourceSpec defines the configuration for one or more routes to be executed in a certain Camel DSL language.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`DataSpec` +
*xref:#_camel_apache_org_v1_DataSpec[DataSpec]*
|(Members of `DataSpec` are embedded into this type.)


contains configuration related to the source code

|`language` +
*xref:#_camel_apache_org_v1_Language[Language]*
|


specify which is the language (Camel DSL) used to interpret this source code

|`loader` +
string
|


Loader is an optional id of the org.apache.camel.k.RoutesLoader that will
interpret this source at runtime

|`interceptors` +
[]string
|


Interceptors are optional identifiers the org.apache.camel.k.RoutesLoader
uses to pre/post process sources
Deprecated: no longer in use.

|`type` +
*xref:#_camel_apache_org_v1_SourceType[SourceType]*
|


Type defines the kind of source described by this object

|`property-names` +
[]string
|


List of property names defined in the source (e.g. if type is "template")

|`from-kamelet` +
bool
|


True if the spec is generated from a Kamelet


|===

[#_camel_apache_org_v1_SourceType]
=== SourceType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_SourceSpec, SourceSpec>>

SourceType represents an available source type.


[#_camel_apache_org_v1_SpectrumTask]
=== SpectrumTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

SpectrumTask is used to configure Spectrum.
Deprecated: no longer in use.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`PublishTask` +
*xref:#_camel_apache_org_v1_PublishTask[PublishTask]*
|(Members of `PublishTask` are embedded into this type.)





|===

[#_camel_apache_org_v1_StringOrProperties]
=== StringOrProperties

StringOrProperties -- .

[cols="2,2a",options="header"]
|===
|Field
|Description

|`-` +
string
|




|`properties` +
*xref:#_camel_apache_org_v1_Properties[Properties]*
|





|===

[#_camel_apache_org_v1_Task]
=== Task

*Appears on:*

* <<#_camel_apache_org_v1_BuildSpec, BuildSpec>>

Task represents the abstract task. Only one of the task should be configured to represent the specific task chosen.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`builder` +
*xref:#_camel_apache_org_v1_BuilderTask[BuilderTask]*
|


a BuilderTask, used to generate and build the project

|`custom` +
*xref:#_camel_apache_org_v1_UserTask[UserTask]*
|


User customizable task execution. These are executed after the build and before the package task.

|`package` +
*xref:#_camel_apache_org_v1_BuilderTask[BuilderTask]*
|


Application pre publishing
a PackageTask, used to package the project

|`buildah` +
*xref:#_camel_apache_org_v1_BuildahTask[BuildahTask]*
|


a BuildahTask, for Buildah strategy
Deprecated: use jib or a custom publishing strategy instead

|`kaniko` +
*xref:#_camel_apache_org_v1_KanikoTask[KanikoTask]*
|


a KanikoTask, for Kaniko strategy
Deprecated: use jib or a custom publishing strategy instead

|`spectrum` +
*xref:#_camel_apache_org_v1_SpectrumTask[SpectrumTask]*
|


a SpectrumTask, for Spectrum strategy
Deprecated: use jib or a custom publishing strategy instead

|`s2i` +
*xref:#_camel_apache_org_v1_S2iTask[S2iTask]*
|


a S2iTask, for S2I strategy
Deprecated: use jib or a custom publishing strategy instead

|`jib` +
*xref:#_camel_apache_org_v1_JibTask[JibTask]*
|


a JibTask, for Jib strategy


|===

[#_camel_apache_org_v1_Template]
=== Template

*Appears on:*

* <<#_camel_apache_org_v1_KameletSpecBase, KameletSpecBase>>

Template is an unstructured object representing a Kamelet template in YAML/JSON DSL.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)


an unstructured raw message


|===

[#_camel_apache_org_v1_TraitConfiguration]
=== TraitConfiguration

*Appears on:*

* <<#_camel_apache_org_v1_TraitSpec, TraitSpec>>

TraitConfiguration represents the expected configuration for a given trait parameter
Deprecated: superceded by each Trait type, left for backward compatibility.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)


generic raw message, typically a map containing the keys (trait parameters) and the values (either single text or array)


|===

[#_camel_apache_org_v1_TraitProfile]
=== TraitProfile(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitSpec, IntegrationKitSpec>>
* <<#_camel_apache_org_v1_IntegrationPlatformSpec, IntegrationPlatformSpec>>
* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>
* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>

TraitProfile represents lists of traits that are enabled for the specific installation/integration.


[#_camel_apache_org_v1_TraitSpec]
=== TraitSpec

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

A TraitSpec contains the configuration of a trait
Deprecated: superceded by each Trait type, left for backward compatibility.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`configuration` +
*xref:#_camel_apache_org_v1_TraitConfiguration[TraitConfiguration]*
|


TraitConfiguration parameters configuration


|===

[#_camel_apache_org_v1_Traits]
=== Traits

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationPlatformSpec, IntegrationPlatformSpec>>
* <<#_camel_apache_org_v1_IntegrationProfileSpec, IntegrationProfileSpec>>
* <<#_camel_apache_org_v1_IntegrationSpec, IntegrationSpec>>
* <<#_camel_apache_org_v1_IntegrationStatus, IntegrationStatus>>
* <<#_camel_apache_org_v1_PipeSpec, PipeSpec>>

Traits represents the collection of trait configurations.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`affinity` +
*xref:#_camel_apache_org_v1_trait_AffinityTrait[AffinityTrait]*
|


The configuration of Affinity trait

|`builder` +
*xref:#_camel_apache_org_v1_trait_BuilderTrait[BuilderTrait]*
|


The configuration of Builder trait

|`camel` +
*xref:#_camel_apache_org_v1_trait_CamelTrait[CamelTrait]*
|


The configuration of Camel trait

|`container` +
*xref:#_camel_apache_org_v1_trait_ContainerTrait[ContainerTrait]*
|


The configuration of Container trait

|`cron` +
*xref:#_camel_apache_org_v1_trait_CronTrait[CronTrait]*
|


The configuration of Cron trait

|`dependencies` +
*xref:#_camel_apache_org_v1_trait_DependenciesTrait[DependenciesTrait]*
|


The configuration of Dependencies trait

|`deployer` +
*xref:#_camel_apache_org_v1_trait_DeployerTrait[DeployerTrait]*
|


The configuration of Deployer trait

|`deployment` +
*xref:#_camel_apache_org_v1_trait_DeploymentTrait[DeploymentTrait]*
|


The configuration of Deployment trait

|`environment` +
*xref:#_camel_apache_org_v1_trait_EnvironmentTrait[EnvironmentTrait]*
|


The configuration of Environment trait

|`error-handler` +
*xref:#_camel_apache_org_v1_trait_ErrorHandlerTrait[ErrorHandlerTrait]*
|


The configuration of Error Handler trait
Deprecated: no longer in use.

|`gc` +
*xref:#_camel_apache_org_v1_trait_GCTrait[GCTrait]*
|


The configuration of GC trait

|`gitops` +
*xref:#_camel_apache_org_v1_trait_GitOpsTrait[GitOpsTrait]*
|


The configuration of GitOps trait

|`health` +
*xref:#_camel_apache_org_v1_trait_HealthTrait[HealthTrait]*
|


The configuration of Health trait

|`ingress` +
*xref:#_camel_apache_org_v1_trait_IngressTrait[IngressTrait]*
|


The configuration of Ingress trait

|`init-containers` +
*xref:#_camel_apache_org_v1_trait_InitContainersTrait[InitContainersTrait]*
|


The configuration of Init Containers trait

|`istio` +
*xref:#_camel_apache_org_v1_trait_IstioTrait[IstioTrait]*
|


The configuration of Istio trait

|`jolokia` +
*xref:#_camel_apache_org_v1_trait_JolokiaTrait[JolokiaTrait]*
|


The configuration of Jolokia trait
Deprecated: use jvm.agent instead.

|`jvm` +
*xref:#_camel_apache_org_v1_trait_JVMTrait[JVMTrait]*
|


The configuration of JVM trait

|`kamelets` +
*xref:#_camel_apache_org_v1_trait_KameletsTrait[KameletsTrait]*
|


The configuration of Kamelets trait

|`keda` +
*xref:#_camel_apache_org_v1_trait_KedaTrait[KedaTrait]*
|


The configuration of Keda trait

|`knative` +
*xref:#_camel_apache_org_v1_trait_KnativeTrait[KnativeTrait]*
|


The configuration of Knative trait

|`knative-service` +
*xref:#_camel_apache_org_v1_trait_KnativeServiceTrait[KnativeServiceTrait]*
|


The configuration of Knative Service trait

|`logging` +
*xref:#_camel_apache_org_v1_trait_LoggingTrait[LoggingTrait]*
|


The configuration of Logging trait

|`master` +
*xref:#_camel_apache_org_v1_trait_MasterTrait[MasterTrait]*
|


The configuration of Master trait

|`mount` +
*xref:#_camel_apache_org_v1_trait_MountTrait[MountTrait]*
|


The configuration of Mount trait

|`openapi` +
*xref:#_camel_apache_org_v1_trait_OpenAPITrait[OpenAPITrait]*
|


The configuration of OpenAPI trait
Deprecated: no longer in use.

|`owner` +
*xref:#_camel_apache_org_v1_trait_OwnerTrait[OwnerTrait]*
|


The configuration of Owner trait

|`pdb` +
*xref:#_camel_apache_org_v1_trait_PDBTrait[PDBTrait]*
|


The configuration of PDB trait

|`platform` +
*xref:#_camel_apache_org_v1_trait_PlatformTrait[PlatformTrait]*
|


The configuration of Platform trait

|`pod` +
*xref:#_camel_apache_org_v1_trait_PodTrait[PodTrait]*
|


The configuration of Pod trait
Deprecated: use init-containers instead.

|`prometheus` +
*xref:#_camel_apache_org_v1_trait_PrometheusTrait[PrometheusTrait]*
|


The configuration of Prometheus trait

|`pull-secret` +
*xref:#_camel_apache_org_v1_trait_PullSecretTrait[PullSecretTrait]*
|


The configuration of Pull Secret trait

|`quarkus` +
*xref:#_camel_apache_org_v1_trait_QuarkusTrait[QuarkusTrait]*
|


The configuration of Quarkus trait

|`registry` +
*xref:#_camel_apache_org_v1_trait_RegistryTrait[RegistryTrait]*
|


The configuration of Registry trait (support removed since version 2.5.0).
Deprecated: use jvm trait or read documentation.

|`route` +
*xref:#_camel_apache_org_v1_trait_RouteTrait[RouteTrait]*
|


The configuration of Route trait
Deprecated: use ingress instead.

|`security-context` +
*xref:#_camel_apache_org_v1_trait_SecurityContextTrait[SecurityContextTrait]*
|


The configuration of Security Context trait

|`service` +
*xref:#_camel_apache_org_v1_trait_ServiceTrait[ServiceTrait]*
|


The configuration of Service trait

|`service-binding` +
*xref:#_camel_apache_org_v1_trait_ServiceBindingTrait[ServiceBindingTrait]*
|


The configuration of Service Binding trait
Deprecated: no longer in use.

|`telemetry` +
*xref:#_camel_apache_org_v1_trait_TelemetryTrait[TelemetryTrait]*
|


The configuration of Telemetry trait

|`toleration` +
*xref:#_camel_apache_org_v1_trait_TolerationTrait[TolerationTrait]*
|


The configuration of Toleration trait

|`addons` +
*xref:#_camel_apache_org_v1_AddonTrait[map[string\]github.com/apache/camel-k/v2/pkg/apis/camel/v1.AddonTrait]*
|


Deprecated: no longer in use.

|`strimzi` +
*xref:#_camel_apache_org_v1_TraitSpec[TraitSpec]*
|


Deprecated: no longer in use.

|`3scale` +
*xref:#_camel_apache_org_v1_TraitSpec[TraitSpec]*
|


Deprecated: no longer in use.

|`tracing` +
*xref:#_camel_apache_org_v1_TraitSpec[TraitSpec]*
|


Deprecated: no longer in use.


|===

[#_camel_apache_org_v1_TypeSlot]
=== TypeSlot(`string` alias)

TypeSlot represent a kind of data (ie, input, output, ...).


[#_camel_apache_org_v1_UserTask]
=== UserTask

*Appears on:*

* <<#_camel_apache_org_v1_Task, Task>>

UserTask is used to execute any generic custom operation.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`BaseTask` +
*xref:#_camel_apache_org_v1_BaseTask[BaseTask]*
|(Members of `BaseTask` are embedded into this type.)




|`image` +
string
|


the container image to use

|`userId` +
int64
|


the user id used to run the container

|`command` +
string
|


the command to execute
Deprecated: use ContainerCommands

|`commands` +
[]string
|


the command to execute

|`publishingImage` +
string
|


the desired image build name


|===

[#_camel_apache_org_v1_ValueSource]
=== ValueSource

*Appears on:*

* <<#_camel_apache_org_v1_MavenSpec, MavenSpec>>

ValueSource --.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`configMapKeyRef` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#configmapkeyselector-v1-core[Kubernetes core/v1.ConfigMapKeySelector]*
|


Selects a key of a ConfigMap.

|`secretKeyRef` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#secretkeyselector-v1-core[Kubernetes core/v1.SecretKeySelector]*
|


Selects a key of a secret.


|===

[#_camel_apache_org_v1_trait_AffinityTrait]
=== AffinityTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

Allows constraining which nodes the integration pod(s) are eligible to be scheduled on, based on labels on the node,
or with inter-pod affinity and anti-affinity, based on labels on pods that are already running on the nodes.

It's disabled by default.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`podAffinity` +
bool
|


Always co-locates multiple replicas of the integration in the same node (default `false`).

|`podAntiAffinity` +
bool
|


Never co-locates multiple replicas of the integration in the same node (default `false`).

|`nodeAffinityLabels` +
[]string
|


Defines a set of nodes the integration pod(s) are eligible to be scheduled on, based on labels on the node.

|`podAffinityLabels` +
[]string
|


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.

|`podAntiAffinityLabels` +
[]string
|


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.


|===

[#_camel_apache_org_v1_trait_BuilderTrait]
=== BuilderTrait

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitTraits, IntegrationKitTraits>>
* <<#_camel_apache_org_v1_Traits, Traits>>

The builder trait is internally used to determine the best strategy to
build and configure IntegrationKits.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`verbose` +
bool
|


Enable verbose logging on build components that support it (e.g. Kaniko build pod).
Deprecated no longer in use

|`properties` +
[]string
|


A list of properties to be provided to the build task

|`strategy` +
string
|


The strategy to use, either `pod` or `routine` (default `routine`)

|`baseImage` +
string
|


Specify a base image. In order to have the application working properly it must be a container image which has a Java JDK
installed and ready to use on path (ie `/usr/bin/java`).

|`incrementalImageBuild` +
bool
|


Use the incremental image build option, to reuse existing containers (default `true`)

|`orderStrategy` +
string
|


The build order strategy to use, either `dependencies`, `fifo` or `sequential` (default is the platform default)

|`requestCPU` +
string
|


When using `pod` strategy, the minimum amount of CPU required by the pod builder.
Deprecated: use TasksRequestCPU instead with task name `builder`.

|`requestMemory` +
string
|


When using `pod` strategy, the minimum amount of memory required by the pod builder.
Deprecated: use TasksRequestCPU instead with task name `builder`.

|`limitCPU` +
string
|


When using `pod` strategy, the maximum amount of CPU required by the pod builder.
Deprecated: use TasksRequestCPU instead with task name `builder`.

|`limitMemory` +
string
|


When using `pod` strategy, the maximum amount of memory required by the pod builder.
Deprecated: use TasksRequestCPU instead with task name `builder`.

|`mavenProfiles` +
[]string
|


A list of references pointing to configmaps/secrets that contains a maven profile.
This configmap/secret is a resource of the IntegrationKit created, therefore it needs to be present in the namespace where the operator is going to create the IntegrationKit.
The content of the maven profile is expected to be a text containing a valid maven profile starting with `<profile>` and ending with `</profile>` that will be integrated as an inline profile in the POM.
Syntax: [configmap{vbar}secret]:name[/key], where name represents the resource name, key optionally represents the resource key to be filtered (default key value = profile.xml).

|`tasks` +
[]string
|


A list of tasks to be executed (available only when using `pod` strategy) with format `<name>;<container-image>;<container-command>`.

|`tasksFilter` +
string
|


A list of tasks sorted by the order of execution in a csv format, ie, `<taskName1>,<taskName2>,...`.
Mind that you must include also the operator tasks (`builder`, `quarkus-native`, `package`, `jib`, `s2i`)
if you need to execute them. Useful only with `pod` strategy.

|`tasksRequestCPU` +
[]string
|


A list of request cpu configuration for the specific task with format `<task-name>:<request-cpu-conf>`.

|`tasksRequestMemory` +
[]string
|


A list of request memory configuration for the specific task with format `<task-name>:<request-memory-conf>`.

|`tasksLimitCPU` +
[]string
|


A list of limit cpu configuration for the specific task with format `<task-name>:<limit-cpu-conf>`.

|`tasksLimitMemory` +
[]string
|


A list of limit memory configuration for the specific task with format `<task-name>:<limit-memory-conf>`.

|`nodeSelector` +
map[string]string
|


Defines a set of nodes the builder pod is eligible to be scheduled on, based on labels on the node.

|`annotations` +
map[string]string
|


When using `pod` strategy, annotation to use for the builder pod.

|`platforms` +
[]string
|


The list of manifest platforms to use to build a container image (default `linux/amd64`).


|===

[#_camel_apache_org_v1_trait_CamelTrait]
=== CamelTrait

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitTraits, IntegrationKitTraits>>
* <<#_camel_apache_org_v1_Traits, Traits>>

The Camel trait can be used to configure versions of Apache Camel K runtime and related libraries, it cannot be disabled.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`runtimeProvider` +
string
|


The runtime provider to use for the integration. (Default, Camel K Runtime).

|`runtimeVersion` +
string
|


The runtime version to use for the integration. It overrides the default version set in the Integration Platform.
You can use a fixed version (for example "3.2.3") or a semantic version (for example "3.x") which will try to resolve
to the best matching Catalog existing on the cluster (Default, the one provided by the operator version).

|`properties` +
[]string
|


A list of properties to be provided to the Integration runtime


|===

[#_camel_apache_org_v1_trait_Configuration]
=== Configuration

*Appears on:*

* <<#_camel_apache_org_v1_trait_PlatformBaseTrait, PlatformBaseTrait>>
* <<#_camel_apache_org_v1_trait_Trait, Trait>>

Configuration defines the trait structure
Deprecated: for backward compatibility.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`RawMessage` +
*xref:#_camel_apache_org_v1_trait_RawMessage[RawMessage]*
|(Members of `RawMessage` are embedded into this type.)





|===

[#_camel_apache_org_v1_trait_ContainerTrait]
=== ContainerTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Container trait can be used to configure properties of the container where the integration will run.

It also provides configuration for Services associated to the container.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`auto` +
bool
|


To automatically enable the trait

|`requestCPU` +
string
|


The minimum amount of CPU required (default 125 millicores).

|`requestMemory` +
string
|


The minimum amount of memory required (default 128 Mi).

|`limitCPU` +
string
|


The maximum amount of CPU to be provided (default 500 millicores).

|`limitMemory` +
string
|


The maximum amount of memory to be provided (default 512 Mi).

|`ports` +
[]string
|


List of container ports available in the container (syntax: <port-name>;<port-number>[;port-protocol]).
When omitted, `port-protocol` (admitted values `TCP`, `UDP` or `SCTP`) is `TCP`.
Don't use this for the primary http managed port (for which case you need to use `portName` and `port`).
Don't use in Knative based environments.

|`expose` +
bool
|


Can be used to enable/disable http exposure via kubernetes Service.

|`port` +
int32
|


To configure a different http port exposed by the container (default `8080`).

|`portName` +
string
|


To configure a different http port name for the port exposed by the container.
It defaults to `http` only when the `expose` parameter is true.

|`servicePort` +
int32
|


To configure under which service port the http container port is to be exposed (default `80`).

|`servicePortName` +
string
|


To configure under which service port name the http container port is to be exposed (default `http`).

|`name` +
string
|


The main container name. It's named `integration` by default.

|`image` +
string
|


The main container image to use for the Integration. When using this parameter the operator will create a synthetic IntegrationKit which
won't be able to execute traits requiring CamelCatalog. If the container image you're using is coming from an IntegrationKit, use instead
Integration `.spec.integrationKit` parameter. If you're moving the Integration across environments, you will also need to create an "external" IntegrationKit.

|`imagePullPolicy` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#pullpolicy-v1-core[Kubernetes core/v1.PullPolicy]*
|


The pull policy: Always{vbar}Never{vbar}IfNotPresent

|`runAsUser` +
int64
|


Security Context RunAsUser configuration (default none): this value is automatically retrieved in Openshift clusters when not explicitly set.

|`runAsNonRoot` +
bool
|


Security Context RunAsNonRoot configuration (default false).

|`seccompProfileType` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#seccompprofiletype-v1-core[Kubernetes core/v1.SeccompProfileType]*
|


Security Context SeccompProfileType configuration (default RuntimeDefault).

|`allowPrivilegeEscalation` +
bool
|


Security Context AllowPrivilegeEscalation configuration (default false).

|`capabilitiesDrop` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#capability-v1-core[[\]Kubernetes core/v1.Capability]*
|


Security Context Capabilities Drop configuration (default ALL).

|`capabilitiesAdd` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#capability-v1-core[[\]Kubernetes core/v1.Capability]*
|


Security Context Capabilities Add configuration (default none).


|===

[#_camel_apache_org_v1_trait_CronTrait]
=== CronTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Cron trait can be used to customize the behaviour of periodic timer/cron based integrations.

While normally an integration requires a pod to be always up and running, some periodic tasks, such as batch jobs,
require to be activated at specific hours of the day or with a periodic delay of minutes.
For such tasks, the cron trait can materialize the integration as a Kubernetes CronJob instead of a standard deployment,
in order to save resources when the integration does not need to be executed.

Integrations that start from the following components are evaluated by the cron trait: `timer`, `cron`, `quartz`. The trait does support multiple evaluated components only if they have the same schedule, else it will fallback to Camel implementation instead of instantiating a Kubernetes CronJob.

WARNING: In case of native build-mode defined in xref:traits:quarkus.adoc[quarkus] trait, the component can't be customized.

The rules for using a Kubernetes CronJob are the following:

  - `timer`: when period is set in milliseconds with no remaining seconds, for example 120000. If there is any second left as in 121000 (120s and 1s) or the presence of any of these parameters (delay, repeatCount, time) then a CronJob  won't be created, but a standard deployment.

  - `cron`, `quartz`: when the cron expression does not contain seconds (or the "seconds" part is set to 0). E.g.

    `cron:tab?schedule=0/2 * * * ?` or `quartz:trigger?cron=0 0/2 * * * ?`.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`schedule` +
string
|


The CronJob schedule for the whole integration. If multiple routes are declared, they must have the same schedule for this
mechanism to work correctly.

|`timeZone` +
string
|


The timezone that the CronJob will run on

|`components` +
string
|


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.
Supported components are currently: `cron`, `timer` and `quartz`.

|`fallback` +
bool
|


Use the default Camel implementation of the `cron` endpoint (`quartz`) instead of trying to materialize the integration
as Kubernetes CronJob.

|`concurrencyPolicy` +
string
|


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

|`auto` +
bool
|


Automatically deploy the integration as CronJob when all routes are
either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer).

It's required that all periodic consumers have the same period, and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`,
while `35m` or `50s` cannot).

|`startingDeadlineSeconds` +
int64
|


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.

|`activeDeadlineSeconds` +
int64
|


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.

|`backoffLimit` +
int32
|


Specifies the number of retries before marking the job failed.
It defaults to 2.


|===

[#_camel_apache_org_v1_trait_DependenciesTrait]
=== DependenciesTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Dependencies trait is internally used to automatically add runtime dependencies based on the
integration that the user wants to run.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)





|===

[#_camel_apache_org_v1_trait_DeployerTrait]
=== DeployerTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The deployer trait is responsible for deploying the resources owned by the integration, and can be used
to explicitly select the underlying controller that will manage the integration pods.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`kind` +
string
|


Deprecated: this feature will be removed in future releases.
Allows to explicitly select the desired deployment kind between `deployment`, `cron-job` or `knative-service`
when creating the resources for running the integration.

|`useSSA` +
bool
|


Deprecated: no longer in use.


|===

[#_camel_apache_org_v1_trait_DeploymentTrait]
=== DeploymentTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Deployment trait is responsible for generating the Kubernetes deployment that will make sure
the integration will run in the cluster.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`progressDeadlineSeconds` +
int32
|


The maximum time in seconds for the deployment to make progress before it
is considered to be failed. It defaults to `60s`.

|`strategy` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#deploymentstrategytype-v1-apps[Kubernetes apps/v1.DeploymentStrategyType]*
|


The deployment strategy to use to replace existing pods with new ones.

|`rollingUpdateMaxUnavailable` +
k8s.io/apimachinery/pkg/util/intstr.IntOrString
|


The maximum number of pods that can be unavailable during the update.
Value can be an absolute number (ex: 5) or a percentage of desired pods (ex: 10%).
Absolute number is calculated from percentage by rounding down.
This can not be 0 if MaxSurge is 0.
Defaults to `25%`.

|`rollingUpdateMaxSurge` +
k8s.io/apimachinery/pkg/util/intstr.IntOrString
|


The maximum number of pods that can be scheduled above the desired number of
pods.
Value can be an absolute number (ex: 5) or a percentage of desired pods (ex: 10%).
This can not be 0 if MaxUnavailable is 0.
Absolute number is calculated from percentage by rounding up.
Defaults to `25%`.


|===

[#_camel_apache_org_v1_trait_DiscoveryCacheType]
=== DiscoveryCacheType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_trait_GCTrait, GCTrait>>




[#_camel_apache_org_v1_trait_EnvironmentTrait]
=== EnvironmentTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The environment trait is used internally to inject standard environment variables in the integration container,
such as `NAMESPACE`, `POD_NAME` and others.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`containerMeta` +
bool
|


Enables injection of `NAMESPACE` and `POD_NAME` environment variables (default `true`)

|`httpProxy` +
bool
|


Propagates the `HTTP_PROXY`, `HTTPS_PROXY` and `NO_PROXY` environment variables (default `true`)

|`vars` +
[]string
|


A list of environment variables to be added to the integration container.
The syntax is either VAR=VALUE or VAR=[configmap{vbar}secret]:name/key, where name represents the resource name,
and key represents the resource key to be mapped as and environment variable.
These take precedence over any previously defined environment variables.


|===

[#_camel_apache_org_v1_trait_ErrorHandlerTrait]
=== ErrorHandlerTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

WARNING: This trait is no longer in use.

The error-handler is a platform trait used to inject Error Handler source into the integration runtime.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`ref` +
string
|


The error handler ref name provided or found in application properties


|===

[#_camel_apache_org_v1_trait_GCTrait]
=== GCTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The GC Trait garbage-collects all resources that are no longer necessary upon integration updates.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`discoveryCache` +
*xref:#_camel_apache_org_v1_trait_DiscoveryCacheType[DiscoveryCacheType]*
|


Discovery client cache to be used, either `disabled`, `disk` or `memory` (default `memory`).
Deprecated: no longer in use.


|===

[#_camel_apache_org_v1_trait_GitOpsTrait]
=== GitOpsTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The GitOps Trait is used to configure the repository where you want to push a GitOps Kustomize overlay configuration of the Integration built.
If the trait is enabled but no pull configuration is provided, then, the operator will use the values stored in Integration `.spec.git` field used
to pull the project.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`url` +
string
|


the URL of the repository where the project is stored.

|`secret` +
string
|


the Kubernetes secret where the Git token is stored. The operator will pick up the first secret key only, whichever the name it is.

|`branch` +
string
|


the git branch to check out.

|`tag` +
string
|


the git tag to check out.

|`commit` +
string
|


the git commit (full SHA) to check out.

|`branchPush` +
string
|


the git branch to push to. If omitted, the operator will push to a new branch named as `cicd/release-candidate-<datetime>`.

|`overlays` +
[]string
|


a list of overlays to provide (default \{"dev","stag","prod"}).

|`overwriteOverlay` +
bool
|


a flag (default, false) to overwrite any existing overlay.

|`integrationDirectory` +
string
|


The root path where to store Kustomize overlays (default `integrations`).

|`committerName` +
string
|


The name used to commit the GitOps changes (default `Camel K Operator`).

|`committerEmail` +
string
|


The email used to commit the GitOps changes (default `camel-k-operator@apache.org`).


|===

[#_camel_apache_org_v1_trait_HealthTrait]
=== HealthTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The health trait is responsible for configuring the health probes on the integration container.

NOTE: this trait is disabled by default.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`livenessProbeEnabled` +
bool
|


Configures the liveness probe for the integration container (default `false`).

|`livenessScheme` +
string
|


Scheme to use when connecting to the liveness probe (default `HTTP`).

|`livenessInitialDelay` +
int32
|


Number of seconds after the container has started before the liveness probe is initiated.

|`livenessTimeout` +
int32
|


Number of seconds after which the liveness probe times out.

|`livenessPeriod` +
int32
|


How often to perform the liveness probe.

|`livenessSuccessThreshold` +
int32
|


Minimum consecutive successes for the liveness probe to be considered successful after having failed.

|`livenessFailureThreshold` +
int32
|


Minimum consecutive failures for the liveness probe to be considered failed after having succeeded.

|`livenessProbe` +
string
|


The liveness probe path to use (default provided by the Catalog runtime used).

|`livenessPort` +
int32
|


The liveness port to use (default 8080).

|`readinessProbeEnabled` +
bool
|


Configures the readiness probe for the integration container (default `true`).

|`readinessScheme` +
string
|


Scheme to use when connecting to the readiness probe (default `HTTP`).

|`readinessInitialDelay` +
int32
|


Number of seconds after the container has started before the readiness probe is initiated.

|`readinessTimeout` +
int32
|


Number of seconds after which the readiness probe times out.

|`readinessPeriod` +
int32
|


How often to perform the readiness probe.

|`readinessSuccessThreshold` +
int32
|


Minimum consecutive successes for the readiness probe to be considered successful after having failed.

|`readinessFailureThreshold` +
int32
|


Minimum consecutive failures for the readiness probe to be considered failed after having succeeded.

|`readinessProbe` +
string
|


The readiness probe path to use (default provided by the Catalog runtime used).

|`readinessPort` +
int32
|


The readiness port to use (default 8080).

|`startupProbeEnabled` +
bool
|


Configures the startup probe for the integration container (default `false`).

|`startupScheme` +
string
|


Scheme to use when connecting to the startup probe (default `HTTP`).

|`startupInitialDelay` +
int32
|


Number of seconds after the container has started before the startup probe is initiated.

|`startupTimeout` +
int32
|


Number of seconds after which the startup probe times out.

|`startupPeriod` +
int32
|


How often to perform the startup probe.

|`startupSuccessThreshold` +
int32
|


Minimum consecutive successes for the startup probe to be considered successful after having failed.

|`startupFailureThreshold` +
int32
|


Minimum consecutive failures for the startup probe to be considered failed after having succeeded.

|`startupProbe` +
string
|


The startup probe path to use (default provided by the Catalog runtime used).

|`startupPort` +
int32
|


The startup port to use (default 8080).


|===

[#_camel_apache_org_v1_trait_IngressTrait]
=== IngressTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Ingress trait can be used to expose the service associated with the integration
to the outside world with a Kubernetes Ingress.

It's enabled by default whenever a Service is added to the integration (through the `service` trait).


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`ingressClassName` +
string
|


The Ingress class name as defined by the Ingress spec
See https://kubernetes.io/docs/concepts/services-networking/ingress/

|`annotations` +
map[string]string
|


The annotations added to the ingress.
This can be used to set controller specific annotations, e.g., when using the NGINX Ingress controller:
See https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/nginx-configuration/annotations.md

|`host` +
string
|


To configure the host exposed by the ingress.

|`path` +
string
|


To configure the path exposed by the ingress (default `/`).
Deprecated: In favor of `paths` - left for backward compatibility.

|`paths` +
[]string
|


To configure the paths exposed by the ingress (default `['/']`).

|`pathType` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#pathtype-v1-networking[Kubernetes networking/v1.PathType]*
|


To configure the path type exposed by the ingress.
One of `Exact`, `Prefix`, `ImplementationSpecific` (default to `Prefix`).

|`auto` +
bool
|


To automatically add an ingress whenever the integration uses an HTTP endpoint consumer.

|`tlsHosts` +
[]string
|


To configure tls hosts

|`tlsSecretName` +
string
|


To configure tls secret name


|===

[#_camel_apache_org_v1_trait_InitContainersTrait]
=== InitContainersTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The InitContainersTrait trait can be used to configure `init containers` or `sidecar containers`.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`initTasks` +
[]string
|


A list of init tasks to be executed with format `<name>;<container-image>;<container-command>`.

|`sideCarTasks` +
[]string
|


A list of sidecar tasks to be executed with format `<name>;<container-image>;<container-command>`.


|===

[#_camel_apache_org_v1_trait_IstioTrait]
=== IstioTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Istio trait allows configuring properties related to the Istio service mesh,
such as sidecar injection and outbound IP ranges.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`allow` +
string
|


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).

|`inject` +
bool
|


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.


|===

[#_camel_apache_org_v1_trait_JVMTrait]
=== JVMTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The JVM trait is used to configure the JVM that runs the Integration. This trait is configured only for Integration and related IntegrationKits
(bound to a container image) built by Camel K operator. If the system detects the usage of a different container image (ie, built externally), then, the
trait is disabled by the platform.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`debug` +
bool
|


Activates remote debugging, so that a debugger can be attached to the JVM, e.g., using port-forwarding

|`debugSuspend` +
bool
|


Suspends the target JVM immediately before the main class is loaded

|`printCommand` +
bool
|


Prints the command used the start the JVM in the container logs (default `true`)
Deprecated: no longer in use.

|`debugAddress` +
string
|


Transport address at which to listen for the newly launched JVM (default `*:5005`)

|`options` +
[]string
|


A list of JVM options

|`classpath` +
string
|


Additional JVM classpath (use `Linux` classpath separator)

|`jar` +
string
|


The Jar dependency which will run the application. Leave it empty for managed Integrations.

|`agents` +
[]string
|


A list of JVM agents to download and execute with format `<agent-name>;<agent-url>[;<jvm-agent-options>]`.

|`caCert` +
string
|


Path to a PEM-encoded CA certificate file.
Example: "/etc/camel/conf.d/_secrets/my-ca/ca.crt"

|`caCertMountPath` +
string
|


The path where the generated truststore will be mounted.
Default: "/etc/camel/conf.d/_truststore"

|`caCertPassword` +
string
|


Required when caCert is set. Path to a file containing the truststore password.
Example: "/etc/camel/conf.d/_secrets/truststore-pass/password"


|===

[#_camel_apache_org_v1_trait_JolokiaTrait]
=== JolokiaTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Jolokia trait activates and configures the Jolokia Java agent.
This trait is useful to enable JMX access to Camel application.
Make sure you have the right privileges to perform such an action on the cluster.

See https://jolokia.org/reference/html/manual/agents.html

WARNING: The Jolokia trait is **deprecated** and will removed in future release versions:
use `jvm.agents` configuration instead.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`CACert` +
string
|


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).

|`clientPrincipal` +
[]string
|


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).

|`discoveryEnabled` +
bool
|


Listen for multicast requests (default `false`)

|`extendedClientCheck` +
bool
|


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).

|`host` +
string
|


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 `"*"`).

|`password` +
string
|


The password used for authentication, applicable when the `user` option is set.

|`port` +
int32
|


The Jolokia endpoint port (default `8778`).

|`protocol` +
string
|


The protocol to use, either `http` or `https` (default `https` for OpenShift)

|`user` +
string
|


The user to be used for authentication

|`useSSLClientAuthentication` +
bool
|


Whether client certificates should be used for authentication (default `true` for OpenShift).

|`options` +
[]string
|


A list of additional Jolokia options as defined
in https://jolokia.org/reference/html/agents.html#agent-jvm-config[JVM agent configuration options]


|===

[#_camel_apache_org_v1_trait_KameletsTrait]
=== KameletsTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The kamelets trait is a platform trait used to inject Kamelets into the integration runtime.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`auto` +
bool
|


Automatically inject all referenced Kamelets and their default configuration (enabled by default)

|`list` +
string
|


Comma separated list of Kamelet names to load into the current integration

|`mountPoint` +
string
|


The directory where the application mounts and reads Kamelet spec (default `/etc/camel/kamelets`)


|===

[#_camel_apache_org_v1_trait_KedaSecret]
=== KedaSecret

*Appears on:*

* <<#_camel_apache_org_v1_trait_KedaTrigger, KedaTrigger>>



[cols="2,2a",options="header"]
|===
|Field
|Description

|`name` +
string
|


The name of the secret to use.

|`mapping` +
map[string]string
|


The mapping to use for this secret (eg, `database-secret-key:keda-secret-key`)


|===

[#_camel_apache_org_v1_trait_KedaTrait]
=== KedaTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The KEDA trait allows you to configure KEDA autoscalers to scale up and down based of events.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`pollingInterval` +
int32
|


Interval (seconds) to check each trigger on.

|`cooldownPeriod` +
int32
|


The wait period between the last active trigger reported and scaling the resource back to 0.

|`idleReplicaCount` +
int32
|


Enabling this property allows KEDA to scale the resource down to the specified number of replicas.

|`minReplicaCount` +
int32
|


Minimum number of replicas.

|`maxReplicaCount` +
int32
|


Maximum number of replicas.

|`triggers` +
*xref:#_camel_apache_org_v1_trait_KedaTrigger[[\]KedaTrigger]*
|


Definition of triggers according to the KEDA format. Each trigger must contain `type` field corresponding
to the name of a KEDA autoscaler and a key/value map named `metadata` containing specific trigger options
and optionally a mapping of secrets, used by Keda operator to poll resources according to the autoscaler type.

|`auto` +
bool
|


Automatically discover KEDA triggers from Camel component URIs.

|`autoMetadata` +
map[string]map[string]string
|


Additional metadata to merge into auto-discovered triggers. Keys are trigger types (e.g., "kafka"),
values are maps of metadata key-value pairs to merge (e.g., {"lagThreshold": "10"}).


|===

[#_camel_apache_org_v1_trait_KedaTrigger]
=== KedaTrigger

*Appears on:*

* <<#_camel_apache_org_v1_trait_KedaTrait, KedaTrait>>



[cols="2,2a",options="header"]
|===
|Field
|Description

|`type` +
string
|


The autoscaler type.

|`metadata` +
map[string]string
|


The trigger metadata (see Keda documentation to learn how to fill for each type).

|`secrets` +
*xref:#_camel_apache_org_v1_trait_KedaSecret[[\]KedaSecret]*
|


The secrets mapping to use. Keda allows the possibility to use values coming from different secrets.


|===

[#_camel_apache_org_v1_trait_KnativeServiceTrait]
=== KnativeServiceTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Knative Service trait allows configuring options when running the Integration as a Knative service, instead of
a standard Kubernetes Deployment.

Running an Integration as a Knative Service enables auto-scaling (and scaling-to-zero), but those features
are only relevant when the Camel route(s) use(s) an HTTP endpoint consumer.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`annotations` +
map[string]string
|


The annotations added to route.
This can be used to set knative service specific annotations
CLI usage example: -t "knative-service.annotations.'haproxy.router.openshift.io/balance'=true"

|`class` +
string
|


Configures the Knative autoscaling class property (e.g. to set `hpa.autoscaling.knative.dev` or `kpa.autoscaling.knative.dev` autoscaling).

Refer to the Knative documentation for more information.

|`autoscalingMetric` +
string
|


Configures the Knative autoscaling metric property (e.g. to set `concurrency` based or `cpu` based autoscaling).

Refer to the Knative documentation for more information.

|`autoscalingTarget` +
int
|


Sets the allowed concurrency level or CPU percentage (depending on the autoscaling metric) for each Pod.

Refer to the Knative documentation for more information.

|`minScale` +
int
|


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.

Refer to the Knative documentation for more information.

|`maxScale` +
int
|


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.

Refer to the Knative documentation for more information.

|`rolloutDuration` +
string
|


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.

|`visibility` +
string
|


Setting `cluster-local`, Knative service becomes a private service.
Specifically, this option applies the `networking.knative.dev/visibility` label to Knative service.

Refer to the Knative documentation for more information.

|`auto` +
bool
|


Automatically deploy the integration as Knative service when all conditions hold:

* Integration is using the Knative profile
* All routes are either starting from an HTTP based consumer or a passive consumer (e.g. `direct` is a passive consumer)

|`timeoutSeconds` +
int64
|


The maximum duration in seconds that the request instance is allowed to respond to a request.
This field propagates to the integration pod's terminationGracePeriodSeconds

Refer to the Knative documentation for more information.


|===

[#_camel_apache_org_v1_trait_KnativeTrait]
=== KnativeTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Knative trait automatically discovers addresses of Knative resources and inject them into the
running integration.

The Camel Knative component will then use the full configuration to configure the routes.

The trait is enabled by default when the Knative profile is active.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`config` +
string
|


Can be used to inject a Knative complete configuration in JSON format.

|`channelSources` +
[]string
|


List of channels used as source of integration routes.
Can contain simple channel names or full Camel URIs.

|`channelSinks` +
[]string
|


List of channels used as destination of integration routes.
Can contain simple channel names or full Camel URIs.

|`endpointSources` +
[]string
|


List of channels used as source of integration routes.

|`endpointSinks` +
[]string
|


List of endpoints used as destination of integration routes.
Can contain simple endpoint names or full Camel URIs.

|`eventSources` +
[]string
|


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").

|`eventSinks` +
[]string
|


List of event types that the integration will produce.
Can contain simple event types or full Camel URIs (to use a specific broker).

|`filterSourceChannels` +
bool
|


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.

|`sinkBinding` +
bool
|


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).

|`auto` +
bool
|


Enable automatic discovery of all trait properties.

|`namespaceLabel` +
bool
|


Enables the camel-k-operator to set the "bindings.knative.dev/include=true" label to the namespace
As Knative requires this label to perform injection of K_SINK URL into the service.
If this is false, the integration pod may start and fail, read the SinkBinding Knative documentation. (default: true)

|`filters` +
[]string
|


Sets filter attributes on the event stream (such as event type, source, subject and so on).
A list of key-value pairs that represent filter attributes and its values.
The syntax is KEY=VALUE, e.g., `source="my.source"`.
Filter attributes get set on the Knative trigger that is being created as part of this integration.

|`filterEventType` +
bool
|


Enables the default filtering for the Knative trigger using the event type
If this is true, the created Knative trigger uses the event type as a filter on the event stream when no other filter criteria is given. (default: true)


|===

[#_camel_apache_org_v1_trait_LoggingTrait]
=== LoggingTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Logging trait is used to configure Integration runtime logging options (such as color and format).
The logging backend is provided by Quarkus, whose configuration is documented at https://quarkus.io/guides/logging.

WARNING: The Logging trait is **deprecated** and will be removed in future release versions:
use Quarkus logging properties directly instead.

Migration example:

	Before: traits.logging.level=DEBUG
	After:  -p quarkus.log.level=DEBUG


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`color` +
bool
|


Colorize the log output

|`format` +
string
|


Logs message format

|`level` +
string
|


Adjust the logging level (defaults to `INFO`)

|`json` +
bool
|


Output the logs in JSON

|`jsonPrettyPrint` +
bool
|


Enable "pretty printing" of the JSON logs


|===

[#_camel_apache_org_v1_trait_MasterTrait]
=== MasterTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Master trait allows to configure the integration to automatically leverage Kubernetes resources for doing
leader election and starting *master* routes only on certain instances.

It's activated automatically when using the master endpoint in a route, e.g. `from("master:lockname:telegram:bots")...`.

NOTE: this trait adds special permissions to the integration service account in order to read/write configmaps and read pods.
It's recommended to use a different service account than "default" when running the integration.

WARNING: The Master trait is **deprecated** and will be removed in future release versions.
This trait requires the operator to manage RBAC explicitly, which should be avoided for security
and simplicity reasons. Users should manually create the required Role and RoleBinding, then configure
Quarkus properties directly:

	-p quarkus.camel.cluster.kubernetes.resource-name=<integration>-lock
	-p quarkus.camel.cluster.kubernetes.resource-type=Lease
	-p quarkus.camel.cluster.kubernetes.labels."camel.apache.org/integration"=<integration-name>


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`auto` +
bool
|


Enables automatic configuration of the trait.

|`includeDelegateDependencies` +
bool
|


When this flag is active, the operator analyzes the source code to add dependencies required by delegate endpoints.
E.g. when using `master:lockname:timer`, then `camel:timer` is automatically added to the set of dependencies.
It's enabled by default.

|`resourceName` +
string
|


Name of the configmap that will be used to store the lock. Defaults to "<integration-name>-lock".
Name of the configmap/lease resource that will be used to store the lock. Defaults to "<integration-name>-lock".

|`resourceType` +
string
|


Type of Kubernetes resource to use for locking ("ConfigMap" or "Lease"). Defaults to "Lease".

|`labelKey` +
string
|


Label that will be used to identify all pods contending the lock. Defaults to "camel.apache.org/integration".

|`labelValue` +
string
|


Label value that will be used to identify all pods contending the lock. Defaults to the integration name.


|===

[#_camel_apache_org_v1_trait_MountTrait]
=== MountTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Mount trait can be used to configure volumes mounted on the Integration Pods.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`configs` +
[]string
|


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{vbar}secret]:name[/key], where name represents the resource name and key optionally represents the resource key to be filtered

|`resources` +
[]string
|


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{vbar}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

|`volumes` +
[]string
|


A list of Persistent Volume Claims to be mounted. Syntax: [pvcname:/container/path]. If the PVC is not found, the Integration fails.
You can use the syntax [pvcname:/container/path:size:accessMode<:storageClass>] to create a dynamic PVC based on the Storage Class provided
or the default cluster Storage Class. However, if the PVC exists, the operator would mount it.

|`emptyDirs` +
[]string
|


A list of EmptyDir volumes to be mounted. An optional size limit may be configured (default 500Mi).
Syntax: name:/container/path[:sizeLimit]

|`hotReload` +
bool
|


Enable "hot reload" when a secret/configmap mounted is edited (default `false`). The configmap/secret must be
marked with `camel.apache.org/integration` label to be taken in account. The resource will be watched for any kind change, also for
changes in metadata.

|`scanKameletsImplicitLabelSecrets` +
bool
|


Deprecated: no longer available since version 2.5.


|===

[#_camel_apache_org_v1_trait_OpenAPITrait]
=== OpenAPITrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

WARNING: The OpenAPI trait was deprecated in version 2.5.0 and is no longer active since version 2.9.0.

The OpenAPI DSL trait is internally used to allow creating integrations from a OpenAPI specs.

WARNING: The Openapi trait is **deprecated** and will removed in future release versions:
use Camel REST contract first instead (see Camel core documentation).


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`configmaps` +
[]string
|


The configmaps holding the spec of the OpenAPI (compatible with > 3.0 spec only).


|===

[#_camel_apache_org_v1_trait_OwnerTrait]
=== OwnerTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Owner trait ensures that all created resources belong to the integration being created
and transfers annotations and labels on the integration onto these owned resources.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`targetAnnotations` +
[]string
|


The set of annotations to be transferred

|`targetLabels` +
[]string
|


The set of labels to be transferred


|===

[#_camel_apache_org_v1_trait_PDBTrait]
=== PDBTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The PDB trait allows to configure the PodDisruptionBudget resource for the Integration pods.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`minAvailable` +
string
|


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.

|`maxUnavailable` +
string
|


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.


|===

[#_camel_apache_org_v1_trait_PlatformBaseTrait]
=== PlatformBaseTrait

*Appears on:*

* <<#_camel_apache_org_v1_trait_BuilderTrait, BuilderTrait>>
* <<#_camel_apache_org_v1_trait_CamelTrait, CamelTrait>>
* <<#_camel_apache_org_v1_trait_ContainerTrait, ContainerTrait>>
* <<#_camel_apache_org_v1_trait_DependenciesTrait, DependenciesTrait>>
* <<#_camel_apache_org_v1_trait_DeployerTrait, DeployerTrait>>
* <<#_camel_apache_org_v1_trait_DeploymentTrait, DeploymentTrait>>
* <<#_camel_apache_org_v1_trait_EnvironmentTrait, EnvironmentTrait>>
* <<#_camel_apache_org_v1_trait_ErrorHandlerTrait, ErrorHandlerTrait>>
* <<#_camel_apache_org_v1_trait_MountTrait, MountTrait>>
* <<#_camel_apache_org_v1_trait_OpenAPITrait, OpenAPITrait>>
* <<#_camel_apache_org_v1_trait_PlatformTrait, PlatformTrait>>
* <<#_camel_apache_org_v1_trait_QuarkusTrait, QuarkusTrait>>
* <<#_camel_apache_org_v1_trait_SecurityContextTrait, SecurityContextTrait>>

PlatformBaseTrait is the base type for platform traits. It cannot be disabled by the user.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`enabled` +
bool
|


Deprecated: no longer in use.

|`configuration` +
*xref:#_camel_apache_org_v1_trait_Configuration[Configuration]*
|


Legacy trait configuration parameters.
Deprecated: for backward compatibility.


|===

[#_camel_apache_org_v1_trait_PlatformTrait]
=== PlatformTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The platform trait is a base trait that is used to assign an integration platform to an integration.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`createDefault` +
bool
|


Deprecated: no longer in use.

|`global` +
bool
|


Deprecated: no longer in use.

|`auto` +
bool
|


Deprecated: no longer in use.


|===

[#_camel_apache_org_v1_trait_PodTrait]
=== PodTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

WARNING: The Pod trait is **deprecated** and will removed in future release versions:
use InitContainers trait istead.

The pod trait allows the customization of the Integration pods.
It applies the `PodSpecTemplate` struct contained in the Integration `.spec.podTemplate` field,
into the Integration deployment Pods template, using strategic merge patch.

This can be used to customize the container where Camel routes execute,
by using the `integration` container name.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)





|===

[#_camel_apache_org_v1_trait_PrometheusTrait]
=== PrometheusTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Prometheus trait configures a Prometheus-compatible endpoint. It also creates a `PodMonitor` resource,
so that the endpoint can be scraped automatically, when using the Prometheus operator.

The metrics are exposed using Micrometer Metrics.

WARNING: The creation of the `PodMonitor` resource requires the https://github.com/coreos/prometheus-operator[Prometheus Operator]
custom resource definition to be installed.
You can set `pod-monitor` to `false` for the Prometheus trait to work without the Prometheus Operator.

WARNING: By default the metrics API is not available in JSON

The Prometheus trait is disabled by default.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`podMonitor` +
bool
|


Whether a `PodMonitor` resource is created (default `true`).

|`podMonitorLabels` +
[]string
|


The `PodMonitor` resource labels, applicable when `pod-monitor` is `true`.


|===

[#_camel_apache_org_v1_trait_PullSecretTrait]
=== PullSecretTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Pull Secret trait sets a pull secret on the pod,
to allow Kubernetes to retrieve the container image from an external registry.

The pull secret can be specified manually or, in case you've configured authentication for an external container registry
on the `IntegrationPlatform`, the same secret is used to pull images.

It's enabled by default whenever you configure authentication for an external container registry,
so it assumes that external registries are private.

If your registry does not need authentication for pulling images, you can disable this trait.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`secretName` +
string
|


The pull secret name to set on the Pod. If left empty this is automatically taken from the `IntegrationPlatform` registry configuration.

|`imagePullerDelegation` +
bool
|


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.

|`auto` +
bool
|


Automatically configures the platform registry secret on the pod if it is of type `kubernetes.io/dockerconfigjson`.


|===

[#_camel_apache_org_v1_trait_QuarkusMode]
=== QuarkusMode(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_trait_QuarkusTrait, QuarkusTrait>>

QuarkusMode is the type of Quarkus build packaging.


[#_camel_apache_org_v1_trait_QuarkusPackageType]
=== QuarkusPackageType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_trait_QuarkusTrait, QuarkusTrait>>

QuarkusPackageType is the type of Quarkus build packaging.
Deprecated: use `QuarkusMode` instead.


[#_camel_apache_org_v1_trait_QuarkusTrait]
=== QuarkusTrait

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitTraits, IntegrationKitTraits>>
* <<#_camel_apache_org_v1_Traits, Traits>>

The Quarkus trait configures the Quarkus runtime.

It's enabled by default.

NOTE: A native based compilation will be forced to use a `pod` build strategy.
Compiling to a native executable, i.e. when using `build-mode=native`, requires at least
4GiB of memory, so the Pod running the native build, must have enough memory available.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`packageTypes` +
*xref:#_camel_apache_org_v1_trait_QuarkusPackageType[[\]QuarkusPackageType]*
|


The Quarkus package types, `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.
Deprecated: use `build-mode` instead.

|`buildMode` +
*xref:#_camel_apache_org_v1_trait_QuarkusMode[[\]QuarkusMode]*
|


The Quarkus mode to run: either `jvm` or `native` (default `jvm`).
In case both `jvm` and `native` are specified, two `IntegrationKit` resources are created,
with the `native` kit having precedence over the `jvm` one once ready.

|`nativeBaseImage` +
string
|


The base image to use when running a native build (default `quay.io/quarkus/quarkus-micro-image:2.0`)

|`nativeBuilderImage` +
string
|


The image containing the tooling required for a native build (by default it will use the one provided in the runtime catalog)


|===

[#_camel_apache_org_v1_trait_RawMessage]
=== RawMessage(`[]byte` alias)

*Appears on:*

* <<#_camel_apache_org_v1_trait_Configuration, Configuration>>

RawMessage defines a binary type for configuration
Deprecated: for backward compatibility.


[#_camel_apache_org_v1_trait_RegistryTrait]
=== RegistryTrait

*Appears on:*

* <<#_camel_apache_org_v1_IntegrationKitTraits, IntegrationKitTraits>>
* <<#_camel_apache_org_v1_Traits, Traits>>

WARNING: The Registry trait was deprecated in version 2.2.0 and is no longer active since version 2.5.0.

The Registry trait sets up Maven to use the Image registry
as a Maven repository.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)





|===

[#_camel_apache_org_v1_trait_RouteTrait]
=== RouteTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

WARNING: The Route trait is **deprecated** and will removed in future release versions: use Ingress trait istead.

The Route trait can be used to configure the creation of OpenShift routes for the integration.

The certificate and key contents may be sourced either from the local filesystem or in a OpenShift `secret` object.
The user may use the parameters ending in `-secret` (example: `tls-certificate-secret`) to reference a certificate stored in a `secret`.
Parameters ending in `-secret` have higher priorities and in case the same route parameter is set, for example: `tls-key-secret` and `tls-key`,
then `tls-key-secret` is used.
The recommended approach to set the key and certificates is to use `secrets` to store their contents and use the
following parameters to reference them: `tls-certificate-secret`, `tls-key-secret`, `tls-ca-certificate-secret`, `tls-destination-ca-certificate-secret`
See the examples section at the end of this page to see the setup options.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`annotations` +
map[string]string
|


The annotations added to route.
This can be used to set route specific annotations
For annotations options see https://docs.openshift.com/container-platform/3.11/architecture/networking/routes.html#route-specific-annotations
CLI usage example: -t "route.annotations.'haproxy.router.openshift.io/balance'=true"

|`host` +
string
|


To configure the host exposed by the route.

|`tlsTermination` +
string
|


The TLS termination type, like `edge`, `passthrough` or `reencrypt`.

Refer to the OpenShift route documentation for additional information.

|`tlsCertificate` +
string
|


The TLS certificate contents.

Refer to the OpenShift route documentation for additional information.

|`tlsCertificateSecret` +
string
|


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 "/".

Refer to the OpenShift route documentation for additional information.

|`tlsKey` +
string
|


The TLS certificate key contents.

Refer to the OpenShift route documentation for additional information.

|`tlsKeySecret` +
string
|


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 "/".

Refer to the OpenShift route documentation for additional information.

|`tlsCACertificate` +
string
|


The TLS CA certificate contents.

Refer to the OpenShift route documentation for additional information.

|`tlsCACertificateSecret` +
string
|


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 "/".

Refer to the OpenShift route documentation for additional information.

|`tlsDestinationCACertificate` +
string
|


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.

Refer to the OpenShift route documentation for additional information.

|`tlsDestinationCACertificateSecret` +
string
|


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 "/".

Refer to the OpenShift route documentation for additional information.

|`tlsInsecureEdgeTerminationPolicy` +
string
|


To configure how to deal with insecure traffic, e.g. `Allow`, `Disable` or `Redirect` traffic.

Refer to the OpenShift route documentation for additional information.


|===

[#_camel_apache_org_v1_trait_SecurityContextTrait]
=== SecurityContextTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Security Context trait can be used to configure the security setting of the Pod running the application.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`PlatformBaseTrait` +
*xref:#_camel_apache_org_v1_trait_PlatformBaseTrait[PlatformBaseTrait]*
|(Members of `PlatformBaseTrait` are embedded into this type.)




|`runAsUser` +
int64
|


Security Context RunAsUser configuration (default none): this value is automatically retrieved in Openshift clusters when not explicitly set.

|`runAsNonRoot` +
bool
|


Security Context RunAsNonRoot configuration (default false).

|`seccompProfileType` +
*https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#seccompprofiletype-v1-core[Kubernetes core/v1.SeccompProfileType]*
|


Security Context SeccompProfileType configuration (default RuntimeDefault).


|===

[#_camel_apache_org_v1_trait_ServiceBindingTrait]
=== ServiceBindingTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

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.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`services` +
[]string
|


List of Services in the form [[apigroup/]version:]kind:[namespace/]name


|===

[#_camel_apache_org_v1_trait_ServiceTrait]
=== ServiceTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Service trait exposes the Integration with a Service resource so that it can be accessed by other applications
(or Integrations) in the same namespace.

NOTE: this trait is automatically disabled if the Knative Service trait is enabled.

It's enabled by default if the integration depends on a Camel component that can expose a HTTP endpoint.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`auto` +
bool
|


To automatically detect from the code if a Service needs to be created.

|`nodePort` +
bool
|


Enable Service to be exposed as NodePort (default `false`).
Deprecated: Use service type instead.

|`type` +
*xref:#_camel_apache_org_v1_trait_ServiceType[ServiceType]*
|


The type of service to be used, either 'ClusterIP', 'NodePort' or 'LoadBalancer'.

|`annotations` +
map[string]string
|


The annotations added to the Service object.

|`labels` +
map[string]string
|


The labels added to the Service object.

|`ports` +
[]string
|


List of container ports available in the container to expose
(syntax: <port-name>;<port-number>;<container-port-number>[;<port-protocol]).
When omitted, `port-protocol` (admitted values `TCP`, `UDP` or `SCTP`) is `TCP`.
Don't use this for the primary http managed port (which is managed by container trait).
Don't use in Knative based environments.


|===

[#_camel_apache_org_v1_trait_ServiceType]
=== ServiceType(`string` alias)

*Appears on:*

* <<#_camel_apache_org_v1_trait_ServiceTrait, ServiceTrait>>




[#_camel_apache_org_v1_trait_TelemetryTrait]
=== TelemetryTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

The Telemetry trait can be used to automatically publish tracing information to an OTLP compatible collector.

The trait is able to automatically discover the telemetry OTLP endpoint available in the namespace (supports **Jaerger** in version 1.35+).

The Telemetry trait is disabled by default.

WARNING: The Telemetry trait is **deprecated** and will be removed in future release versions.
The same behavior can be achieved via properties and dependencies configuration.

Migration example:

	Before: --trait telemetry.endpoint=http://jaeger:4317
	After:  -p quarkus.otel.exporter.otlp.traces.endpoint=http://jaeger:4317

WARNING: The Telemetry trait can't be enabled at the same time as the Tracing trait.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`auto` +
bool
|


Enables automatic configuration of the trait, including automatic discovery of the telemetry endpoint.

|`serviceName` +
string
|


The name of the service that publishes telemetry data (defaults to the integration name)

|`endpoint` +
string
|


The target endpoint of the Telemetry service (automatically discovered by default)

|`sampler` +
string
|


The sampler of the telemetry used for tracing (default "on")

|`sampler-ratio` +
string
|


The sampler ratio of the telemetry used for tracing

|`sampler-parent-based` +
bool
|


The sampler of the telemetry used for tracing is parent based (default "true")


|===

[#_camel_apache_org_v1_trait_TolerationTrait]
=== TolerationTrait

*Appears on:*

* <<#_camel_apache_org_v1_Traits, Traits>>

This trait sets Tolerations over Integration pods. Tolerations allow (but do not require) the pods to schedule onto nodes with matching taints.
See https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ for more details.

The toleration should be expressed in a similar manner that of taints, i.e., `Key[=Value]:Effect[:Seconds]`, where values in square brackets are optional.

For examples:

- `node-role.kubernetes.io/master:NoSchedule`
- `node.kubernetes.io/network-unavailable:NoExecute:3000`
- `disktype=ssd:PreferNoSchedule`

It's disabled by default.


[cols="2,2a",options="header"]
|===
|Field
|Description

|`Trait` +
*xref:#_camel_apache_org_v1_trait_Trait[Trait]*
|(Members of `Trait` are embedded into this type.)




|`taints` +
[]string
|


The list of taints to tolerate, in the form `Key[=Value]:Effect[:Seconds]`


|===

[#_camel_apache_org_v1_trait_Trait]
=== Trait

*Appears on:*

* <<#_camel_apache_org_v1_trait_AffinityTrait, AffinityTrait>>
* <<#_camel_apache_org_v1_trait_CronTrait, CronTrait>>
* <<#_camel_apache_org_v1_trait_GCTrait, GCTrait>>
* <<#_camel_apache_org_v1_trait_GitOpsTrait, GitOpsTrait>>
* <<#_camel_apache_org_v1_trait_HealthTrait, HealthTrait>>
* <<#_camel_apache_org_v1_trait_IngressTrait, IngressTrait>>
* <<#_camel_apache_org_v1_trait_InitContainersTrait, InitContainersTrait>>
* <<#_camel_apache_org_v1_trait_IstioTrait, IstioTrait>>
* <<#_camel_apache_org_v1_trait_JVMTrait, JVMTrait>>
* <<#_camel_apache_org_v1_trait_JolokiaTrait, JolokiaTrait>>
* <<#_camel_apache_org_v1_trait_KameletsTrait, KameletsTrait>>
* <<#_camel_apache_org_v1_trait_KedaTrait, KedaTrait>>
* <<#_camel_apache_org_v1_trait_KnativeServiceTrait, KnativeServiceTrait>>
* <<#_camel_apache_org_v1_trait_KnativeTrait, KnativeTrait>>
* <<#_camel_apache_org_v1_trait_LoggingTrait, LoggingTrait>>
* <<#_camel_apache_org_v1_trait_MasterTrait, MasterTrait>>
* <<#_camel_apache_org_v1_trait_OwnerTrait, OwnerTrait>>
* <<#_camel_apache_org_v1_trait_PDBTrait, PDBTrait>>
* <<#_camel_apache_org_v1_trait_PodTrait, PodTrait>>
* <<#_camel_apache_org_v1_trait_PrometheusTrait, PrometheusTrait>>
* <<#_camel_apache_org_v1_trait_PullSecretTrait, PullSecretTrait>>
* <<#_camel_apache_org_v1_trait_RegistryTrait, RegistryTrait>>
* <<#_camel_apache_org_v1_trait_RouteTrait, RouteTrait>>
* <<#_camel_apache_org_v1_trait_ServiceBindingTrait, ServiceBindingTrait>>
* <<#_camel_apache_org_v1_trait_ServiceTrait, ServiceTrait>>
* <<#_camel_apache_org_v1_trait_TelemetryTrait, TelemetryTrait>>
* <<#_camel_apache_org_v1_trait_TolerationTrait, TolerationTrait>>

Trait is the base type for all traits. It could be disabled by the user.

[cols="2,2a",options="header"]
|===
|Field
|Description

|`enabled` +
bool
|


Can be used to enable or disable a trait. All traits share this common property.

|`configuration` +
*xref:#_camel_apache_org_v1_trait_Configuration[Configuration]*
|


Legacy trait configuration parameters.
Deprecated: for backward compatibility.


|===