Я новичок в концепции конвейера с несколькими ветвями и пытаюсь реализовать в нашем проекте, где мы запускаем наши сборки jenkins внутри контейнеров докеров.
У нас есть требование, согласно которому вся сборка по ветке «разработка» должна выполнять сборку и создание образа докера. В то время как остальные созданные ветки «функция / исправление» должны выполнять только сборку.
Я написал файл Jenkinfile следующим образом
node {
checkout scm
if (env.BRANCH_NAME == 'develop') {
stage ('Stage for develop') {
echo "Build,create an docker-image"
}
}
else if (env.BRANCH_NAME == 'feature_branch') {
stage ('Stage for feature branch') {
echo "only build"
}
}
else {
echo "Branch branch not found"
}
Проблема здесь в том, что мы жестко кодируем имена веток функций, и это может быть проблемой, если кто-то создает ветку с другими именами, и Jenkinsfile не сможет ее идентифицировать.
Я пытаюсь написать так, чтобы Jenkinsfile автоматически идентифицировал вновь созданную ветку и запускал для нее сборку.
Любая помощь будет оценена.