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 2020/01/22 15:59:04 UTC

[camel-k] 08/13: fix(build): Use Docker build strategy in S2I builds

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 8cd7ff2000403d9e9ccbd783ef5b8eb1f600b010
Author: Antonin Stefanutti <an...@stefanutti.fr>
AuthorDate: Tue Jan 21 10:19:22 2020 +0100

    fix(build): Use Docker build strategy in S2I builds
---
 pkg/builder/s2i/publisher.go | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/pkg/builder/s2i/publisher.go b/pkg/builder/s2i/publisher.go
index d3afb3a..9e346e7 100644
--- a/pkg/builder/s2i/publisher.go
+++ b/pkg/builder/s2i/publisher.go
@@ -22,6 +22,8 @@ import (
 	"os"
 	"path"
 
+	"github.com/pkg/errors"
+
 	corev1 "k8s.io/api/core/v1"
 	apierrors "k8s.io/apimachinery/pkg/api/errors"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -35,11 +37,17 @@ import (
 	"github.com/apache/camel-k/pkg/builder"
 	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/apache/camel-k/pkg/util/kubernetes/customclient"
-
-	"github.com/pkg/errors"
 )
 
 func publisher(ctx *builder.Context) error {
+	// We may want to unify the Dockerfile between build strategies, i.e., between Kaniko and S2I
+	// #nosec G202
+	dockerfile := `
+		FROM ` + ctx.BaseImage + `
+		ADD . /deployments
+		USER 1000
+	`
+
 	bc := buildv1.BuildConfig{
 		TypeMeta: metav1.TypeMeta{
 			APIVersion: buildv1.GroupVersion.String(),
@@ -55,15 +63,11 @@ func publisher(ctx *builder.Context) error {
 		Spec: buildv1.BuildConfigSpec{
 			CommonSpec: buildv1.CommonSpec{
 				Source: buildv1.BuildSource{
-					Type: buildv1.BuildSourceBinary,
+					Type:       buildv1.BuildSourceBinary,
+					Dockerfile: &dockerfile,
 				},
 				Strategy: buildv1.BuildStrategy{
-					SourceStrategy: &buildv1.SourceBuildStrategy{
-						From: corev1.ObjectReference{
-							Kind: "DockerImage",
-							Name: ctx.BaseImage,
-						},
-					},
+					DockerStrategy: &buildv1.DockerBuildStrategy{},
 				},
 				Output: buildv1.BuildOutput{
 					To: &corev1.ObjectReference{