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 bccf1f964bc1c2cccb903c1a06cc532f976513e4 Author: lburgazzoli <lburgazz...@gmail.com> AuthorDate: Thu Jun 27 15:53:25 2019 +0200 chore(lint): fix findings --- .../integration/integration_controller.go | 9 +- pkg/controller/integrationkit/build.go | 2 +- pkg/controller/integrationplatform/initialize.go | 108 +++++++++++---------- .../integrationplatform/initialize_test.go | 15 +-- pkg/util/maven/maven.go | 8 +- 5 files changed, 79 insertions(+), 63 deletions(-) diff --git a/pkg/controller/integration/integration_controller.go b/pkg/controller/integration/integration_controller.go index b02a450..8fc4b5a 100644 --- a/pkg/controller/integration/integration_controller.go +++ b/pkg/controller/integration/integration_controller.go @@ -104,7 +104,9 @@ func add(mgr manager.Manager, r reconcile.Reconciler) error { // during image build return oldBuild.Status.Phase != newBuild.Status.Phase }, - }) + }, + ) + if err != nil { return err } @@ -142,6 +144,10 @@ func add(mgr manager.Manager, r reconcile.Reconciler) error { }), }) + if err != nil { + return err + } + // Watch for IntegrationPlatform phase transitioning to ready and enqueue // requests for any integrations that are in phase waiting for platform err = c.Watch(&source.Kind{Type: &v1alpha1.IntegrationPlatform{}}, &handler.EnqueueRequestsFromMapFunc{ @@ -173,6 +179,7 @@ func add(mgr manager.Manager, r reconcile.Reconciler) error { return requests }), }) + if err != nil { return err } diff --git a/pkg/controller/integrationkit/build.go b/pkg/controller/integrationkit/build.go index 4ea5664..97b7caf 100644 --- a/pkg/controller/integrationkit/build.go +++ b/pkg/controller/integrationkit/build.go @@ -21,10 +21,10 @@ import ( "context" "fmt" - "github.com/apache/camel-k/pkg/util/kubernetes" "github.com/apache/camel-k/pkg/apis/camel/v1alpha1" "github.com/apache/camel-k/pkg/builder" "github.com/apache/camel-k/pkg/trait" + "github.com/apache/camel-k/pkg/util/kubernetes" k8serrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" diff --git a/pkg/controller/integrationplatform/initialize.go b/pkg/controller/integrationplatform/initialize.go index 2fc150b..7f52c5e 100644 --- a/pkg/controller/integrationplatform/initialize.go +++ b/pkg/controller/integrationplatform/initialize.go @@ -111,58 +111,7 @@ func (action *initializeAction) Handle(ctx context.Context, ip *v1alpha1.Integra action.L.Info("No registry specified for publishing images") } - if target.Spec.Profile == "" { - target.Spec.Profile = platform.GetProfile(target) - } - if target.Spec.Build.CamelVersion == "" { - target.Spec.Build.CamelVersion = defaults.CamelVersionConstraint - } - if target.Spec.Build.RuntimeVersion == "" { - target.Spec.Build.RuntimeVersion = defaults.RuntimeVersion - } - if target.Spec.Build.BaseImage == "" { - target.Spec.Build.BaseImage = defaults.BaseImage - } - if target.Spec.Build.LocalRepository == "" { - target.Spec.Build.LocalRepository = defaults.LocalRepository - } - if target.Spec.Build.PersistentVolumeClaim == "" { - target.Spec.Build.PersistentVolumeClaim = target.Name - } - - if target.Spec.Build.Timeout.Duration != 0 { - d := target.Spec.Build.Timeout.Duration.Truncate(time.Second) - - if target.Spec.Build.Timeout.Duration != d { - action.L.Infof("Build timeout minimum unit is sec (configured: %s, truncated: %s)", target.Spec.Build.Timeout.Duration, d) - } - - target.Spec.Build.Timeout.Duration = d - } - if target.Spec.Build.Timeout.Duration == 0 { - target.Spec.Build.Timeout.Duration = 5 * time.Minute - } - - if target.Spec.Build.Maven.Timeout.Duration != 0 { - d := target.Spec.Build.Maven.Timeout.Duration.Truncate(time.Second) - - if target.Spec.Build.Maven.Timeout.Duration != d { - action.L.Infof("Maven timeout minimum unit is sec (configured: %s, truncated: %s)", target.Spec.Build.Maven.Timeout.Duration, d) - } - - target.Spec.Build.Maven.Timeout.Duration = d - } - if target.Spec.Build.Maven.Timeout.Duration == 0 { - n := target.Spec.Build.Timeout.Duration.Seconds() * 0.75 - target.Spec.Build.Maven.Timeout.Duration = (time.Duration(n) * time.Second).Truncate(time.Second) - } - - action.L.Infof("CamelVersion set to %s", target.Spec.Build.CamelVersion) - action.L.Infof("RuntimeVersion set to %s", target.Spec.Build.RuntimeVersion) - action.L.Infof("BaseImage set to %s", target.Spec.Build.BaseImage) - action.L.Infof("LocalRepository set to %s", target.Spec.Build.LocalRepository) - action.L.Infof("Timeout set to %s", target.Spec.Build.Timeout) - action.L.Infof("Maven Timeout set to %s", target.Spec.Build.Maven.Timeout.Duration) + action.setDefaults(target) if target.Spec.Build.Maven.Timeout.Duration != 0 { action.L.Infof("Maven Timeout set to %s", target.Spec.Build.Maven.Timeout.Duration) @@ -221,6 +170,61 @@ func (action *initializeAction) isDuplicate(ctx context.Context, thisPlatform *v return false, nil } +func (action *initializeAction) setDefaults(target *v1alpha1.IntegrationPlatform) { + if target.Spec.Profile == "" { + target.Spec.Profile = platform.GetProfile(target) + } + if target.Spec.Build.CamelVersion == "" { + target.Spec.Build.CamelVersion = defaults.CamelVersionConstraint + } + if target.Spec.Build.RuntimeVersion == "" { + target.Spec.Build.RuntimeVersion = defaults.RuntimeVersion + } + if target.Spec.Build.BaseImage == "" { + target.Spec.Build.BaseImage = defaults.BaseImage + } + if target.Spec.Build.LocalRepository == "" { + target.Spec.Build.LocalRepository = defaults.LocalRepository + } + if target.Spec.Build.PersistentVolumeClaim == "" { + target.Spec.Build.PersistentVolumeClaim = target.Name + } + + if target.Spec.Build.Timeout.Duration != 0 { + d := target.Spec.Build.Timeout.Duration.Truncate(time.Second) + + if target.Spec.Build.Timeout.Duration != d { + action.L.Infof("Build timeout minimum unit is sec (configured: %s, truncated: %s)", target.Spec.Build.Timeout.Duration, d) + } + + target.Spec.Build.Timeout.Duration = d + } + if target.Spec.Build.Timeout.Duration == 0 { + target.Spec.Build.Timeout.Duration = 5 * time.Minute + } + + if target.Spec.Build.Maven.Timeout.Duration != 0 { + d := target.Spec.Build.Maven.Timeout.Duration.Truncate(time.Second) + + if target.Spec.Build.Maven.Timeout.Duration != d { + action.L.Infof("Maven timeout minimum unit is sec (configured: %s, truncated: %s)", target.Spec.Build.Maven.Timeout.Duration, d) + } + + target.Spec.Build.Maven.Timeout.Duration = d + } + if target.Spec.Build.Maven.Timeout.Duration == 0 { + n := target.Spec.Build.Timeout.Duration.Seconds() * 0.75 + target.Spec.Build.Maven.Timeout.Duration = (time.Duration(n) * time.Second).Truncate(time.Second) + } + + action.L.Infof("CamelVersion set to %s", target.Spec.Build.CamelVersion) + action.L.Infof("RuntimeVersion set to %s", target.Spec.Build.RuntimeVersion) + action.L.Infof("BaseImage set to %s", target.Spec.Build.BaseImage) + action.L.Infof("LocalRepository set to %s", target.Spec.Build.LocalRepository) + action.L.Infof("Timeout set to %s", target.Spec.Build.Timeout) + action.L.Infof("Maven Timeout set to %s", target.Spec.Build.Maven.Timeout.Duration) +} + func createPersistentVolumeClaim(ctx context.Context, client client.Client, platform *v1alpha1.IntegrationPlatform) error { volumeSize, err := resource.ParseQuantity("1Gi") if err != nil { diff --git a/pkg/controller/integrationplatform/initialize_test.go b/pkg/controller/integrationplatform/initialize_test.go index 8260f3a..2a1e4b0 100644 --- a/pkg/controller/integrationplatform/initialize_test.go +++ b/pkg/controller/integrationplatform/initialize_test.go @@ -22,19 +22,22 @@ import ( "testing" "time" + "github.com/rs/xid" + "github.com/apache/camel-k/pkg/apis/camel/v1alpha1" "github.com/apache/camel-k/pkg/util/log" "github.com/apache/camel-k/pkg/util/test" + "github.com/stretchr/testify/assert" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" k8sclient "sigs.k8s.io/controller-runtime/pkg/client" ) func TestTimeouts_Default(t *testing.T) { ip := v1alpha1.IntegrationPlatform{} ip.Namespace = "ns" - ip.Name = "camel-k" + ip.Name = xid.New().String() ip.Spec.Cluster = v1alpha1.IntegrationPlatformClusterOpenShift c, err := test.NewFakeClient(&ip) @@ -67,7 +70,7 @@ func TestTimeouts_Default(t *testing.T) { func TestTimeouts_MavenComputedFromBuild(t *testing.T) { ip := v1alpha1.IntegrationPlatform{} ip.Namespace = "ns" - ip.Name = "camel-k" + ip.Name = xid.New().String() ip.Spec.Cluster = v1alpha1.IntegrationPlatformClusterOpenShift timeout, err := time.ParseDuration("1m1ms") @@ -107,7 +110,7 @@ func TestTimeouts_MavenComputedFromBuild(t *testing.T) { func TestTimeouts_Truncated(t *testing.T) { ip := v1alpha1.IntegrationPlatform{} ip.Namespace = "ns" - ip.Name = "camel-k" + ip.Name = xid.New().String() ip.Spec.Cluster = v1alpha1.IntegrationPlatformClusterOpenShift bt, err := time.ParseDuration("5m1ms") @@ -144,6 +147,6 @@ func TestTimeouts_Truncated(t *testing.T) { err = c.Get(context.TODO(), key, &answer) assert.Nil(t, err) - assert.Equal(t, time.Duration(2*time.Minute), answer.Spec.Build.Maven.Timeout.Duration) - assert.Equal(t, time.Duration(5*time.Minute), answer.Spec.Build.Timeout.Duration) + assert.Equal(t, 2*time.Minute, answer.Spec.Build.Maven.Timeout.Duration) + assert.Equal(t, 5*time.Minute, answer.Spec.Build.Timeout.Duration) } diff --git a/pkg/util/maven/maven.go b/pkg/util/maven/maven.go index 757df37..8fbe80f 100644 --- a/pkg/util/maven/maven.go +++ b/pkg/util/maven/maven.go @@ -89,12 +89,14 @@ func Run(ctx Context) error { mvnCmd = c } - args := append(ctx.AdditionalArguments, "--batch-mode") + args := make([]string, 0) + args = append(args, ctx.AdditionalArguments...) + args = append(args, "--batch-mode") if ctx.LocalRepository == "" { - args = append(ctx.AdditionalArguments, "-Dcamel.noop=true") + args = append(args, "-Dcamel.noop=true") } else if _, err := os.Stat(ctx.LocalRepository); err == nil { - args = append(ctx.AdditionalArguments, "-Dmaven.repo.local="+ctx.LocalRepository) + args = append(args, "-Dmaven.repo.local="+ctx.LocalRepository) } settingsPath := path.Join(ctx.Path, "settings.xml")