web_dev
@web_dev

Jenkins Pipeline — где храните свой Jenkinsfile?

Здравствуйте,

господа, такой вопрос. Надеюсь поделитесь опытом.
Новые проекты начинаем с всевозможной автоматизации релиз процесса, а также каждодневных рутин.
Посему есть несколько Jenkins-pipelines файлов. Два файла Jenkins-feature и Jenkins-release относятся к проекту, также есть несколько общих которые просто лежат в отдельном репозитории.

[b]Вопрос: Как и где вы храните свои Jenkinsfile-s? Почему-то хочется все пайплайны загрузить в один репозиторий и всё. Чтоб не было часть в проекте, а часть нет. Да и кажется, проект это одно, а как мы его релизим немного другое... Но с другой стороны, во многих примерах Jenkinsfile лежит в корневой директории проекта...[/b]

Плюсы: если Jenkinsfile в проекте - у нас сохраняется один шаг. Jenkins Pipeline автоматически тянет проект.

Минусы: нужно дополнительно тянуть проект и ещё несколько, которые достаточно сложно объяснить

stage('Project Checkout Stage') {
            steps {
                stepInfo("${PROJECT}/${REPOSITORY}/${BRANCH} Checkout Stage START")
                git url: 'https://scm/${PROJECT}/${REPOSITORY}.git', branch: '${BRANCH}', credentialsId: 'bla'
                stepInfo("${PROJECT}/${REPOSITORY}/${BRANCH} Checkout END")
            }
        }


Спасибо, надеюсь мой вопрос понятен...
  • Вопрос задан
  • 1890 просмотров
Пригласить эксперта
Ответы на вопрос 1
EreminD
@EreminD
Кое-что умею
Храним в отдельном репозитории все Jenkins-файлы. Для каждой джобы свой файл
5a951692cf6c9592383477.png

Уже в файле пишем, откуда что выгружать и как собирать
Минусов особых нет. На один больше запросов к репозиторию? Ну так себе "минус"
Из плюсов - версионирование дженкинсфайла и сохранность
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы