From 89bd535662d107346c6c3abe08b06c556dd2863f Mon Sep 17 00:00:00 2001 From: Andreas Dinauer Date: Sun, 15 Mar 2026 09:52:16 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A7=20Add=20Jenkinsfile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Jenkinsfile | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100755 index 0000000..ed4d827 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,47 @@ +pipeline { + agent any + + stages { + stage('Set Image Name') { + steps { + script { + env.TAG = "${env.BUILD_NUMBER}" + env.REFERENCE = "harbor.dinauer.dev/oidc-proxy/core" + env.IMAGE = "${env.REFERENCE}:${env.BUILD_NUMBER}"; + } + } + } + stage('Build Quarkus application') { + steps { + script { + sh './mvnw clean package -DskipTests=true' + } + } + } + stage('Build Docker Image') { + steps { + script { + sh "docker build --no-cache -t ${env.IMAGE} -f src/main/docker/Dockerfile.jvm ." + } + } + } + stage('Push Image to Docker Hub') { + steps { + script { + withCredentials([usernamePassword(credentialsId: 'harbor', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]) { + sh 'echo ${PASSWORD} | docker login harbor.dinauer.dev -u ${USERNAME} --password-stdin' + sh "docker push ${env.IMAGE}" + sh "docker logout" + } + } + } + } + stage('Remove image from host') { + steps { + script { + sh "docker image rm --force ${env.IMAGE}" + } + } + } + } +} \ No newline at end of file