У меня один и тот же файл Jenkinsfile в разных ветках моего GitRepo. Но я могу видеть все этапы в Jenkinsfile только в ветке Master. На других ветках видны только некоторые из этапов.
Этапы не зависят от ветки Jenkinsfile.
Я также видел подобное поведение с другими репозиториями. Что мне не хватает в моих ветках или Jenkinsfile?
node {
stage('Checkout from Github') {
checkout scm
}
try{
stage('Unit Tests') {
sh 'gradle test'
junit 'build/test-results/test/*.xml'
}
stage('Integration Tests') {
sh 'gradle integrationTest'
junit 'build/test-results/integrationTest/*.xml'
}
stage('Coverage') {
// generate test report
sh 'gradle jacocoTestReport'
// verify minimum coverage
sh 'gradle jacocoTestCoverageVerification'
}
stage('SonarQube') {
withSonarQubeEnv('SonarQubeServer') {
// submit results to SonarQube
sh 'gradle sonarqube'
}
}
stage('Quality Gate') {
timeout(time: 1, unit: 'HOURS') {
// TODO: make this a failure criteria once coverage is ready
waitForQualityGate abortPipeline: false
}
}
stage('Publish War') {
sh 'gradle publish'
}
}
}
stage('Publish Helm Chart') {
something
}
} finally {
something
}
}
Jenkinsfile одинаков для обеих веток.
файл jenkins, который я скопировал, и сделанные мной скриншоты были из двух разных репозиториев. но изображения взяты из одного репо, и оба имеют один и тот же файл Jenkins. Jenkinsfile был добавлен, чтобы показать, что у меня есть очень простой Jenkinsfile, ничего особенного для веток.
Пожалуйста, покажите скриншоты того, как это не удается для этого файла Jenkins, который вы нам показали + конфигурация Jenkins.
Плагин представления этапов конвейера отображает только этапы, которые были выполнены хотя бы один раз любой отображаемой им сборкой.
На ваших скриншотах вы видите именно это. На мастере все этапы были выполнены в сборке №5, поэтому они представлены столбцом в таблице. В ветке есть только одна сборка, которая не удалась на ранней стадии, поэтому до этой стадии остались только столбцы, так как остальные были пропущены.
Такое поведение также можно увидеть, когда вы удаляете или, что еще более раздражает, переименовываете этапы. У старых этапов есть столбец, пока они не выпадут из истории.
Похоже, что это так. Мне было интересно, потому что во всех других репозиториях мастер и ветка функций показали аналогичное поведение
проблема в том, что обе ветви не тянут нужные емкости ...
один, похоже, вообще не выполняет выборку, а другой, похоже, получает тайм-аут.
файл, который определяет реестр контейнеров и / или контейнеры, может отличаться.
Очевидно, что в конфигурации основной ветки есть что-то еще. Где в этом Jenkinsfile находится «лицензия на запуск контейнера»?