Я строю общую библиотеку (я не инженер по КИ) для конвейера Jenkins. Как часть этого, мы подумываем предоставить конфигурации в файле yaml, и сценарий конвейера Jenkinsfile будет считан из файла yaml.
Итак, мы планируем зафиксировать файл Jenkinsfile и файл yaml в одном репозитории git ( скажем, репо А), и задание будет выполняться на ведомой машине с использованием другого репозитория git (скажем, репо В). После клонирования репозитория A. Jenkinsfile будет выполнен из мастера. Файл yaml также находится в главной рабочей области. В ведомом устройстве репозиторий B будет клонирован, и будет выполняться сборка, как определено в Jenkinsfile. Но у меня возникает вопрос: как мне прочитать файл yaml из сценария Jenkinsfile без необходимости клонировать репо A в подчиненном, т. Е. Как я могу ссылаться на файл, присутствующий в master, а не в slave из Jenkinsfile? Этот вопрос возникает потому, что любой файл, который я пытаюсь открыть, открывается от ведомого устройства, а не от главного.
Заранее спасибо.
РЕДАКТИРОВАТЬ: Что-то, что я забыл упомянуть. Мы на самом деле думали об использовании sta sh от master и unsta sh в slave. Но проблема в том, что мы выполняем только рабочие конфигурации, а среда предоставляется нам какой-то другой командой, которая также предоставляет многим другим командам. Из-за этого у мастера редко бывают свободные исполнители. Таким образом, даже когда мы запускаем работу, она зависает в ожидании освобождения мастера. Есть ли другой способ загрузить файл yaml, когда скрипт конвейера загружается в память мастера?