This is an automated email from the ASF dual-hosted git repository. nferraro pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit b9c2cbe0d20e507e87ab0df2df4ae72e009309ab Author: Nicola Ferraro <[email protected]> AuthorDate: Fri Jul 10 13:12:31 2020 +0200 kamelet: fix tests and lint --- pkg/controller/kamelet/initialize.go | 1 + pkg/controller/kamelet/kamelet_controller.go | 6 ++---- pkg/event/manager.go | 2 +- pkg/trait/dependencies.go | 8 +++----- pkg/trait/kamelets.go | 15 +++++++++------ pkg/trait/kamelets_test.go | 10 +++++++++- pkg/trait/knative_service_test.go | 16 +++++++++------- pkg/trait/service_test.go | 24 ++++++++++++++++-------- pkg/trait/trait_types.go | 2 +- pkg/util/kubernetes/resolver.go | 3 ++- pkg/util/log/log.go | 2 +- 11 files changed, 54 insertions(+), 35 deletions(-) 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 @@ package kamelet 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 @@ package kamelet 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 @@ import ( "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 @@ package event 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 @@ package trait 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 @@ package trait 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 @@ import ( "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 @@ func newConfigurationKey(kamelet, configurationID string) configurationKey { } const ( + contentKey = "content" + schemaKey = "schema" + kameletLabel = "camel.apache.org/kamelet" kameletConfigurationLabel = "camel.apache.org/kamelet.configuration" ) @@ -148,7 +151,7 @@ func (t *kameletsTrait) addKamelets(e *Environment) error { } 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 @@ func integrationSourceFromKameletSource(e *Environment, kamelet v1alpha1.Kamelet }, }, Data: map[string]string{ - "content": source.Content, - "schema": string(schema), + contentKey: source.Content, + schemaKey: string(schema), }, } @@ -331,7 +334,7 @@ func integrationSourceFromKameletSource(e *Environment, kamelet v1alpha1.Kamelet 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 @@ func TestKameletLookup(t *testing.T) { "camel:log", }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }) enabled, err := trait.Configure(environment) assert.NoError(t, err) @@ -146,6 +147,7 @@ func TestKameletSecondarySourcesLookup(t *testing.T) { }, }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }) enabled, err := trait.Configure(environment) assert.NoError(t, err) @@ -196,6 +198,7 @@ func TestNonYAMLKameletLookup(t *testing.T) { }, }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }) enabled, err := trait.Configure(environment) assert.NoError(t, err) @@ -242,6 +245,7 @@ func TestErrorMultipleKameletSources(t *testing.T) { }, }), }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }) enabled, err := trait.Configure(environment) assert.NoError(t, err) @@ -284,6 +288,7 @@ func TestMultipleKamelets(t *testing.T) { "camel:xxx", }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }, &v1alpha1.Kamelet{ ObjectMeta: metav1.ObjectMeta{ Namespace: "test", @@ -307,6 +312,7 @@ func TestMultipleKamelets(t *testing.T) { "camel:tbd", }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }) enabled, err := trait.Configure(environment) assert.NoError(t, err) @@ -368,6 +374,7 @@ func TestKameletConfigLookup(t *testing.T) { "camel:log", }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }, &corev1.Secret{ ObjectMeta: metav1.ObjectMeta{ Namespace: "test", @@ -430,6 +437,7 @@ func TestKameletNamedConfigLookup(t *testing.T) { "camel:log", }, }, + Status: v1alpha1.KameletStatus{Phase: v1alpha1.KameletPhaseReady}, }, &corev1.Secret{ ObjectMeta: metav1.ObjectMeta{ Namespace: "test", @@ -516,6 +524,6 @@ func marshalOrFail(flow map[string]interface{}) *v1.Flow { 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 @@ import ( "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 @@ func TestKnativeService(t *testing.T) { 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 @@ func TestKnativeService(t *testing.T) { { 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 @@ import ( "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 @@ func TestServiceWithDefaults(t *testing.T) { 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 @@ func TestServiceWithDefaults(t *testing.T) { { DataSpec: v1.DataSpec{ Name: "routes.js", - Content: `from("undertow:test").log("hello")`, + Content: string(compressedRoute), Compression: true, }, Language: v1.LanguageJavaScript, @@ -130,6 +132,9 @@ func TestService(t *testing.T) { 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 @@ func TestService(t *testing.T) { { DataSpec: v1.DataSpec{ Name: "routes.js", - Content: `from("undertow:test").log("hello")`, + Content: string(compressedRoute), Compression: true, }, Language: v1.LanguageJavaScript, @@ -295,6 +300,9 @@ func TestServiceWithNodePort(t *testing.T) { 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 @@ func TestServiceWithNodePort(t *testing.T) { { 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 @@ func (e *Environment) AddSourcesProperties() { 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 @@ import ( 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 @@ func Resolve(data *v1.DataSpec, mapLookup func(string) (*corev1.ConfigMap, error 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 @@ package log 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" )
