= Integration Profiles

Any running Camel K Integration is associated to a shared IntegrationPlatform resource that contains general configuration options.
The integration platform is located in the operator namespace and typically uses the same name as the operator id that this platform belongs to.

Users may add an IntegrationProfile resource to any namespace. The profile holds custom settings which can be applied to all Integrations.

The profile must be explicitly selected by an annotation referencing the integration profile name (any resource belonging to the "camel.apache.org" group can select a particular profile configuration).

To specify which profile should be used for an Integration, the resource can be annotated like in the following example:

[source,yaml]
----
kind: Integration
apiVersion: camel.apache.org/v1
metadata:
  annotations:
    camel.apache.org/integration-profile.id: my-profile
# ...
----

The value of the `camel.apache.org/integration-profile.id` annotation must match the name of an IntegrationProfile custom resource which is available in the same namespace of the Integration. Here an example of a profile:

[source,yaml]
----
kind: IntegrationProfile
apiVersion: camel.apache.org/v1
metadata:
  name: my-profile
spec:
  traits:
    camel:
      runtimeProvider: plain-quarkus
      runtimeVersion: 3.30.8
    owner:
      targetLabels:
      - camel.apache.org/app
...
# ...
----

The selection of a IntegrationProfile enables new configuration scenarios, for example, sharing global configuration options for groups of Integrations. The main configuration expected here is related to traits.
