You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by as...@apache.org on 2019/09/30 09:31:09 UTC

[camel-k] branch master updated (8f17be6 -> 0ae900e)

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

astefanutti pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git.


    from 8f17be6  fix: Merge all binaries into a single one
     new d3c15fc  fix: Add option to disable Kaniko cache warming
     new 0ae900e  Make KanikoBuildCache *Bool

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 pkg/apis/camel/v1alpha1/integrationplatform_types.go |  1 +
 pkg/builder/kaniko/publisher.go                      |  3 ++-
 pkg/cmd/install.go                                   | 14 +++++++++++++-
 pkg/controller/integrationplatform/initialize.go     |  9 ++++++++-
 4 files changed, 24 insertions(+), 3 deletions(-)


[camel-k] 02/02: Make KanikoBuildCache *Bool

Posted by as...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 0ae900eae665efe77f8f6ecd8474ec571266da30
Author: asifdxtreme <mo...@huawei.com>
AuthorDate: Mon Sep 30 11:40:03 2019 +0530

    Make KanikoBuildCache *Bool
---
 pkg/apis/camel/v1alpha1/integrationplatform_types.go | 2 +-
 pkg/builder/kaniko/publisher.go                      | 2 +-
 pkg/cmd/install.go                                   | 6 ++++--
 pkg/controller/integrationplatform/initialize.go     | 9 ++++++++-
 4 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/pkg/apis/camel/v1alpha1/integrationplatform_types.go b/pkg/apis/camel/v1alpha1/integrationplatform_types.go
index 5c4674d..3c6d5c9 100644
--- a/pkg/apis/camel/v1alpha1/integrationplatform_types.go
+++ b/pkg/apis/camel/v1alpha1/integrationplatform_types.go
@@ -105,7 +105,7 @@ type IntegrationPlatformBuildSpec struct {
 	PersistentVolumeClaim string                                  `json:"persistentVolumeClaim,omitempty"`
 	Maven                 MavenSpec                               `json:"maven,omitempty"`
 	HTTPProxySecret       string                                  `json:"httpProxySecret,omitempty"`
-	KanikoBuildCache      bool                                    `json:"kanikoBuildCache,omitempty"`
+	KanikoBuildCache      *bool                                   `json:"kanikoBuildCache,omitempty"`
 }
 
 // IntegrationPlatformRegistrySpec --
diff --git a/pkg/builder/kaniko/publisher.go b/pkg/builder/kaniko/publisher.go
index 82b7fce..488fe6d 100644
--- a/pkg/builder/kaniko/publisher.go
+++ b/pkg/builder/kaniko/publisher.go
@@ -80,7 +80,7 @@ func publisher(ctx *builder.Context) error {
 		"--dockerfile=Dockerfile",
 		"--context=" + contextDir,
 		"--destination=" + image,
-		"--cache=" + strconv.FormatBool(ctx.Build.Platform.Build.KanikoBuildCache),
+		"--cache=" + strconv.FormatBool(*ctx.Build.Platform.Build.KanikoBuildCache),
 		"--cache-dir=/workspace/cache",
 	}
 
diff --git a/pkg/cmd/install.go b/pkg/cmd/install.go
index 162c211..65f65c3 100644
--- a/pkg/cmd/install.go
+++ b/pkg/cmd/install.go
@@ -239,10 +239,12 @@ func (o *installCmdOptions) install(cobraCmd *cobra.Command, _ []string) error {
 
 		kanikoBuildCacheFlag := cobraCmd.Flags().Lookup("kaniko-build-cache")
 
+		defaultKanikoBuildCache := true
+
 		if kanikoBuildCacheFlag.Changed {
-			platform.Spec.Build.KanikoBuildCache = o.kanikoBuildCache
+			platform.Spec.Build.KanikoBuildCache = &o.kanikoBuildCache
 		} else {
-			platform.Spec.Build.KanikoBuildCache = true
+			platform.Spec.Build.KanikoBuildCache = &defaultKanikoBuildCache
 		}
 
 		platform.Spec.Resources.Kits = o.kits
diff --git a/pkg/controller/integrationplatform/initialize.go b/pkg/controller/integrationplatform/initialize.go
index 1a270db..a331027 100644
--- a/pkg/controller/integrationplatform/initialize.go
+++ b/pkg/controller/integrationplatform/initialize.go
@@ -136,8 +136,15 @@ func (action *initializeAction) Handle(ctx context.Context, platform *v1alpha1.I
 			return nil, err
 		}
 
+		defaultKanikoBuildCache := true
+		// Check if the KanikoBuildCache has been initialized
+		if platform.Spec.Build.KanikoBuildCache == nil {
+			//if not initialized then default it to true
+			platform.Spec.Build.KanikoBuildCache = &defaultKanikoBuildCache
+		}
+
 		// Check if the operator is running in the same namespace before starting the cache warmer
-		if platform.Namespace == platformutil.GetOperatorNamespace() && platform.Spec.Build.KanikoBuildCache {
+		if platform.Namespace == platformutil.GetOperatorNamespace() && *platform.Spec.Build.KanikoBuildCache {
 			// Create the Kaniko warmer pod that caches the base image into the Camel K builder volume
 			action.L.Info("Create Kaniko cache warmer pod")
 			err = createKanikoCacheWarmerPod(ctx, action.client, platform)


[camel-k] 01/02: fix: Add option to disable Kaniko cache warming

Posted by as...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit d3c15fc24486a58313daaf498f87557a62bb8246
Author: asifdxtreme <mo...@huawei.com>
AuthorDate: Tue Sep 3 18:53:23 2019 +0530

    fix: Add option to disable Kaniko cache warming
---
 pkg/apis/camel/v1alpha1/integrationplatform_types.go |  1 +
 pkg/builder/kaniko/publisher.go                      |  3 ++-
 pkg/cmd/install.go                                   | 12 +++++++++++-
 pkg/controller/integrationplatform/initialize.go     |  2 +-
 4 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/pkg/apis/camel/v1alpha1/integrationplatform_types.go b/pkg/apis/camel/v1alpha1/integrationplatform_types.go
index 19dbcab..5c4674d 100644
--- a/pkg/apis/camel/v1alpha1/integrationplatform_types.go
+++ b/pkg/apis/camel/v1alpha1/integrationplatform_types.go
@@ -105,6 +105,7 @@ type IntegrationPlatformBuildSpec struct {
 	PersistentVolumeClaim string                                  `json:"persistentVolumeClaim,omitempty"`
 	Maven                 MavenSpec                               `json:"maven,omitempty"`
 	HTTPProxySecret       string                                  `json:"httpProxySecret,omitempty"`
+	KanikoBuildCache      bool                                    `json:"kanikoBuildCache,omitempty"`
 }
 
 // IntegrationPlatformRegistrySpec --
diff --git a/pkg/builder/kaniko/publisher.go b/pkg/builder/kaniko/publisher.go
index 8e4f1ea..82b7fce 100644
--- a/pkg/builder/kaniko/publisher.go
+++ b/pkg/builder/kaniko/publisher.go
@@ -21,6 +21,7 @@ import (
 	"fmt"
 	"io/ioutil"
 	"path"
+	"strconv"
 	"time"
 
 	"github.com/apache/camel-k/pkg/builder"
@@ -79,7 +80,7 @@ func publisher(ctx *builder.Context) error {
 		"--dockerfile=Dockerfile",
 		"--context=" + contextDir,
 		"--destination=" + image,
-		"--cache",
+		"--cache=" + strconv.FormatBool(ctx.Build.Platform.Build.KanikoBuildCache),
 		"--cache-dir=/workspace/cache",
 	}
 
diff --git a/pkg/cmd/install.go b/pkg/cmd/install.go
index 25e94b3..162c211 100644
--- a/pkg/cmd/install.go
+++ b/pkg/cmd/install.go
@@ -74,6 +74,7 @@ func newCmdInstall(rootCmdOptions *RootCmdOptions) *cobra.Command {
 	cmd.Flags().StringVar(&impl.buildStrategy, "build-strategy", "", "Set the build strategy")
 	cmd.Flags().StringVar(&impl.buildTimeout, "build-timeout", "", "Set how long the build process can last")
 	cmd.Flags().StringVar(&impl.traitProfile, "trait-profile", "", "The profile to use for traits")
+	cmd.Flags().BoolVar(&impl.kanikoBuildCache, "kaniko-build-cache", true, "To enable or disable the Kaniko Cache in building phase")
 	cmd.Flags().StringVar(&impl.httpProxySecret, "http-proxy-secret", "", "Configure the source of the secret holding HTTP proxy server details "+
 		"(HTTP_PROXY|HTTPS_PROXY|NO_PROXY)")
 
@@ -102,6 +103,7 @@ type installCmdOptions struct {
 	skipClusterSetup  bool
 	exampleSetup      bool
 	global            bool
+	kanikoBuildCache  bool
 	outputFormat      string
 	camelVersion      string
 	runtimeVersion    string
@@ -120,7 +122,7 @@ type installCmdOptions struct {
 }
 
 // nolint: gocyclo
-func (o *installCmdOptions) install(_ *cobra.Command, _ []string) error {
+func (o *installCmdOptions) install(cobraCmd *cobra.Command, _ []string) error {
 	var collection *kubernetes.Collection
 	if o.outputFormat != "" {
 		collection = kubernetes.NewCollection()
@@ -235,6 +237,14 @@ func (o *installCmdOptions) install(_ *cobra.Command, _ []string) error {
 			platform.Spec.Build.HTTPProxySecret = o.httpProxySecret
 		}
 
+		kanikoBuildCacheFlag := cobraCmd.Flags().Lookup("kaniko-build-cache")
+
+		if kanikoBuildCacheFlag.Changed {
+			platform.Spec.Build.KanikoBuildCache = o.kanikoBuildCache
+		} else {
+			platform.Spec.Build.KanikoBuildCache = true
+		}
+
 		platform.Spec.Resources.Kits = o.kits
 
 		err = install.RuntimeObjectOrCollect(o.Context, c, namespace, collection, platform)
diff --git a/pkg/controller/integrationplatform/initialize.go b/pkg/controller/integrationplatform/initialize.go
index 3e2d404..1a270db 100644
--- a/pkg/controller/integrationplatform/initialize.go
+++ b/pkg/controller/integrationplatform/initialize.go
@@ -137,7 +137,7 @@ func (action *initializeAction) Handle(ctx context.Context, platform *v1alpha1.I
 		}
 
 		// Check if the operator is running in the same namespace before starting the cache warmer
-		if platform.Namespace == platformutil.GetOperatorNamespace() {
+		if platform.Namespace == platformutil.GetOperatorNamespace() && platform.Spec.Build.KanikoBuildCache {
 			// Create the Kaniko warmer pod that caches the base image into the Camel K builder volume
 			action.L.Info("Create Kaniko cache warmer pod")
 			err = createKanikoCacheWarmerPod(ctx, action.client, platform)