diff --git a/pkg/controller/kamelet/initialize.go b/pkg/controller/kamelet/initialize.go
index e1f4360..0b3f0aa 100644
--- a/pkg/controller/kamelet/initialize.go
+++ b/pkg/controller/kamelet/initialize.go
@@ -19,6 +19,7 @@
 
 import (
 	"context"
+
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 )
 
diff --git a/pkg/controller/kamelet/kamelet_controller.go b/pkg/controller/kamelet/kamelet_controller.go
index baad186..0522a59 100644
--- a/pkg/controller/kamelet/kamelet_controller.go
+++ b/pkg/controller/kamelet/kamelet_controller.go
@@ -19,14 +19,14 @@
 
 import (
 	"context"
-	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 	"time"
 
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/client"
 	camelevent "github.com/apache/camel-k/pkg/event"
 	"k8s.io/apimachinery/pkg/api/errors"
 	"k8s.io/apimachinery/pkg/runtime"
 	"k8s.io/client-go/tools/record"
-
 	k8sclient "sigs.k8s.io/controller-runtime/pkg/client"
 	"sigs.k8s.io/controller-runtime/pkg/controller"
 	"sigs.k8s.io/controller-runtime/pkg/event"
@@ -35,8 +35,6 @@
 	"sigs.k8s.io/controller-runtime/pkg/predicate"
 	"sigs.k8s.io/controller-runtime/pkg/reconcile"
 	"sigs.k8s.io/controller-runtime/pkg/source"
-
-	"github.com/apache/camel-k/pkg/client"
 )
 
 // Add creates a new Kamelet Controller and adds it to the Manager. The Manager will set fields on the Controller
diff --git a/pkg/event/manager.go b/pkg/event/manager.go
index 93e27f9..a2b2eb8 100644
--- a/pkg/event/manager.go
+++ b/pkg/event/manager.go
@@ -20,9 +20,9 @@
 import (
 	"context"
 	"fmt"
-	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 
 	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 	"github.com/apache/camel-k/pkg/client"
 	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/apache/camel-k/pkg/util/log"
diff --git a/pkg/trait/dependencies.go b/pkg/trait/dependencies.go
index 4a704b6..5fc0264 100644
--- a/pkg/trait/dependencies.go
+++ b/pkg/trait/dependencies.go
@@ -19,14 +19,12 @@
 
 import (
 	"fmt"
-	"github.com/apache/camel-k/pkg/util/kubernetes"
-
-	"github.com/apache/camel-k/pkg/metadata"
-
-	"github.com/scylladb/go-set/strset"
 
 	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
+	"github.com/apache/camel-k/pkg/metadata"
 	"github.com/apache/camel-k/pkg/util"
+	"github.com/apache/camel-k/pkg/util/kubernetes"
+	"github.com/scylladb/go-set/strset"
 )
 
 // The Dependencies trait is internally used to automatically add runtime dependencies based on the
diff --git a/pkg/trait/kamelets.go b/pkg/trait/kamelets.go
index 994ddcb..d1b3bef 100644
--- a/pkg/trait/kamelets.go
+++ b/pkg/trait/kamelets.go
@@ -20,8 +20,6 @@
 import (
 	"encoding/json"
 	"fmt"
-	"github.com/apache/camel-k/pkg/util/flow"
-	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"regexp"
 	"sort"
 	"strconv"
@@ -32,6 +30,8 @@
 	"github.com/apache/camel-k/pkg/metadata"
 	"github.com/apache/camel-k/pkg/util"
 	"github.com/apache/camel-k/pkg/util/digest"
+	"github.com/apache/camel-k/pkg/util/flow"
+	"github.com/apache/camel-k/pkg/util/kubernetes"
 	corev1 "k8s.io/api/core/v1"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 	"sigs.k8s.io/controller-runtime/pkg/client"
@@ -61,6 +61,9 @@
 }
 
 const (
+	contentKey = "content"
+	schemaKey  = "schema"
+
 	kameletLabel              = "camel.apache.org/kamelet"
 	kameletConfigurationLabel = "camel.apache.org/kamelet.configuration"
 )
@@ -148,7 +151,7 @@
 }
 
 func (t *kameletsTrait) addKameletAsSource(e *Environment, kamelet v1alpha1.Kamelet) error {
-	var sources []v1.SourceSpec
+	sources := make([]v1.SourceSpec, 0)
 
 	if kamelet.Spec.Flow != nil {
 
@@ -321,8 +324,8 @@
 			},
 		},
 		Data: map[string]string{
-			"content": source.Content,
-			"schema":  string(schema),
+			contentKey: source.Content,
+			schemaKey:  string(schema),
 		},
 	}
 
@@ -331,7 +334,7 @@
 	target := source.DeepCopy()
 	target.Content = ""
 	target.ContentRef = name
-	target.ContentKey = "content"
+	target.ContentKey = contentKey
 	return *target, nil
 }
 
diff --git a/pkg/trait/kamelets_test.go b/pkg/trait/kamelets_test.go
index d2a1321..4f37b1d 100644
--- a/pkg/trait/kamelets_test.go
+++ b/pkg/trait/kamelets_test.go
@@ -98,6 +98,7 @@
 				"camel:log",
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	})
 	enabled, err := trait.Configure(environment)
 	assert.NoError(t, err)
@@ -146,6 +147,7 @@
 				},
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	})
 	enabled, err := trait.Configure(environment)
 	assert.NoError(t, err)
@@ -196,6 +198,7 @@
 				},
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	})
 	enabled, err := trait.Configure(environment)
 	assert.NoError(t, err)
@@ -242,6 +245,7 @@
 				},
 			}),
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	})
 	enabled, err := trait.Configure(environment)
 	assert.NoError(t, err)
@@ -284,6 +288,7 @@
 				"camel:xxx",
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	}, &v1alpha1.Kamelet{
 		ObjectMeta: metav1.ObjectMeta{
 			Namespace: "test",
@@ -307,6 +312,7 @@
 				"camel:tbd",
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	})
 	enabled, err := trait.Configure(environment)
 	assert.NoError(t, err)
@@ -368,6 +374,7 @@
 				"camel:log",
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	}, &corev1.Secret{
 		ObjectMeta: metav1.ObjectMeta{
 			Namespace: "test",
@@ -430,6 +437,7 @@
 				"camel:log",
 			},
 		},
+		Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady},
 	}, &corev1.Secret{
 		ObjectMeta: metav1.ObjectMeta{
 			Namespace: "test",
@@ -516,6 +524,6 @@
 	if err != nil {
 		panic(err)
 	}
-	f := v1.Flow{data}
+	f := v1.Flow{RawMessage: data}
 	return &f
 }
diff --git a/pkg/trait/knative_service_test.go b/pkg/trait/knative_service_test.go
index dcf0f65..9406d32 100644
--- a/pkg/trait/knative_service_test.go
+++ b/pkg/trait/knative_service_test.go
@@ -21,17 +21,16 @@
 	"context"
 	"testing"
 
-	"github.com/stretchr/testify/assert"
-
-	corev1 "k8s.io/api/core/v1"
-	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
-	serving "knative.dev/serving/pkg/apis/serving/v1"
-
 	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
 	"github.com/apache/camel-k/pkg/util/camel"
 	"github.com/apache/camel-k/pkg/util/envvar"
+	"github.com/apache/camel-k/pkg/util/gzip"
 	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/apache/camel-k/pkg/util/test"
+	"github.com/stretchr/testify/assert"
+	corev1 "k8s.io/api/core/v1"
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	serving "knative.dev/serving/pkg/apis/serving/v1"
 )
 
 const (
@@ -45,6 +44,9 @@
 
 	traitCatalog := NewCatalog(context.TODO(), nil)
 
+	compressedRoute, err := gzip.CompressBase64([]byte(`from("undertow:test").log("hello")`))
+	assert.NoError(t, err)
+
 	environment := Environment{
 		CamelCatalog: catalog,
 		Catalog:      traitCatalog,
@@ -62,7 +64,7 @@
 					{
 						DataSpec: v1.DataSpec{
 							Name:        "routes.js",
-							Content:     `from("undertow:test").log("hello")`,
+							Content:     string(compressedRoute),
 							Compression: true,
 						},
 						Language: v1.LanguageJavaScript,
diff --git a/pkg/trait/service_test.go b/pkg/trait/service_test.go
index 61e5597..372dc2f 100644
--- a/pkg/trait/service_test.go
+++ b/pkg/trait/service_test.go
@@ -21,15 +21,14 @@
 	"context"
 	"testing"
 
+	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
+	"github.com/apache/camel-k/pkg/util/camel"
+	"github.com/apache/camel-k/pkg/util/gzip"
+	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/stretchr/testify/assert"
-
 	appsv1 "k8s.io/api/apps/v1"
 	corev1 "k8s.io/api/core/v1"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
-
-	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
-	"github.com/apache/camel-k/pkg/util/camel"
-	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/apache/camel-k/pkg/util/test"
 )
 
@@ -44,6 +43,9 @@
 
 	traitCatalog := NewCatalog(context.TODO(), nil)
 
+	compressedRoute, err := gzip.CompressBase64([]byte(`from("undertow:test").log("hello")`))
+	assert.NoError(t, err)
+
 	environment := Environment{
 		CamelCatalog: catalog,
 		Catalog:      traitCatalog,
@@ -61,7 +63,7 @@
 					{
 						DataSpec: v1.DataSpec{
 							Name:        "routes.js",
-							Content:     `from("undertow:test").log("hello")`,
+							Content:     string(compressedRoute),
 							Compression: true,
 						},
 						Language: v1.LanguageJavaScript,
@@ -130,6 +132,9 @@
 
 	traitCatalog := NewCatalog(context.TODO(), nil)
 
+	compressedRoute, err := gzip.CompressBase64([]byte(`from("undertow:test").log("hello")`))
+	assert.NoError(t, err)
+
 	environment := Environment{
 		CamelCatalog: catalog,
 		Catalog:      traitCatalog,
@@ -147,7 +152,7 @@
 					{
 						DataSpec: v1.DataSpec{
 							Name:        "routes.js",
-							Content:     `from("undertow:test").log("hello")`,
+							Content:     string(compressedRoute),
 							Compression: true,
 						},
 						Language: v1.LanguageJavaScript,
@@ -295,6 +300,9 @@
 
 	traitCatalog := NewCatalog(context.TODO(), nil)
 
+	compressedRoute, err := gzip.CompressBase64([]byte(`from("undertow:test").log("hello")`))
+	assert.NoError(t, err)
+
 	environment := Environment{
 		CamelCatalog: catalog,
 		Catalog:      traitCatalog,
@@ -312,7 +320,7 @@
 					{
 						DataSpec: v1.DataSpec{
 							Name:        "routes.js",
-							Content:     `from("undertow:test").log("hello")`,
+							Content:     string(compressedRoute),
 							Compression: true,
 						},
 						Language: v1.LanguageJavaScript,
diff --git a/pkg/trait/trait_types.go b/pkg/trait/trait_types.go
index f1666f7..c397c2f 100644
--- a/pkg/trait/trait_types.go
+++ b/pkg/trait/trait_types.go
@@ -557,7 +557,7 @@
 				properties[fmt.Sprintf("camel.k.kamelets[%s].loader", kameletName)] = s.Loader
 			}
 			if s.Compression {
-				properties[fmt.Sprintf("camel.k.kamelets[%s].compression", kameletName)] = "true"
+				properties[fmt.Sprintf("camel.k.kamelets[%s].compression", kameletName)] = True
 			}
 
 			interceptors := make([]string, 0, len(s.Interceptors))
diff --git a/pkg/util/kubernetes/resolver.go b/pkg/util/kubernetes/resolver.go
index ae7621a..185c11b 100644
--- a/pkg/util/kubernetes/resolver.go
+++ b/pkg/util/kubernetes/resolver.go
@@ -23,6 +23,7 @@
 
 	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
 	"github.com/apache/camel-k/pkg/util/gzip"
+	"github.com/pkg/errors"
 	corev1 "k8s.io/api/core/v1"
 	controller "sigs.k8s.io/controller-runtime/pkg/client"
 )
@@ -84,7 +85,7 @@
 		var uncompressed []byte
 		var err error
 		if uncompressed, err = gzip.UncompressBase64(cnt); err != nil {
-			return err
+			return errors.Wrap(err, "error while uncompressing data")
 		}
 		data.Compression = false
 		data.Content = string(uncompressed)
diff --git a/pkg/util/log/log.go b/pkg/util/log/log.go
index 7ac3573..7d290f0 100644
--- a/pkg/util/log/log.go
+++ b/pkg/util/log/log.go
@@ -19,9 +19,9 @@
 
 import (
 	"fmt"
-	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 
 	v1 "github.com/apache/camel-k/pkg/apis/camel/v1"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 	"github.com/go-logr/logr"
 	logf "sigs.k8s.io/controller-runtime/pkg/log"
 )
