This is an automated email from the ASF dual-hosted git repository.

pcongiusti pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git

commit 196020d065469b00019cd044cea02514e6665904
Author: Pasquale Congiusti <[email protected]>
AuthorDate: Thu Mar 21 17:26:59 2024 +0100

    chore(trait): polish conditions
    
    Closes #5027
---
 addons/master/master.go              |  2 +-
 addons/telemetry/telemetry.go        |  1 +
 e2e/common/runtimes/runtimes_test.go |  6 +++---
 e2e/common/traits/builder_test.go    | 18 +++++++++---------
 pkg/controller/build/monitor_pod.go  |  2 +-
 pkg/trait/builder.go                 |  4 ++--
 pkg/trait/container.go               |  1 +
 pkg/trait/container_probes_test.go   |  6 ++++--
 pkg/trait/container_test.go          |  1 +
 pkg/trait/cron.go                    |  6 +++++-
 pkg/trait/cron_test.go               |  6 ++++--
 pkg/trait/deployment.go              |  2 ++
 pkg/trait/gc.go                      |  2 +-
 pkg/trait/gc_test.go                 |  1 +
 pkg/trait/ingress.go                 |  1 +
 pkg/trait/ingress_test.go            |  1 +
 pkg/trait/jvm.go                     |  8 ++++----
 pkg/trait/jvm_test.go                |  3 +++
 pkg/trait/kamelets.go                |  2 +-
 pkg/trait/knative.go                 |  2 +-
 pkg/trait/knative_service.go         |  4 ++++
 pkg/trait/logging.go                 |  2 +-
 pkg/trait/mount.go                   |  3 +++
 pkg/trait/owner.go                   |  2 +-
 pkg/trait/pod.go                     |  2 +-
 pkg/trait/pull_secret.go             |  2 +-
 pkg/trait/quarkus.go                 |  2 +-
 pkg/trait/registry.go                |  1 +
 pkg/trait/route.go                   |  1 +
 pkg/trait/route_test.go              |  3 ++-
 pkg/trait/service.go                 |  4 +++-
 pkg/trait/service_binding.go         |  2 +-
 pkg/trait/service_test.go            | 15 ++++++++++-----
 pkg/trait/trait_catalog.go           |  3 +--
 pkg/trait/trait_condition_types.go   | 26 +++++++++++++++++---------
 pkg/trait/trait_test.go              |  1 +
 36 files changed, 96 insertions(+), 52 deletions(-)

diff --git a/addons/master/master.go b/addons/master/master.go
index b28730784..476f68bf8 100644
--- a/addons/master/master.go
+++ b/addons/master/master.go
@@ -112,7 +112,7 @@ func (t *masterTrait) Configure(e *trait.Environment) 
(bool, *trait.TraitConditi
                        }
                }
                if !pointer.BoolDeref(t.Enabled, false) {
-                       return false, 
trait.NewIntegrationConditionUserDisabled(), nil
+                       return false, 
trait.NewIntegrationConditionUserDisabled("Master"), nil
                }
                if t.IncludeDelegateDependencies == nil || 
*t.IncludeDelegateDependencies {
                        t.delegateDependencies = findAdditionalDependencies(e, 
meta)
diff --git a/addons/telemetry/telemetry.go b/addons/telemetry/telemetry.go
index a3975bd04..e77f8b97b 100644
--- a/addons/telemetry/telemetry.go
+++ b/addons/telemetry/telemetry.go
@@ -103,6 +103,7 @@ func (t *telemetryTrait) Configure(e *trait.Environment) 
(bool, *trait.TraitCond
                                if endpoint != "" {
                                        t.L.Infof("Using tracing endpoint: %s", 
endpoint)
                                        condition = 
trait.NewIntegrationCondition(
+                                               "Telemetry",
                                                
v1.IntegrationConditionTraitInfo,
                                                corev1.ConditionTrue,
                                                "TracingEndpoint",
diff --git a/e2e/common/runtimes/runtimes_test.go 
b/e2e/common/runtimes/runtimes_test.go
index 45829d674..dee3ae100 100644
--- a/e2e/common/runtimes/runtimes_test.go
+++ b/e2e/common/runtimes/runtimes_test.go
@@ -54,7 +54,7 @@ func TestSourceLessIntegrations(t *testing.T) {
                        g.Expect(KamelRunWithID(t, ctx, operatorID, ns, 
"--image", "docker.io/squakez/my-camel-main:1.0.0", "--resource", 
"configmap:my-cm-sourceless@/tmp/app/data").Execute()).To(Succeed())
                        g.Eventually(IntegrationPodPhase(t, ctx, ns, itName), 
TestTimeoutShort).Should(Equal(corev1.PodRunning))
                        g.Eventually(IntegrationConditionStatus(t, ctx, ns, 
itName, v1.IntegrationConditionReady), 
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
-                       g.Eventually(IntegrationCondition(t, ctx, ns, itName, 
v1.IntegrationConditionTraitInfo)().Message).Should(Equal("explicitly disabled 
by the platform: integration kit was not created via Camel K operator"))
+                       g.Eventually(IntegrationCondition(t, ctx, ns, itName, 
v1.IntegrationConditionType("JVMTraitInfo"))().Message).Should(Equal("explicitly
 disabled by the platform: integration kit was not created via Camel K 
operator"))
                        g.Eventually(IntegrationLogs(t, ctx, ns, itName), 
TestTimeoutShort).Should(ContainSubstring(cmData["my-file.txt"]))
                        g.Eventually(IntegrationLogs(t, ctx, ns, itName), 
TestTimeoutShort).Should(ContainSubstring("Apache Camel (Main)"))
                })
@@ -64,7 +64,7 @@ func TestSourceLessIntegrations(t *testing.T) {
                        g.Expect(KamelRunWithID(t, ctx, operatorID, ns, 
"--image", "docker.io/squakez/my-camel-sb:1.0.0", "--resource", 
"configmap:my-cm-sourceless@/tmp/app/data").Execute()).To(Succeed())
                        g.Eventually(IntegrationPodPhase(t, ctx, ns, itName), 
TestTimeoutShort).Should(Equal(corev1.PodRunning))
                        g.Eventually(IntegrationConditionStatus(t, ctx, ns, 
itName, v1.IntegrationConditionReady), 
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
-                       g.Eventually(IntegrationCondition(t, ctx, ns, itName, 
v1.IntegrationConditionTraitInfo)().Message).Should(Equal("explicitly disabled 
by the platform: integration kit was not created via Camel K operator"))
+                       g.Eventually(IntegrationCondition(t, ctx, ns, itName, 
v1.IntegrationConditionType("JVMTraitInfo"))().Message).Should(Equal("explicitly
 disabled by the platform: integration kit was not created via Camel K 
operator"))
                        g.Eventually(IntegrationLogs(t, ctx, ns, itName), 
TestTimeoutShort).Should(ContainSubstring(cmData["my-file.txt"]))
                        g.Eventually(IntegrationLogs(t, ctx, ns, itName), 
TestTimeoutShort).Should(ContainSubstring("Spring Boot"))
                })
@@ -74,7 +74,7 @@ func TestSourceLessIntegrations(t *testing.T) {
                        g.Expect(KamelRunWithID(t, ctx, operatorID, ns, 
"--image", "docker.io/squakez/my-camel-quarkus:1.0.0", "--resource", 
"configmap:my-cm-sourceless@/tmp/app/data").Execute()).To(Succeed())
                        g.Eventually(IntegrationPodPhase(t, ctx, ns, itName), 
TestTimeoutShort).Should(Equal(corev1.PodRunning))
                        g.Eventually(IntegrationConditionStatus(t, ctx, ns, 
itName, v1.IntegrationConditionReady), 
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
-                       g.Eventually(IntegrationCondition(t, ctx, ns, itName, 
v1.IntegrationConditionTraitInfo)().Message).Should(Equal("explicitly disabled 
by the platform: integration kit was not created via Camel K operator"))
+                       g.Eventually(IntegrationCondition(t, ctx, ns, itName, 
v1.IntegrationConditionType("JVMTraitInfo"))().Message).Should(Equal("explicitly
 disabled by the platform: integration kit was not created via Camel K 
operator"))
                        g.Eventually(IntegrationLogs(t, ctx, ns, itName), 
TestTimeoutShort).Should(ContainSubstring(cmData["my-file.txt"]))
                        g.Eventually(IntegrationLogs(t, ctx, ns, itName), 
TestTimeoutShort).Should(ContainSubstring("powered by Quarkus"))
                })
diff --git a/e2e/common/traits/builder_test.go 
b/e2e/common/traits/builder_test.go
index e52dc1447..b329f5c2d 100644
--- a/e2e/common/traits/builder_test.go
+++ b/e2e/common/traits/builder_test.go
@@ -185,17 +185,17 @@ func TestBuilderTrait(t *testing.T) {
                        // Check containers conditions
                        g.Eventually(Build(t, ctx, integrationKitNamespace, 
integrationKitName), TestTimeoutShort).ShouldNot(BeNil())
                        g.Eventually(
-                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Container 
custom1 succeeded")).Status,
+                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Containercustom1Succeeded")).Status,
                                
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
                        g.Eventually(
-                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Container 
custom1 succeeded")).Message,
+                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Containercustom1Succeeded")).Message,
                                
TestTimeoutShort).Should(ContainSubstring("generated-bytecode.jar"))
                        g.Eventually(Build(t, ctx, integrationKitNamespace, 
integrationKitName), TestTimeoutShort).ShouldNot(BeNil())
                        g.Eventually(
-                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Container 
custom2 succeeded")).Status,
+                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Containercustom2Succeeded")).Status,
                                
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
                        g.Eventually(
-                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Container 
custom2 succeeded")).Message,
+                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Containercustom2Succeeded")).Message,
                                
TestTimeoutShort).Should(ContainSubstring("</project>"))
 
                        // Check logs
@@ -215,12 +215,12 @@ func TestBuilderTrait(t *testing.T) {
                        // Check containers conditions
                        g.Eventually(Build(t, ctx, integrationKitNamespace, 
integrationKitName), TestTimeoutLong).ShouldNot(BeNil())
                        g.Eventually(BuildConditions(t, ctx, 
integrationKitNamespace, integrationKitName), 
TestTimeoutLong).ShouldNot(BeNil())
-                       g.Eventually(BuildCondition(t, ctx, 
integrationKitNamespace, integrationKitName, v1.BuildConditionType("Container 
custom1 succeeded")), TestTimeoutMedium).ShouldNot(BeNil())
+                       g.Eventually(BuildCondition(t, ctx, 
integrationKitNamespace, integrationKitName, 
v1.BuildConditionType("Containercustom1Succeeded")), 
TestTimeoutMedium).ShouldNot(BeNil())
                        g.Eventually(
-                               BuildCondition(t, ctx, integrationKitNamespace, 
integrationKitName, v1.BuildConditionType("Container custom1 
succeeded"))().Status,
+                               BuildCondition(t, ctx, integrationKitNamespace, 
integrationKitName, 
v1.BuildConditionType("Containercustom1Succeeded"))().Status,
                                
TestTimeoutShort).Should(Equal(corev1.ConditionFalse))
                        g.Eventually(
-                               BuildCondition(t, ctx, integrationKitNamespace, 
integrationKitName, v1.BuildConditionType("Container custom1 
succeeded"))().Message,
+                               BuildCondition(t, ctx, integrationKitNamespace, 
integrationKitName, 
v1.BuildConditionType("Containercustom1Succeeded"))().Message,
                                TestTimeoutShort).Should(ContainSubstring("No 
such file or directory"))
 
                        g.Expect(Kamel(t, ctx, "delete", "--all", "-n", 
ns).Execute()).To(Succeed())
@@ -252,10 +252,10 @@ func TestBuilderTrait(t *testing.T) {
                        // Check containers conditions
                        g.Eventually(Build(t, ctx, integrationKitNamespace, 
integrationKitName), TestTimeoutShort).ShouldNot(BeNil())
                        g.Eventually(
-                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Container 
custom1 succeeded")).Status,
+                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Containercustom1Succeeded")).Status,
                                
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
                        g.Eventually(
-                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Container 
custom1 succeeded")).Message,
+                               Build(t, ctx, integrationKitNamespace, 
integrationKitName)().Status.GetCondition(v1.BuildConditionType("Containercustom1Succeeded")).Message,
                                
TestTimeoutShort).Should(ContainSubstring("</project>"))
 
                        // Check logs
diff --git a/pkg/controller/build/monitor_pod.go 
b/pkg/controller/build/monitor_pod.go
index 506fe105b..e58a85038 100644
--- a/pkg/controller/build/monitor_pod.go
+++ b/pkg/controller/build/monitor_pod.go
@@ -308,7 +308,7 @@ func (action *monitorPodAction) 
setConditionsFromTerminationMessages(ctx context
                        var err error
                        terminationMessage := t.Message
                        // Dynamic condition type (it depends on each container 
name)
-                       containerConditionType := 
v1.BuildConditionType(fmt.Sprintf("Container %s succeeded", container.Name))
+                       containerConditionType := 
v1.BuildConditionType(fmt.Sprintf("Container%sSucceeded", container.Name))
                        containerSucceeded := corev1.ConditionTrue
                        if t.ExitCode != 0 {
                                containerSucceeded = corev1.ConditionFalse
diff --git a/pkg/trait/builder.go b/pkg/trait/builder.go
index d60d4ca8a..48ad9dab0 100644
--- a/pkg/trait/builder.go
+++ b/pkg/trait/builder.go
@@ -165,7 +165,7 @@ func (t *builderTrait) adaptDeprecatedFields() 
*TraitCondition {
                m := "The limit-memory parameter is deprecated and may be 
removed in future releases. Make sure to use tasks-limit-memory parameter 
instead."
                t.L.Info(m)
                if condition == nil {
-                       condition = 
NewIntegrationCondition(v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, "")
+                       condition = NewIntegrationCondition("Builder", 
v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, "")
                }
                condition = newOrAppend(condition, m)
                t.TasksLimitMemory = append(t.TasksLimitMemory, 
fmt.Sprintf("builder:%s", t.LimitMemory))
@@ -176,7 +176,7 @@ func (t *builderTrait) adaptDeprecatedFields() 
*TraitCondition {
 
 func newOrAppend(condition *TraitCondition, message string) *TraitCondition {
        if condition == nil {
-               condition = 
NewIntegrationCondition(v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, message)
+               condition = NewIntegrationCondition("Builder", 
v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, message)
        } else {
                condition.message += "; " + message
        }
diff --git a/pkg/trait/container.go b/pkg/trait/container.go
index e4384f25a..b58842df1 100644
--- a/pkg/trait/container.go
+++ b/pkg/trait/container.go
@@ -88,6 +88,7 @@ func (t *containerTrait) Configure(e *Environment) (bool, 
*TraitCondition, error
                        t.L.ForIntegration(e.Integration).Infof("Integration 
%s/%s contains knative endpoint that cannot run, as knative is not installed in 
the cluster.", e.Integration.Namespace, e.Integration.Name)
                        err := errors.New("integration cannot run, as knative 
is not installed in the cluster")
                        return false, NewIntegrationCondition(
+                               "Container",
                                v1.IntegrationConditionKnativeAvailable,
                                corev1.ConditionFalse,
                                
v1.IntegrationConditionKnativeNotInstalledReason,
diff --git a/pkg/trait/container_probes_test.go 
b/pkg/trait/container_probes_test.go
index d756af65d..87a070f94 100644
--- a/pkg/trait/container_probes_test.go
+++ b/pkg/trait/container_probes_test.go
@@ -185,15 +185,17 @@ func TestProbesOnKnativeService(t *testing.T) {
        env.Integration.Status.Phase = v1.IntegrationPhaseDeploying
 
        serviceOverrideCondition := NewIntegrationCondition(
+               "Service",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
-               "serviceTraitConfiguration",
+               "TraitConfiguration",
                "explicitly disabled by the platform: knative-service trait has 
priority over this trait",
        )
        ctrlStrategyCondition := NewIntegrationCondition(
+               "Deployment",
                v1.IntegrationConditionDeploymentAvailable,
                corev1.ConditionFalse,
-               "deploymentTraitConfiguration",
+               "DeploymentAvailable",
                "controller strategy: knative-service",
        )
 
diff --git a/pkg/trait/container_test.go b/pkg/trait/container_test.go
index 551503e92..6d039cda8 100644
--- a/pkg/trait/container_test.go
+++ b/pkg/trait/container_test.go
@@ -450,6 +450,7 @@ func TestRunKnativeEndpointWithKnativeNotInstalled(t 
*testing.T) {
                },
        }
        expectedCondition := NewIntegrationCondition(
+               "Container",
                v1.IntegrationConditionKnativeAvailable,
                corev1.ConditionFalse,
                v1.IntegrationConditionKnativeNotInstalledReason,
diff --git a/pkg/trait/cron.go b/pkg/trait/cron.go
index 0a7a69cb0..adf04f0c3 100644
--- a/pkg/trait/cron.go
+++ b/pkg/trait/cron.go
@@ -78,7 +78,7 @@ func (t *cronTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("Cron"), nil
        }
        if !e.IntegrationInPhase(v1.IntegrationPhaseInitialization) && 
!e.IntegrationInRunningPhases() {
                return false, nil, nil
@@ -86,6 +86,7 @@ func (t *cronTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
 
        if _, ok := e.CamelCatalog.Runtime.Capabilities[v1.CapabilityCron]; !ok 
{
                return false, NewIntegrationCondition(
+                       "Cron",
                        v1.IntegrationConditionCronJobAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionCronJobNotAvailableReason,
@@ -97,6 +98,7 @@ func (t *cronTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
                globalCron, err := t.getGlobalCron(e)
                if err != nil {
                        return false, NewIntegrationCondition(
+                               "Cron",
                                v1.IntegrationConditionCronJobAvailable,
                                corev1.ConditionFalse,
                                
v1.IntegrationConditionCronJobNotAvailableReason,
@@ -140,6 +142,7 @@ func (t *cronTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
                var condition *TraitCondition
                if e.IntegrationInPhase(v1.IntegrationPhaseDeploying) {
                        condition = NewIntegrationCondition(
+                               "Cron",
                                v1.IntegrationConditionCronJobAvailable,
                                corev1.ConditionFalse,
                                
v1.IntegrationConditionCronJobNotAvailableReason,
@@ -153,6 +156,7 @@ func (t *cronTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
        strategy, err := e.DetermineControllerStrategy()
        if err != nil {
                return false, NewIntegrationCondition(
+                       "Cron",
                        v1.IntegrationConditionCronJobAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionCronJobNotAvailableReason,
diff --git a/pkg/trait/cron_test.go b/pkg/trait/cron_test.go
index 4e446600b..1f1084469 100644
--- a/pkg/trait/cron_test.go
+++ b/pkg/trait/cron_test.go
@@ -522,9 +522,10 @@ func TestCronWithActiveDeadline(t *testing.T) {
        tc := NewCatalog(c)
 
        expectedCondition := NewIntegrationCondition(
+               "Deployment",
                v1.IntegrationConditionDeploymentAvailable,
                corev1.ConditionFalse,
-               "deploymentTraitConfiguration",
+               "DeploymentAvailable",
                "controller strategy: cron-job",
        )
        conditions, err := tc.apply(&environment)
@@ -610,9 +611,10 @@ func TestCronWithBackoffLimit(t *testing.T) {
        tc := NewCatalog(c)
 
        expectedCondition := NewIntegrationCondition(
+               "Deployment",
                v1.IntegrationConditionDeploymentAvailable,
                corev1.ConditionFalse,
-               "deploymentTraitConfiguration",
+               "DeploymentAvailable",
                "controller strategy: cron-job",
        )
        conditions, err := tc.apply(&environment)
diff --git a/pkg/trait/deployment.go b/pkg/trait/deployment.go
index 84ab52eac..600a843f0 100644
--- a/pkg/trait/deployment.go
+++ b/pkg/trait/deployment.go
@@ -57,6 +57,7 @@ func (t *deploymentTrait) Configure(e *Environment) (bool, 
*TraitCondition, erro
        strategy, err := e.DetermineControllerStrategy()
        if err != nil {
                return false, NewIntegrationCondition(
+                       "Deployment",
                        v1.IntegrationConditionDeploymentAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionDeploymentAvailableReason,
@@ -66,6 +67,7 @@ func (t *deploymentTrait) Configure(e *Environment) (bool, 
*TraitCondition, erro
 
        if strategy != ControllerStrategyDeployment {
                return false, NewIntegrationCondition(
+                       "Deployment",
                        v1.IntegrationConditionDeploymentAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionDeploymentAvailableReason,
diff --git a/pkg/trait/gc.go b/pkg/trait/gc.go
index ef309c9eb..5598c1c70 100644
--- a/pkg/trait/gc.go
+++ b/pkg/trait/gc.go
@@ -66,7 +66,7 @@ func (t *gcTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("GC"), nil
        }
 
        return e.IntegrationInPhase(v1.IntegrationPhaseInitialization) || 
e.IntegrationInRunningPhases(), nil, nil
diff --git a/pkg/trait/gc_test.go b/pkg/trait/gc_test.go
index 6908df715..406b00e45 100644
--- a/pkg/trait/gc_test.go
+++ b/pkg/trait/gc_test.go
@@ -44,6 +44,7 @@ func TestConfigureDisabledGCTraitDoesNotSucceed(t *testing.T) 
{
        gcTrait.Enabled = pointer.Bool(false)
 
        expectedCondition := NewIntegrationCondition(
+               "GC",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
                "TraitConfiguration",
diff --git a/pkg/trait/ingress.go b/pkg/trait/ingress.go
index f240f10d9..a9742cfbc 100644
--- a/pkg/trait/ingress.go
+++ b/pkg/trait/ingress.go
@@ -61,6 +61,7 @@ func (t *ingressTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
        }
        if !pointer.BoolDeref(t.Enabled, true) {
                return false, NewIntegrationCondition(
+                       "Ingress",
                        v1.IntegrationConditionExposureAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionIngressNotAvailableReason,
diff --git a/pkg/trait/ingress_test.go b/pkg/trait/ingress_test.go
index df71b2d68..29e9ddc94 100644
--- a/pkg/trait/ingress_test.go
+++ b/pkg/trait/ingress_test.go
@@ -50,6 +50,7 @@ func TestConfigureDisabledIngressTraitDoesNotSucceed(t 
*testing.T) {
        ingressTrait.Enabled = pointer.Bool(false)
 
        expectedCondition := NewIntegrationCondition(
+               "Ingress",
                v1.IntegrationConditionExposureAvailable,
                corev1.ConditionFalse,
                v1.IntegrationConditionIngressNotAvailableReason,
diff --git a/pkg/trait/jvm.go b/pkg/trait/jvm.go
index ab11617ff..c9e3b3264 100644
--- a/pkg/trait/jvm.go
+++ b/pkg/trait/jvm.go
@@ -57,7 +57,7 @@ func newJvmTrait() Trait {
 
 func (t *jvmTrait) Configure(e *Environment) (bool, *TraitCondition, error) {
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("JVM"), nil
        }
        if !e.IntegrationKitInPhase(v1.IntegrationKitPhaseReady) || 
!e.IntegrationInRunningPhases() {
                return false, nil, nil
@@ -66,15 +66,15 @@ func (t *jvmTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
        // The JVM trait must be disabled in case the current IntegrationKit 
corresponds to a native build
        if qt := e.Catalog.GetTrait(quarkusTraitID); qt != nil {
                if quarkus, ok := qt.(*quarkusTrait); ok && 
quarkus.isNativeIntegration(e) {
-                       return false, 
newIntegrationConditionPlatformDisabledWithMessage("quarkus native build"), nil
+                       return false, 
newIntegrationConditionPlatformDisabledWithMessage("JVM", "quarkus native 
build"), nil
                }
        }
 
        if e.IntegrationKit != nil && e.IntegrationKit.IsExternal() {
                if pointer.BoolDeref(t.Enabled, false) {
-                       return true, 
NewIntegrationConditionUserEnabledWithMessage("integration kit was not created 
via Camel K operator"), nil
+                       return true, 
NewIntegrationConditionUserEnabledWithMessage("JVM", "integration kit was not 
created via Camel K operator"), nil
                } else {
-                       return false, 
newIntegrationConditionPlatformDisabledWithMessage("integration kit was not 
created via Camel K operator"), nil
+                       return false, 
newIntegrationConditionPlatformDisabledWithMessage("JVM", "integration kit was 
not created via Camel K operator"), nil
                }
        }
 
diff --git a/pkg/trait/jvm_test.go b/pkg/trait/jvm_test.go
index f48d890db..b3f33f65d 100644
--- a/pkg/trait/jvm_test.go
+++ b/pkg/trait/jvm_test.go
@@ -81,6 +81,7 @@ func TestConfigureJvmTraitInWrongJvmDisabled(t *testing.T) {
        trait.Enabled = pointer.Bool(false)
 
        expectedCondition := NewIntegrationCondition(
+               "JVM",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
                "TraitConfiguration",
@@ -97,6 +98,7 @@ func 
TestConfigureJvmTraitInWrongIntegrationKitPhaseExternal(t *testing.T) {
        trait, environment := 
createNominalJvmTest(v1.IntegrationKitTypeExternal)
 
        expectedCondition := NewIntegrationCondition(
+               "JVM",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
                "TraitConfiguration",
@@ -114,6 +116,7 @@ func 
TestConfigureJvmTraitInRightIntegrationKitPhaseExternalAndJvmEnabled(t *tes
        trait.Enabled = pointer.Bool(true)
 
        expectedCondition := NewIntegrationCondition(
+               "JVM",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
                "TraitConfiguration",
diff --git a/pkg/trait/kamelets.go b/pkg/trait/kamelets.go
index 607d41a05..280501848 100644
--- a/pkg/trait/kamelets.go
+++ b/pkg/trait/kamelets.go
@@ -77,7 +77,7 @@ func (t *kameletsTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("Kamelets"), 
nil
        }
        if !e.IntegrationInPhase(v1.IntegrationPhaseInitialization) && 
!e.IntegrationInRunningPhases() {
                return false, nil, nil
diff --git a/pkg/trait/knative.go b/pkg/trait/knative.go
index 5de71160c..312a1af4b 100644
--- a/pkg/trait/knative.go
+++ b/pkg/trait/knative.go
@@ -71,7 +71,7 @@ func (t *knativeTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("Knative"), 
nil
        }
        if !e.IntegrationInPhase(v1.IntegrationPhaseInitialization) && 
!e.IntegrationInRunningPhases() {
                return false, nil, nil
diff --git a/pkg/trait/knative_service.go b/pkg/trait/knative_service.go
index 7d667881a..e8baaf7d6 100644
--- a/pkg/trait/knative_service.go
+++ b/pkg/trait/knative_service.go
@@ -75,6 +75,7 @@ func (t *knativeServiceTrait) Configure(e *Environment) 
(bool, *TraitCondition,
        }
        if !pointer.BoolDeref(t.Enabled, true) {
                return false, NewIntegrationCondition(
+                       "KnativeService",
                        v1.IntegrationConditionKnativeServiceAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionKnativeServiceNotAvailableReason,
@@ -89,6 +90,7 @@ func (t *knativeServiceTrait) Configure(e *Environment) 
(bool, *TraitCondition,
        if e.Resources.GetDeploymentForIntegration(e.Integration) != nil {
                // A controller is already present for the integration
                return false, NewIntegrationCondition(
+                       "KnativeService",
                        v1.IntegrationConditionKnativeServiceAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionKnativeServiceNotAvailableReason,
@@ -99,6 +101,7 @@ func (t *knativeServiceTrait) Configure(e *Environment) 
(bool, *TraitCondition,
        strategy, err := e.DetermineControllerStrategy()
        if err != nil {
                return false, NewIntegrationCondition(
+                       "KnativeService",
                        v1.IntegrationConditionKnativeServiceAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionKnativeServiceNotAvailableReason,
@@ -107,6 +110,7 @@ func (t *knativeServiceTrait) Configure(e *Environment) 
(bool, *TraitCondition,
        }
        if strategy != ControllerStrategyKnativeService {
                return false, NewIntegrationCondition(
+                       "KnativeService",
                        v1.IntegrationConditionKnativeServiceAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionKnativeServiceNotAvailableReason,
diff --git a/pkg/trait/logging.go b/pkg/trait/logging.go
index dafd331a7..97b028b85 100644
--- a/pkg/trait/logging.go
+++ b/pkg/trait/logging.go
@@ -54,7 +54,7 @@ func (l loggingTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
        }
 
        if !pointer.BoolDeref(l.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("Logging"), 
nil
        }
 
        return e.IntegrationInRunningPhases(), nil, nil
diff --git a/pkg/trait/mount.go b/pkg/trait/mount.go
index e48e15353..76cd01d0e 100644
--- a/pkg/trait/mount.go
+++ b/pkg/trait/mount.go
@@ -190,6 +190,7 @@ func (t *mountTrait) addImplicitKameletsSecrets(e 
*Environment) *TraitCondition
                kamelets, ok := trait.(*kameletsTrait)
                if !ok {
                        return NewIntegrationCondition(
+                               "Mount",
                                v1.IntegrationConditionTraitInfo,
                                corev1.ConditionTrue,
                                traitConfigurationReason,
@@ -202,6 +203,7 @@ func (t *mountTrait) addImplicitKameletsSecrets(e 
*Environment) *TraitCondition
                implicitKameletSecrets, err := 
kamelets.listConfigurationSecrets(e)
                if err != nil {
                        return NewIntegrationCondition(
+                               "Mount",
                                v1.IntegrationConditionTraitInfo,
                                corev1.ConditionTrue,
                                traitConfigurationReason,
@@ -216,6 +218,7 @@ func (t *mountTrait) addImplicitKameletsSecrets(e 
*Environment) *TraitCondition
 
        if featureUsed {
                return NewIntegrationCondition(
+                       "Mount",
                        v1.IntegrationConditionTraitInfo,
                        corev1.ConditionTrue,
                        traitConfigurationReason,
diff --git a/pkg/trait/owner.go b/pkg/trait/owner.go
index 20bab1952..3b5c8f428 100644
--- a/pkg/trait/owner.go
+++ b/pkg/trait/owner.go
@@ -44,7 +44,7 @@ func (t *ownerTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("Owner"), nil
        }
 
        return e.IntegrationInPhase(v1.IntegrationPhaseInitialization) || 
e.IntegrationInRunningPhases(), nil, nil
diff --git a/pkg/trait/pod.go b/pkg/trait/pod.go
index 5233bd513..12fc35df6 100644
--- a/pkg/trait/pod.go
+++ b/pkg/trait/pod.go
@@ -49,7 +49,7 @@ func (t *podTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, NewIntegrationConditionUserDisabled("Pod"), nil
        }
        if e.Integration.Spec.PodTemplate == nil {
                return false, nil, nil
diff --git a/pkg/trait/pull_secret.go b/pkg/trait/pull_secret.go
index 829a7920f..c2fb33a67 100644
--- a/pkg/trait/pull_secret.go
+++ b/pkg/trait/pull_secret.go
@@ -49,7 +49,7 @@ func (t *pullSecretTrait) Configure(e *Environment) (bool, 
*TraitCondition, erro
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, 
NewIntegrationConditionUserDisabled("PullSecret"), nil
        }
        if !e.IntegrationInRunningPhases() {
                return false, nil, nil
diff --git a/pkg/trait/quarkus.go b/pkg/trait/quarkus.go
index 6b75d4b97..1140029be 100644
--- a/pkg/trait/quarkus.go
+++ b/pkg/trait/quarkus.go
@@ -161,7 +161,7 @@ func (t *quarkusTrait) adaptDeprecatedFields() 
*TraitCondition {
                                t.Modes = append(t.Modes, 
traitv1.JvmQuarkusMode)
                        }
                }
-               return 
NewIntegrationCondition(v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, message)
+               return NewIntegrationCondition("Quarkus", 
v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, message)
        }
 
        return nil
diff --git a/pkg/trait/registry.go b/pkg/trait/registry.go
index 906e6f7fa..29c9c3497 100644
--- a/pkg/trait/registry.go
+++ b/pkg/trait/registry.go
@@ -62,6 +62,7 @@ func (t *registryTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
        enabled := e.IntegrationKitInPhase(v1.IntegrationKitPhaseBuildSubmitted)
        if enabled {
                condition := NewIntegrationCondition(
+                       "Registry",
                        v1.IntegrationConditionTraitInfo,
                        corev1.ConditionTrue,
                        traitConfigurationReason,
diff --git a/pkg/trait/route.go b/pkg/trait/route.go
index 101f5c326..6816352e7 100644
--- a/pkg/trait/route.go
+++ b/pkg/trait/route.go
@@ -60,6 +60,7 @@ func (t *routeTrait) Configure(e *Environment) (bool, 
*TraitCondition, error) {
        }
        if !pointer.BoolDeref(t.Enabled, true) {
                return false, NewIntegrationCondition(
+                       "Route",
                        v1.IntegrationConditionExposureAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionRouteNotAvailableReason,
diff --git a/pkg/trait/route_test.go b/pkg/trait/route_test.go
index 00c9527db..0c1bd2238 100644
--- a/pkg/trait/route_test.go
+++ b/pkg/trait/route_test.go
@@ -235,9 +235,10 @@ func TestRoute_Disabled(t *testing.T) {
        }
 
        expectedCondition := NewIntegrationCondition(
+               "Route",
                v1.IntegrationConditionExposureAvailable,
                corev1.ConditionFalse,
-               "routeTraitConfiguration",
+               "RouteNotAvailable",
                "explicitly disabled",
        )
        traitsCatalog := environment.Catalog
diff --git a/pkg/trait/service.go b/pkg/trait/service.go
index 1bcb499e5..b2e081ab2 100644
--- a/pkg/trait/service.go
+++ b/pkg/trait/service.go
@@ -49,6 +49,7 @@ func (t *serviceTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
        }
        if !pointer.BoolDeref(t.Enabled, true) {
                return false, NewIntegrationCondition(
+                       "Service",
                        v1.IntegrationConditionServiceAvailable,
                        corev1.ConditionFalse,
                        v1.IntegrationConditionServiceNotAvailableReason,
@@ -61,7 +62,7 @@ func (t *serviceTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
        if e.GetTrait(knativeServiceTraitID) != nil {
                knativeServiceTrait, _ := 
e.GetTrait(knativeServiceTraitID).(*knativeServiceTrait)
                if pointer.BoolDeref(knativeServiceTrait.Enabled, true) {
-                       return false, 
newIntegrationConditionPlatformDisabledWithMessage("knative-service trait has 
priority over this trait"), nil
+                       return false, 
newIntegrationConditionPlatformDisabledWithMessage("Service", "knative-service 
trait has priority over this trait"), nil
                }
        }
 
@@ -74,6 +75,7 @@ func (t *serviceTrait) Configure(e *Environment) (bool, 
*TraitCondition, error)
                var condition *TraitCondition
                if err != nil {
                        condition = NewIntegrationCondition(
+                               "Service",
                                v1.IntegrationConditionServiceAvailable,
                                corev1.ConditionFalse,
                                
v1.IntegrationConditionServiceNotAvailableReason,
diff --git a/pkg/trait/service_binding.go b/pkg/trait/service_binding.go
index 2bb1758ee..5921499af 100644
--- a/pkg/trait/service_binding.go
+++ b/pkg/trait/service_binding.go
@@ -68,7 +68,7 @@ func (t *serviceBindingTrait) Configure(e *Environment) 
(bool, *TraitCondition,
                return false, nil, nil
        }
        if !pointer.BoolDeref(t.Enabled, true) {
-               return false, NewIntegrationConditionUserDisabled(), nil
+               return false, 
NewIntegrationConditionUserDisabled("ServiceBinding"), nil
        }
        if len(t.Services) == 0 {
                return false, nil, nil
diff --git a/pkg/trait/service_test.go b/pkg/trait/service_test.go
index edbd412eb..1769110f9 100644
--- a/pkg/trait/service_test.go
+++ b/pkg/trait/service_test.go
@@ -489,15 +489,17 @@ func TestServiceWithKnativeServiceEnabled(t *testing.T) {
        environment.Platform.ResyncStatusFullConfig()
 
        deploymentCondition := NewIntegrationCondition(
+               "Deployment",
                v1.IntegrationConditionDeploymentAvailable,
                corev1.ConditionFalse,
-               "deploymentTraitConfiguration",
+               "DeploymentAvailable",
                "controller strategy: knative-service",
        )
        serviceCondition := NewIntegrationCondition(
+               "Service",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
-               "serviceTraitConfiguration",
+               "TraitConfiguration",
                "explicitly disabled by the platform: knative-service trait has 
priority over this trait",
        )
        conditions, err := traitCatalog.apply(&environment)
@@ -566,15 +568,17 @@ func TestServicesWithKnativeProfile(t *testing.T) {
        environment.Platform.ResyncStatusFullConfig()
 
        deploymentCondition := NewIntegrationCondition(
+               "Deployment",
                v1.IntegrationConditionDeploymentAvailable,
                corev1.ConditionFalse,
-               "deploymentTraitConfiguration",
+               "DeploymentAvailable",
                "controller strategy: knative-service",
        )
        serviceCondition := NewIntegrationCondition(
+               "Service",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
-               "serviceTraitConfiguration",
+               "TraitConfiguration",
                "explicitly disabled by the platform: knative-service trait has 
priority over this trait",
        )
        conditions, err := traitCatalog.apply(&environment)
@@ -651,9 +655,10 @@ func 
TestServiceWithKnativeServiceDisabledInIntegrationPlatform(t *testing.T) {
        environment.Platform.ResyncStatusFullConfig()
 
        expectedCondition := NewIntegrationCondition(
+               "KnativeService",
                v1.IntegrationConditionKnativeServiceAvailable,
                corev1.ConditionFalse,
-               "knative-serviceTraitConfiguration",
+               "KnativeServiceNotAvailable",
                "explicitly disabled",
        )
        conditions, err := traitCatalog.apply(&environment)
diff --git a/pkg/trait/trait_catalog.go b/pkg/trait/trait_catalog.go
index 8bbcf4bd3..867c75814 100644
--- a/pkg/trait/trait_catalog.go
+++ b/pkg/trait/trait_catalog.go
@@ -104,7 +104,6 @@ func (c *Catalog) apply(environment *Environment) 
([]*TraitCondition, error) {
                applicable = true
                enabled, condition, err := trait.Configure(environment)
                if condition != nil {
-                       condition.reason = fmt.Sprintf("%sTraitConfiguration", 
trait.ID())
                        traitsConditions = append(traitsConditions, condition)
                }
                if err != nil {
@@ -150,7 +149,7 @@ func (c *Catalog) executedTraitCondition(executedTrait 
[]Trait) *TraitCondition
        message := fmt.Sprintf("Applied traits: %s", strings.Join(traitIds, 
","))
        c.L.Debugf(message)
 
-       return NewIntegrationCondition(v1.IntegrationConditionTraitInfo, 
corev1.ConditionTrue, traitConfigurationReason, message)
+       return NewIntegrationCondition("", v1.IntegrationConditionTraitInfo, 
corev1.ConditionTrue, traitConfigurationReason, message)
 }
 
 // GetTrait returns the trait with the given ID.
diff --git a/pkg/trait/trait_condition_types.go 
b/pkg/trait/trait_condition_types.go
index 05f9ac4a4..2f245ea8e 100644
--- a/pkg/trait/trait_condition_types.go
+++ b/pkg/trait/trait_condition_types.go
@@ -35,6 +35,7 @@ const (
 // TraitCondition is used to get all information/warning about a trait 
configuration.
 // It should either use an IntegrationConditionType or 
IntegrationKitConditionType.
 type TraitCondition struct {
+       traitID                     string
        integrationConditionType    v1.IntegrationConditionType
        integrationKitConditionType v1.IntegrationKitConditionType
        conditionStatus             corev1.ConditionStatus
@@ -42,8 +43,9 @@ type TraitCondition struct {
        reason                      string
 }
 
-func NewIntegrationCondition(ict v1.IntegrationConditionType, cs 
corev1.ConditionStatus, reason, message string) *TraitCondition {
+func NewIntegrationCondition(traitID string, ict v1.IntegrationConditionType, 
cs corev1.ConditionStatus, reason, message string) *TraitCondition {
        return &TraitCondition{
+               traitID:                  traitID,
                integrationConditionType: ict,
                conditionStatus:          cs,
                reason:                   reason,
@@ -51,22 +53,28 @@ func NewIntegrationCondition(ict 
v1.IntegrationConditionType, cs corev1.Conditio
        }
 }
 
-func NewIntegrationConditionUserDisabled() *TraitCondition {
-       return NewIntegrationCondition(v1.IntegrationConditionTraitInfo, 
corev1.ConditionTrue, traitConfigurationReason, userDisabledMessage)
+func NewIntegrationConditionUserDisabled(traitID string) *TraitCondition {
+       return NewIntegrationCondition(traitID, 
v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, userDisabledMessage)
 }
 
-func NewIntegrationConditionUserEnabledWithMessage(message string) 
*TraitCondition {
-       return NewIntegrationCondition(v1.IntegrationConditionTraitInfo, 
corev1.ConditionTrue, traitConfigurationReason, fmt.Sprintf("%s: %s", 
userEnabledMessage, message))
+func NewIntegrationConditionUserEnabledWithMessage(traitID string, message 
string) *TraitCondition {
+       return NewIntegrationCondition(traitID, 
v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, fmt.Sprintf("%s: %s", userEnabledMessage, message))
 }
 
-func newIntegrationConditionPlatformDisabledWithMessage(message string) 
*TraitCondition {
-       return NewIntegrationCondition(v1.IntegrationConditionTraitInfo, 
corev1.ConditionTrue, traitConfigurationReason, fmt.Sprintf("%s: %s", 
platformDisabledMessage, message))
+func newIntegrationConditionPlatformDisabledWithMessage(traitID string, 
message string) *TraitCondition {
+       return NewIntegrationCondition(traitID, 
v1.IntegrationConditionTraitInfo, corev1.ConditionTrue, 
traitConfigurationReason, fmt.Sprintf("%s: %s", platformDisabledMessage, 
message))
 }
 
 func (tc *TraitCondition) integrationCondition() (v1.IntegrationConditionType, 
corev1.ConditionStatus, string, string) {
-       return tc.integrationConditionType, tc.conditionStatus, tc.reason, 
tc.message
+       return v1.IntegrationConditionType(fmt.Sprintf("%s%s", tc.traitID, 
tc.integrationConditionType)),
+               tc.conditionStatus,
+               tc.reason,
+               tc.message
 }
 
 func (tc *TraitCondition) integrationKitCondition() 
(v1.IntegrationKitConditionType, corev1.ConditionStatus, string, string) {
-       return tc.integrationKitConditionType, tc.conditionStatus, tc.reason, 
tc.message
+       return v1.IntegrationKitConditionType(fmt.Sprintf("%s%s", tc.traitID, 
tc.integrationKitConditionType)),
+               tc.conditionStatus,
+               tc.reason,
+               tc.message
 }
diff --git a/pkg/trait/trait_test.go b/pkg/trait/trait_test.go
index ce750a199..db1dc7cf8 100644
--- a/pkg/trait/trait_test.go
+++ b/pkg/trait/trait_test.go
@@ -557,6 +557,7 @@ func TestExecutedTraitsCondition(t *testing.T) {
        require.NoError(t, err)
 
        expectedCondition := NewIntegrationCondition(
+               "",
                v1.IntegrationConditionTraitInfo,
                corev1.ConditionTrue,
                "TraitConfiguration",


Reply via email to