Как запустить Jenkins Pipeline, определенный в одном репо, с помощью навигации по папке? - PullRequest
0 голосов
/ 14 апреля 2020

Проблема : У меня есть один репозиторий, в котором мне нужно пройти через репозиторий, чтобы найти указанный c Jenkinsfile для запуска конвейера. Обратите внимание, что я хочу определить путь к этому расширению Jenkinsfile, поэтому я подумал о том, чтобы иметь директорию репозитория jenkinsfilePath.yml in root, прочитать yaml, изменить каталог и запустить Jenkinfile по пути. Структура папок выглядит следующим образом:

testingSingleRepo

├── Jenkinsfile
├── feature_flagging
│   ├── Jenkinsfile
│   ├── __init__.py
│   ├── src
│   └── tests
└── jenkinsfilePath.yml

У меня проблема с запуском Jenkinsfile внутри feature_flagging из root Jenkinfile в testingSingleRepo. Мне удалось сменить каталог на папку feature_flagging с помощью dir. Много гуглив с похожими вопросами, я наткнулся на функцию build, но не смог заставить ее работать. Есть предложения / решения?

Ответы [ 2 ]

0 голосов
/ 15 апреля 2020

Итак, посмотрев вокруг, я решил go с другим подходом. Я решил, что у меня будет мастер Jenkinfile в root, где у меня будет общая настройка c конвейера. Он будет читать файл yaml, менять каталог и выполнять сценарии оболочки внутри папки Jenkins/ соответственно. Папка будет состоять из общих c скриптов, которые соответствуют конвейеру root Jenkins, таких как setup.sh, test.sh, deploy.sh et c. Структура папок будет выглядеть примерно так:

testingSingleRepo

├── Jenkinsfile
├── feature_flagging
│   ├── Jenkins/
│   ├── __init__.py
│   ├── src
│   └── tests
└── jenkinsfilePath.yml

0 голосов
/ 15 апреля 2020

Вызывая Jenkinsfile из основного конвейера, мы можем использовать load

load 'feature_flagging/Jenkinsfile'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...