You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hop.apache.org by ha...@apache.org on 2020/12/06 15:24:54 UTC

[incubator-hop] 12/22: HOP-2122

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

hansva pushed a commit to branch integration-tests
in repository https://gitbox.apache.org/repos/asf/incubator-hop.git

commit 9c824fad363eb40f01f550db27994cc8697e84bb
Author: Hans Van Akelyen <ha...@gmail.com>
AuthorDate: Sun Dec 6 09:45:04 2020 +0100

    HOP-2122
---
 Dockerfile.unit-tests | 20 +++++++++++++-------
 Jenkinsfile.daily     | 28 ++++++++++++++--------------
 2 files changed, 27 insertions(+), 21 deletions(-)

diff --git a/Dockerfile.unit-tests b/Dockerfile.unit-tests
index 83c2f2d..72be821 100644
--- a/Dockerfile.unit-tests
+++ b/Dockerfile.unit-tests
@@ -8,6 +8,11 @@ ENV BRANCH_NAME=$BRANCH_NAME
 ENV DEPLOYMENT_PATH=/opt
 # volume mount point
 ENV VOLUME_MOUNT_POINT=/files
+#Jenkins user an group
+ENV JENKINS_USER=hop
+ENV JENKINS_GROUP=hop
+ENV JENKINS_UID=1000
+ENV JENKINS_GID=1000
 
 # any JRE settings you want to pass on
 # The “-XX:+AggressiveHeap” tells the container to use all memory assigned to the container. 
@@ -21,22 +26,23 @@ RUN apk update \
   && apk add --no-cache bash curl procps \ 
   && rm -rf /var/cache/apk/* \
   && mkdir ${VOLUME_MOUNT_POINT} \
-  && adduser -D -s /bin/bash -h /home/hop hop \
-  && chown hop:hop ${DEPLOYMENT_PATH} \
-  && chown hop:hop ${VOLUME_MOUNT_POINT}
+  && addgroup -g ${JENKINS_GID} ${JENKINS_GROUP} \
+  && adduser -D -s /bin/bash -h /home/${JENKINS_USER} --uid ${JENKINS_UID} --ingroup ${JENKINS_GROUP} ${JENKINS_USER} \
+  && chown ${JENKINS_USER}:${JENKINS_GROUP} ${DEPLOYMENT_PATH} \
+  && chown ${JENKINS_USER}:${JENKINS_GROUP} ${VOLUME_MOUNT_POINT}
 
 # copy the hop package from the local resources folder to the container image directory
-COPY --chown=hop:hop ./assemblies/client/target/hop-* ${DEPLOYMENT_PATH}/hop.zip
+COPY --chown=${JENKINS_USER}:${JENKINS_GROUP} ./assemblies/client/target/hop-* ${DEPLOYMENT_PATH}/hop.zip
 
 RUN unzip ${DEPLOYMENT_PATH}/hop.zip -d ${DEPLOYMENT_PATH} \
   && rm ${DEPLOYMENT_PATH}/hop.zip \
-  && chown -R hop:hop ${DEPLOYMENT_PATH}/hop \
+  && chown -R ${JENKINS_USER}:${JENKINS_GROUP} ${DEPLOYMENT_PATH}/hop \
   && chmod 700 ${DEPLOYMENT_PATH}/hop/*.sh
 
 # make volume available so that hop pipeline and workflow files can be provided easily
 VOLUME ["/files"]
-USER hop
+USER ${JENKINS_USER}
 ENV PATH=$PATH:${DEPLOYMENT_PATH}/hop
-WORKDIR /home/hop
+WORKDIR /home/${JENKINS_USER}
 # CMD ["/bin/bash"]
 ENTRYPOINT []
\ No newline at end of file
diff --git a/Jenkinsfile.daily b/Jenkinsfile.daily
index b7460ce..e573140 100644
--- a/Jenkinsfile.daily
+++ b/Jenkinsfile.daily
@@ -80,28 +80,28 @@ pipeline {
             }
             steps {
                 echo 'Build & Test'
-                sh "mvn $MAVEN_PARAMS clean install"
-            }
-        }
-        stage('Code Quality') {
-            when {
-                branch 'integration-tests'
-            }
-            steps {
-                echo 'Checking Code Quality on SonarCloud'
-                withCredentials([string(credentialsId: 'sonarcloud-key-apache-hop', variable: 'SONAR_TOKEN')]) {
-                    sh 'mvn sonar:sonar -Dsonar.host.url=https://sonarcloud.io -Dsonar.organization=apache -Dsonar.projectKey=apache_incubator-hop -Dsonar.branch.name=${BRANCH_NAME} -Dsonar.login=${SONAR_TOKEN}'
-                }
+                sh "mvn $MAVEN_PARAMS clean install -DskipTests=true"
             }
         }
+        // stage('Code Quality') {
+        //     when {
+        //         branch 'integration-tests'
+        //     }
+        //     steps {
+        //         echo 'Checking Code Quality on SonarCloud'
+        //         withCredentials([string(credentialsId: 'sonarcloud-key-apache-hop', variable: 'SONAR_TOKEN')]) {
+        //             sh 'mvn sonar:sonar -Dsonar.host.url=https://sonarcloud.io -Dsonar.organization=apache -Dsonar.projectKey=apache_incubator-hop -Dsonar.branch.name=${BRANCH_NAME} -Dsonar.login=${SONAR_TOKEN}'
+        //         }
+        //     }
+        // }
         stage('Create Docker image & Run Tests'){
             when {
                 branch 'integration-tests'
             }
             steps {
                 script {
-                    dockerImage = docker.build(imagename, "-f Dockerfile.unit-tests .")
-                    dockerImage.inside("-v $WORKSPACE/integration-tests:/files -u hop:hop"){
+                    dockerImage = docker.build(imagename, "-f Dockerfile.unit-tests -build-arg JENKINS_USER=$(JENKINS_USER) --build-arg JENKINS_UID=$(JENKINS_UID) --build-arg JENKINS_GROUP=$(JENKINS_GROUP) --build-arg JENKINS_GID=$(JENKINS_GID) .")
+                    dockerImage.inside("-v $WORKSPACE/integration-tests:/files"){
                         echo 'Run tests'
                         sh 'ls /files'
                         sh 'cd /files/scripts && ./run-tests.sh'