multibranch: image tag me branch ka naam - main#1 aur feature#1 ab takrayenge nahi

This commit is contained in:
devops 2026-09-16 16:47:03 +00:00
parent cd6d992b63
commit 5559064dd8

View File

@ -47,12 +47,19 @@ def call(Map cfg = [:]) {
def branch = env.BRANCH_NAME ?: 'main'
def isPR = branch.startsWith('PR-')
def isMain = (branch == 'main' || branch == 'master')
// PR par sirf CI. Production sirf main/master se jaata hai.
def deployable = cfg.runDeploy && !isPR && (branch == 'main' || branch == 'master')
def deployable = cfg.runDeploy && !isPR && isMain
def rollbackTag = (env.ROLLBACK_TAG ?: '').trim()
def isRollback = rollbackTag != ''
def imageTag = isRollback ? rollbackTag : "${env.BUILD_NUMBER}"
// Multibranch me HAR branch ka build number 1 se shuru hota hai. Agar tag me
// sirf build number rakha to main#1 aur feature#1 ek hi image tag bana ke
// ek doosre ko overwrite kar denge. Isliye non-main branch ka naam tag me.
def safeBranch = branch.replaceAll('[^A-Za-z0-9._-]', '-').toLowerCase()
def imageTag = isRollback ? rollbackTag
: (isMain ? "${env.BUILD_NUMBER}"
: "${safeBranch}-${env.BUILD_NUMBER}")
def fullImage = "${P.registry}/${cfg.imageName}:${imageTag}"
def commonEnv = [