У меня есть требование разрешить ветвь патча также с мастер-веткой (мы используем git).
stages {
stage('PR Build') {
when {
beforeAgent true
expression {
isMaster = env.BRANCH_NAME == masterBranchName
isPatch = env.BRANCH_NAME !=~ /Patch_For_*([a-z0-9]*)/
echo "isMaster : ${isMaster} , isPatch : ${isPatch}"
return !isMaster && !isPatch
}
}
steps {
script{
buildType = 'PR'
}
// Do PR build here...
}
}
stage('Build master / patch branch') {
when {
beforeAgent true
expression {
isMaster = env.BRANCH_NAME == masterBranchName
isPatch = env.BRANCH_NAME !=~ /Patch_For_*([a-z0-9]*)/
echo "isMaster : ${isMaster} , isPatch : ${isPatch}"
return isMaster || isPatch
}
}
steps {
script {
buildType = 'deployment'
)
}
// Do master or patch branch build and deployment
}
}
Здесь проблема в регулярных выражениях ветки Patch.Я хочу, чтобы Дженкинс проверил, начинается ли ветвь патча с Patch_For_shortCommitIDSha
, например Patch_For_87eff88
Но регулярное выражение, которое я написал неправильно, допускает ветки, отличные от веток, начинающиеся с Patch_For_