This is an automated email from the ASF dual-hosted git repository. marat pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-karavan.git
The following commit(s) were added to refs/heads/main by this push: new 09c889e4 Prepare to work in Openshift for #885 09c889e4 is described below commit 09c889e4e607713f06987541a9cbd782a1e6e4b5 Author: Marat Gubaidullin <ma...@talismancloud.io> AuthorDate: Sun Sep 17 12:12:25 2023 -0400 Prepare to work in Openshift for #885 --- karavan-web/docker/Dockerfile.devmode | 31 +++++++++------------- karavan-web/docker/maven-settings.xml | 7 ----- .../camel/karavan/docker/DockerForKaravan.java | 2 +- .../apache/camel/karavan/docker/DockerService.java | 3 ++- .../src/main/resources/snippets/openshift-build.sh | 4 +-- 5 files changed, 18 insertions(+), 29 deletions(-) diff --git a/karavan-web/docker/Dockerfile.devmode b/karavan-web/docker/Dockerfile.devmode index ce7abf81..2e8ddcbf 100644 --- a/karavan-web/docker/Dockerfile.devmode +++ b/karavan-web/docker/Dockerfile.devmode @@ -6,32 +6,27 @@ LABEL "org.opencontainers.image.url"="https://camel.apache.org" LABEL "org.opencontainers.image.licenses"="Apache 2.0" LABEL "org.opencontainers.image.version"="4.0.0-RC2" +RUN apt-get update && apt-get install git && apt-get clean + ENV JBANG_VERSION=0.110.0 ENV CAMEL_VERSION=4.0.0 -ENV DOT_CAMEL="/.camel" ENV KARAVAN="/karavan" -ENV BUILDER_PATH="$KARAVAN/builder" -ENV JBANG_REPO="$KARAVAN/.jbang/cache/.m2" ENV JBANG_DIR="$KARAVAN/.jbang" -ENV MAVEN_SETTINGS="$KARAVAN/maven-settings.xml" +ENV MAVEN_CONFIG="$KARAVAN/.m2" +ENV JBANG_REPO=$MAVEN_CONFIG +ENV BUILDER_PATH="$KARAVAN/builder" ENV CODE_DIR="$KARAVAN/code" -ENV KAMELETS_DIR="/$CODE_DIR/kamelets" -ENV PATH="${PATH}:$KARAVAN/.jbang/bin" +ENV KAMELETS_DIR="$CODE_DIR/kamelets" +ENV PATH="$PATH:$KARAVAN/.jbang/bin" +ENV _JAVA_OPTIONS="-Duser.home=$KARAVAN" -RUN apt-get update && apt-get install git && apt-get clean -RUN mkdir -p $DOT_CAMEL \ - && mkdir -p $KARAVAN \ +RUN mkdir -p $JBANG_REPO \ && mkdir -p $CODE_DIR \ - && mkdir -p $BUILDER_PATH \ - && mkdir -p $JBANG_REPO - -COPY maven-settings.xml $KARAVAN/maven-settings.xml + && mkdir -p $BUILDER_PATH RUN chgrp -R 0 $KARAVAN && chmod -R g+rwX $KARAVAN -RUN chgrp -R 0 $DOT_CAMEL && chmod -R g+rwX $DOT_CAMEL -RUN chgrp -R 0 $HOME && chmod -R g+rwX $HOME -RUN git config --global --add safe.directory ${CODE_DIR} +USER 1001 RUN curl -Ls https://sh.jbang.dev | bash -s - app setup \ && jbang trust add --quiet https://github.com/apache/camel \ @@ -39,5 +34,5 @@ RUN curl -Ls https://sh.jbang.dev | bash -s - app setup \ && jbang config set cache-evict never EXPOSE 8080 -WORKDIR $CODE_DIR -CMD jbang $JBANG_OPTIONS -Dcamel.jbang.version=$CAMEL_VERSION camel@apache/camel run --source-dir=$CODE_DIR --console --local-kamelet-dir=$KAMELETS_DIR --maven-settings=$MAVEN_SETTINGS +WORKDIR $CODE +CMD jbang $JBANG_OPTIONS -Dcamel.jbang.version=$CAMEL_VERSION camel@apache/camel run --source-dir=$CODE_DIR --console --local-kamelet-dir=$KAMELETS_DIR \ No newline at end of file diff --git a/karavan-web/docker/maven-settings.xml b/karavan-web/docker/maven-settings.xml deleted file mode 100644 index 786fbcd8..00000000 --- a/karavan-web/docker/maven-settings.xml +++ /dev/null @@ -1,7 +0,0 @@ -<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd"> - - <localRepository>/karavan/.jbang/cache/.m2</localRepository> - -</settings> \ No newline at end of file diff --git a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java index a850dc4f..aebc197e 100644 --- a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java +++ b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java @@ -97,7 +97,7 @@ public class DockerForKaravan { } private Map<String,String> getMavenVolumes(){ - return mavenCache.map(s -> Map.of(s, "/root/.m2")).orElseGet(Map::of); + return mavenCache.map(s -> Map.of(s, "/karavan/.m2")).orElseGet(Map::of); } public void syncImage(String projectId, String tag) throws InterruptedException { diff --git a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java index 00eb083e..174a33e5 100644 --- a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java +++ b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java @@ -282,7 +282,7 @@ public class DockerService extends DockerServiceUtils { TarArchiveEntry tarEntry = new TarArchiveEntry(new File(path)); tarEntry.setName(filename); - tarEntry.setMode(0700); + tarEntry.setMode(0755); tarArchive.putArchiveEntry(tarEntry); IOUtils.write(Files.readAllBytes(Paths.get(path)), tarArchive); tarArchive.closeArchiveEntry(); @@ -389,6 +389,7 @@ public class DockerService extends DockerServiceUtils { public List<String> getImages() { return getDockerClient().listImagesCmd().withShowAll(true).exec().stream() + .filter(image -> image != null && image.getRepoTags() != null && image.getRepoTags().length > 0) .map(image -> image.getRepoTags()[0]).toList(); } diff --git a/karavan-web/karavan-app/src/main/resources/snippets/openshift-build.sh b/karavan-web/karavan-app/src/main/resources/snippets/openshift-build.sh index 4ddce9a0..517158d4 100644 --- a/karavan-web/karavan-app/src/main/resources/snippets/openshift-build.sh +++ b/karavan-web/karavan-app/src/main/resources/snippets/openshift-build.sh @@ -21,7 +21,7 @@ cd ${CODE_DIR}/${PROJECT_ID} jbang -Dcamel.jbang.version=${CAMEL_VERSION} camel@apache/camel export --local-kamelet-dir=${KAMELETS_DIR} export LAST_COMMIT=$(git rev-parse --short HEAD) -export DATE=$(date '+%Y%m%d%H%M%S') +export DATE=${TAG} export TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token) export NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace) @@ -30,4 +30,4 @@ mvn package jib:build oc:resource oc:apply \ -Djib.allowInsecureRegistries=true \ -Djib.to.image=${IMAGE_REGISTRY}/${IMAGE_GROUP}/${PROJECT_ID}:${DATE} \ -Djib.to.auth.username=${IMAGE_REGISTRY_USERNAME} \ - -Djib.to.auth.password=${IMAGE_REGISTRY_PASSWORD} + -Djib.to.auth.password=${IMAGE_REGISTRY_PASSWORD} \ No newline at end of file