From ec1481243cabd8d924ee4e9b7bdbf46dec461bac Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 16:54:46 -0800 Subject: [PATCH 01/11] Try to fetch tags --- Jenkinsfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Jenkinsfile b/Jenkinsfile index 730614a..05e91bb 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -18,6 +18,7 @@ podTemplate(label: label, containers: [ node(label) { stage('Checkout') { checkout scm + sh "git fetch" GIT_HASH = sh ( script: 'git rev-parse --short HEAD', returnStdout: true From 6eec750041e63c060b95cd8326d4562e19cf6927 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 17:20:56 -0800 Subject: [PATCH 02/11] See if it persists --- Jenkinsfile | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 05e91bb..9e80884 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -31,11 +31,9 @@ podTemplate(label: label, containers: [ stage('Build') { sh ''' mvn clean package -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn + ls ~/.m2/fr/brouillard/oss/jgitver/0.14.0 ''' } - stage('Archive') { - archiveArtifacts artifacts: 'target/*.jar', followSymlinks: false - } } container('kaniko') { stage('Image') { @@ -53,6 +51,7 @@ podTemplate(label: label, containers: [ } stage('Archive') { archiveArtifacts artifacts: 'target/*.tar', followSymlinks: false + archiveArtifacts artifacts: 'target/*.jar', followSymlinks: false } } } From 14720420d075e326d3ad328b5ecdc3ab65856a28 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 17:48:48 -0800 Subject: [PATCH 03/11] Obtain versions --- Jenkinsfile | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 9e80884..545dbd6 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,7 +1,11 @@ -def label = "servicedemo-${UUID.randomUUID().toString()}" +def POD_LABEL="servicedemo-${UUID.randomUUID().toString()}" -podTemplate(label: label, containers: [ +def REGISTRY="docker.home.thejimnicholson.com/servicedemo" + +def POM_VERSION="unknown" + +podTemplate(label: POD_LABEL, containers: [ containerTemplate( name: 'maven', image: 'maven:3.8.4-openjdk-11', @@ -12,7 +16,7 @@ podTemplate(label: label, containers: [ name: 'kaniko', image: 'gcr.io/kaniko-project/executor:debug', command: 'sleep', - args: '99d' + args: '30d' ) ], workspaceVolume: dynamicPVC()) { node(label) { @@ -27,12 +31,16 @@ podTemplate(label: label, containers: [ script: 'git describe --tags --always --dirty=-dirty', returnStdout: true ).trim() + container('maven') { stage('Build') { sh ''' mvn clean package -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn - ls ~/.m2/fr/brouillard/oss/jgitver/0.14.0 ''' + POM_VERSION=sh ( + script: "java -jar /root/.m2/repository/fr/brouillard/oss/jgitver/0.14.0/jgitver-0.14.0-executable.jar", + returnStdout: true + ) } } container('kaniko') { @@ -43,9 +51,9 @@ podTemplate(label: label, containers: [ -c `pwd` \ --insecure \ --skip-tls-verify \ - --no-push \ - --tarPath ./target/servicedemo.image.tar \ - --destination=servicedemo:${GIT_HASH}" + --tarPath ./target/servicedemo-${POM_VERSION}.image.tar \ + --destination=${registry}servicedemo:${POM_VERSION} \ + --destination=${registry}servicedemo:${GIT_TAG}" } } From b0b94c3274468c5bd131be0450ef1a6db2d138e5 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 17:50:39 -0800 Subject: [PATCH 04/11] Specify label for node --- Jenkinsfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 545dbd6..674fd3a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -19,7 +19,7 @@ podTemplate(label: POD_LABEL, containers: [ args: '30d' ) ], workspaceVolume: dynamicPVC()) { - node(label) { + node(POD_LABEL) { stage('Checkout') { checkout scm sh "git fetch" @@ -52,8 +52,8 @@ podTemplate(label: POD_LABEL, containers: [ --insecure \ --skip-tls-verify \ --tarPath ./target/servicedemo-${POM_VERSION}.image.tar \ - --destination=${registry}servicedemo:${POM_VERSION} \ - --destination=${registry}servicedemo:${GIT_TAG}" + --destination=${REGISTRY}servicedemo:${POM_VERSION} \ + --destination=${REGISTRY}servicedemo:${GIT_TAG}" } } From 9ddef534b37d46f05d71fd9a3b14bc9d783c3244 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 17:56:03 -0800 Subject: [PATCH 05/11] More refactoring --- Jenkinsfile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 674fd3a..31b78ed 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,9 +1,9 @@ def POD_LABEL="servicedemo-${UUID.randomUUID().toString()}" - def REGISTRY="docker.home.thejimnicholson.com/servicedemo" - def POM_VERSION="unknown" +def MVN_OPTS="-B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" + podTemplate(label: POD_LABEL, containers: [ containerTemplate( @@ -33,10 +33,15 @@ podTemplate(label: POD_LABEL, containers: [ ).trim() container('maven') { + stage('Prep') { + sh """ + mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -Dartifact=fr.brouillard.oss:jgitver:0.14.0:jar:executable ${MVN_OPTS} + """ + } stage('Build') { - sh ''' + sh """ mvn clean package -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn - ''' + """ POM_VERSION=sh ( script: "java -jar /root/.m2/repository/fr/brouillard/oss/jgitver/0.14.0/jgitver-0.14.0-executable.jar", returnStdout: true From 9cba01f83710b53e7894e4236acaf2d73cd5efca Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 18:37:02 -0800 Subject: [PATCH 06/11] Fix some things --- Jenkinsfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 31b78ed..d055496 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -57,8 +57,8 @@ podTemplate(label: POD_LABEL, containers: [ --insecure \ --skip-tls-verify \ --tarPath ./target/servicedemo-${POM_VERSION}.image.tar \ - --destination=${REGISTRY}servicedemo:${POM_VERSION} \ - --destination=${REGISTRY}servicedemo:${GIT_TAG}" + --destination=${REGISTRY}/servicedemo:${POM_VERSION} \ + --destination=${REGISTRY}/servicedemo:${GIT_HASH}" } } From f0d4a34a564fef859a6d391716d130632761e872 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 22:22:58 -0800 Subject: [PATCH 07/11] Expose ports, set profile --- Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index 6aeca85..87dcffd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,6 @@ FROM openjdk:11-jre-slim ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} app.jar +ENV SPRING_PROFILES_ACTIVE=docker +EXPOSE 9098 ENTRYPOINT ["java","-jar","/app/jar"] From 32afe92f30f250db2717ed47c9e90bf9538b8b8d Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 22:31:34 -0800 Subject: [PATCH 08/11] Also push "latest" --- Jenkinsfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index d055496..2055282 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -58,7 +58,8 @@ podTemplate(label: POD_LABEL, containers: [ --skip-tls-verify \ --tarPath ./target/servicedemo-${POM_VERSION}.image.tar \ --destination=${REGISTRY}/servicedemo:${POM_VERSION} \ - --destination=${REGISTRY}/servicedemo:${GIT_HASH}" + --destination=${REGISTRY}/servicedemo:${GIT_HASH} \" + --destination=${REGISTRY}/servicedemo:latest" } } From 3c770a61cabc62e7c61d7ba91b73f2f9addef853 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Thu, 23 Dec 2021 22:49:20 -0800 Subject: [PATCH 09/11] Fix typo --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 2055282..b4ce097 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -58,7 +58,7 @@ podTemplate(label: POD_LABEL, containers: [ --skip-tls-verify \ --tarPath ./target/servicedemo-${POM_VERSION}.image.tar \ --destination=${REGISTRY}/servicedemo:${POM_VERSION} \ - --destination=${REGISTRY}/servicedemo:${GIT_HASH} \" + --destination=${REGISTRY}/servicedemo:${GIT_HASH} \ --destination=${REGISTRY}/servicedemo:latest" } From 6cb7fe8dbd50a347c82cfb3d97eb491b6c629174 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Fri, 24 Dec 2021 10:06:27 -0800 Subject: [PATCH 10/11] Fix execution command --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 87dcffd..98cf0d9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,4 +3,4 @@ ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} app.jar ENV SPRING_PROFILES_ACTIVE=docker EXPOSE 9098 -ENTRYPOINT ["java","-jar","/app/jar"] +ENTRYPOINT ["java","-jar","/app.jar"] From 0256b7b9ed9e239969c8fcdec98ec648e8034ff1 Mon Sep 17 00:00:00 2001 From: Jim Nicholson Date: Fri, 24 Dec 2021 10:06:37 -0800 Subject: [PATCH 11/11] Run from CI build --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 5d758e0..0e14daa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: student-service: container_name: servicedemo - image: servicedemo:latest + image: docker.home.thejimnicholson.com/servicedemo/servicedemo:latest ports: - "9098:9098" environment: