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 99493ddf9b5a840b4d054c65b4e1568b754ef9da
Author: lburgazzoli <lburgazz...@gmail.com>
AuthorDate: Thu Sep 20 12:30:48 2018 +0200

    maven: cleanup build process
---
 deploy/platform-integration-context-core.yaml   |  2 +-
 deploy/platform-integration-context-groovy.yaml |  2 +-
 deploy/resources.go                             |  4 +-
 pkg/build/local/local_builder.go                |  2 +-
 pkg/stub/action/integration/deploy.go           | 18 +--------
 pkg/util/maven/maven.go                         | 50 +++++++++++--------------
 tmp/build/Dockerfile                            |  2 +-
 7 files changed, 29 insertions(+), 51 deletions(-)

diff --git a/deploy/platform-integration-context-core.yaml 
b/deploy/platform-integration-context-core.yaml
index 3fe794c..d0d3289 100644
--- a/deploy/platform-integration-context-core.yaml
+++ b/deploy/platform-integration-context-core.yaml
@@ -1,7 +1,7 @@
 apiVersion: camel.apache.org/v1alpha1
 kind: IntegrationContext
 metadata:
-  name: core.integrationcontexts.camel.apache.org
+  name: core
   labels:
     app: "camel-k"
     camel.apache.org/context.created.by.kind: Operator
diff --git a/deploy/platform-integration-context-groovy.yaml 
b/deploy/platform-integration-context-groovy.yaml
index 5c5cbf4..e1c327c 100644
--- a/deploy/platform-integration-context-groovy.yaml
+++ b/deploy/platform-integration-context-groovy.yaml
@@ -1,7 +1,7 @@
 apiVersion: camel.apache.org/v1alpha1
 kind: IntegrationContext
 metadata:
-  name: groovy.integrationcontexts.camel.apache.org
+  name: groovy
   labels:
     app: "camel-k"
     camel.apache.org/context.created.by.kind: Operator
diff --git a/deploy/resources.go b/deploy/resources.go
index ec79a89..f4e9210 100644
--- a/deploy/resources.go
+++ b/deploy/resources.go
@@ -2441,7 +2441,7 @@ status:
 apiVersion: camel.apache.org/v1alpha1
 kind: IntegrationContext
 metadata:
-  name: core.integrationcontexts.camel.apache.org
+  name: core
   labels:
     app: "camel-k"
     camel.apache.org/context.created.by.kind: Operator
@@ -2456,7 +2456,7 @@ spec:
 apiVersion: camel.apache.org/v1alpha1
 kind: IntegrationContext
 metadata:
-  name: groovy.integrationcontexts.camel.apache.org
+  name: groovy
   labels:
     app: "camel-k"
     camel.apache.org/context.created.by.kind: Operator
diff --git a/pkg/build/local/local_builder.go b/pkg/build/local/local_builder.go
index 2bb59ce..364c244 100644
--- a/pkg/build/local/local_builder.go
+++ b/pkg/build/local/local_builder.go
@@ -153,7 +153,7 @@ func (b *localBuilder) publish(tarFile string, source 
*build.Request) (string, e
                                        SourceStrategy: 
&buildv1.SourceBuildStrategy{
                                                From: v1.ObjectReference{
                                                        Kind: "DockerImage",
-                                                       Name: 
"fabric8/s2i-java:2.1",
+                                                       Name: 
"fabric8/s2i-java:2.3",
                                                },
                                        },
                                },
diff --git a/pkg/stub/action/integration/deploy.go 
b/pkg/stub/action/integration/deploy.go
index c6ba592..b3bce77 100644
--- a/pkg/stub/action/integration/deploy.go
+++ b/pkg/stub/action/integration/deploy.go
@@ -19,11 +19,8 @@ package action
 
 import (
        "fmt"
-       "os"
        "strings"
 
-       "github.com/apache/camel-k/version"
-
        "github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
        "github.com/operator-framework/operator-sdk/pkg/sdk"
        "github.com/pkg/errors"
@@ -77,12 +74,6 @@ func getConfigMapFor(ctx *v1alpha1.IntegrationContext, 
integration *v1alpha1.Int
        // combine properties of integration with context, integration
        // properties have the priority
        properties := CombineConfigurationAsMap("property", ctx, integration)
-       classpath := make([]string, 0, len(ctx.Spec.Classpath))
-
-       //TODO: we need some constants
-       for _, path := range ctx.Spec.Classpath {
-               classpath = append(classpath, strings.Replace(path, 
"/tmp/artifacts/m2", "/deployments/m2", 1))
-       }
 
        cm := corev1.ConfigMap{
                TypeMeta: metav1.TypeMeta{
@@ -111,7 +102,6 @@ func getConfigMapFor(ctx *v1alpha1.IntegrationContext, 
integration *v1alpha1.Int
                Data: map[string]string{
                        "integration": integration.Spec.Source.Content,
                        "properties":  PropertiesString(properties),
-                       "classpath":   strings.Join(classpath, 
string(os.PathListSeparator)),
                },
        }
 
@@ -152,11 +142,8 @@ func getDeploymentFor(ctx *v1alpha1.IntegrationContext, 
integration *v1alpha1.In
 
        // set env vars needed by the runtime
        environment["JAVA_MAIN_CLASS"] = "org.apache.camel.k.jvm.Application"
-       environment["JAVA_LIB_DIR"] = "/etc/camel/conf"
-
-       //TODO: remove this hack !!! s2i java (/opt/run-java/run-java.sh) fails 
if JAVA_APP_JAR is not set
-       environment["JAVA_APP_JAR"] = 
fmt.Sprintf("/deployments/m2/org/apache/camel/k/camel-k-runtime-jvm/%s/camel-k-runtime-jvm-%s.jar",
 version.Version, version.Version)
 
+       // camel-k runtime
        environment["CAMEL_K_ROUTES_URI"] = "file:/etc/camel/conf/" + sourceName
        environment["CAMEL_K_ROUTES_LANGUAGE"] = 
string(integration.Spec.Source.Language)
        environment["CAMEL_K_CONF"] = "/etc/camel/conf/application.properties"
@@ -241,9 +228,6 @@ func getDeploymentFor(ctx *v1alpha1.IntegrationContext, 
integration *v1alpha1.In
                                        }, {
                                                Key:  "properties",
                                                Path: "application.properties",
-                                       }, {
-                                               Key:  "classpath",
-                                               Path: "classpath",
                                        },
                                },
                        },
diff --git a/pkg/util/maven/maven.go b/pkg/util/maven/maven.go
index 8f67982..d008162 100644
--- a/pkg/util/maven/maven.go
+++ b/pkg/util/maven/maven.go
@@ -125,20 +125,28 @@ func createTar(project Project, result *BuildResult) 
(string, error) {
        writer := tar.NewWriter(tarFile)
        defer writer.Close()
 
-       for _, path := range result.Classpath {
-               err = appendToTarWithPath(path, writer)
+       cp := ""
+       for _, filePath := range result.Classpath {
+               fileName, err := appendFileToTar(filePath, "dependencies", 
writer)
                if err != nil {
                        return "", err
                }
+
+               cp += fileName + "\n"
+       }
+
+       err = appendDataToTar([]byte(cp), "classpath", writer)
+       if err != nil {
+               return "", err
        }
 
        return tarFileName, nil
 }
 
-func appendToTar(filePath string, tarPath string, writer *tar.Writer) error {
+func appendFileToTar(filePath string, tarPath string, writer *tar.Writer) 
(string, error) {
        info, err := os.Stat(filePath)
        if err != nil {
-               return err
+               return "", err
        }
        _, fileName := path.Split(filePath)
        if tarPath != "" {
@@ -154,42 +162,28 @@ func appendToTar(filePath string, tarPath string, writer 
*tar.Writer) error {
 
        file, err := os.Open(filePath)
        if err != nil {
-               return err
+               return "", err
        }
        defer file.Close()
 
        _, err = io.Copy(writer, file)
        if err != nil {
-               return errors.Wrap(err, "cannot add file to the tar archive")
-       }
-       return nil
-}
-
-func appendToTarWithPath(path string, writer *tar.Writer) error {
-       info, err := os.Stat(path)
-       if err != nil {
-               return err
+               return "", errors.Wrap(err, "cannot add file to the tar 
archive")
        }
 
-       //TODO: we ned some constants
-       relocatedPath := strings.TrimPrefix(path, "/tmp/artifacts")
+       return fileName, nil
+}
 
+func appendDataToTar(data []byte, tarPath string, writer *tar.Writer) error {
        writer.WriteHeader(&tar.Header{
-               Name:    relocatedPath,
-               Size:    info.Size(),
-               Mode:    int64(info.Mode()),
-               ModTime: info.ModTime(),
+               Name: tarPath,
+               Size: int64(len(data)),
+               Mode: 0644,
        })
 
-       file, err := os.Open(path)
-       if err != nil {
-               return err
-       }
-       defer file.Close()
-
-       _, err = io.Copy(writer, file)
+       _, err := writer.Write(data)
        if err != nil {
-               return errors.Wrap(err, "cannot add file to the tar archive")
+               return errors.Wrap(err, "cannot add data to the tar archive")
        }
        return nil
 }
diff --git a/tmp/build/Dockerfile b/tmp/build/Dockerfile
index df1abde..cbd151d 100644
--- a/tmp/build/Dockerfile
+++ b/tmp/build/Dockerfile
@@ -1,4 +1,4 @@
-FROM fabric8/s2i-java:2.1
+FROM fabric8/s2i-java:2.3
 
 #RUN adduser -D camel-k-operator
 #USER camel-k-operator

Reply via email to