From 8c4738f12d97fe4d8d09bdd292179a0cede09c05 Mon Sep 17 00:00:00 2001 From: egelhaus <156946629+egelhaus@users.noreply.github.com> Date: Mon, 14 Apr 2025 19:14:16 +0200 Subject: [PATCH] Update Jenkinsfile --- Jenkinsfile | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 57d6bf97..dbcac16e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,6 +3,7 @@ pipeline { environment { NODE_VERSION = '20.17.0' + PR_NUMBER = "${env.CHANGE_ID}" // PR number comes from webhook payload } stages { @@ -32,6 +33,38 @@ pipeline { sh 'npm run build' } } + + stage('Build and Push Docker Image') { + when { + expression { return env.CHANGE_ID != null } // Only run if it's a PR + } + steps { + withCredentials([string(credentialsId: 'gh-pat', variable: 'GITHUB_PASS')]) { + + // Docker login step + sh ''' + echo "$GITHUB_PASS" | docker login ghcr.io -u "egelhaus" --password-stdin + ''' + + // Set image tag dynamically based on the PR number + sh ''' + IMAGE_TAG="ghcr.io/gitroomhq/postiz-app-pr:$PR_NUMBER" + echo "IMAGE_TAG=$IMAGE_TAG" >> image.env + ''' + + // Build Docker image + sh ''' + source image.env + docker build -f Dockerfile.dev -t $IMAGE_TAG . + ''' + + // Push Docker image to GitHub Container Registry + sh ''' + source image.env + docker push $IMAGE_TAG + ''' + } + } } post { success {