Доступ к параметру файла в jenkins

Я работаю над многоконфигурационным заданием (Regression_L1) в Jenkins, задачей которого является запуск 2 видов тестов (test1 и test2). В задании с несколькими конфигурациями запускается задание исполнителя (Regression_executor) для запуска сценария для выбранного теста. Задание Regression_L1 ограничено для выполнения в узле matrix_service_jobs, в то время как задания матрицы должны выполняться в подчиненном узле custom_matrix_service_jobs. Задание Regression_executor ограничено для запуска на удаленных машинах с определенной меткой (RL1_Test_Machine).

Моя цель - протестировать пользовательскую сборку от разработчиков. И поэтому я добавил параметр File (config - File Location: CUSTOMBUILD / mybuild.zip) для работы. Вопрос в том, как я могу получить доступ к загруженному файлу?

Немного важной информации:

  • Рабочая область Regression_executor: /home/regressionexec/
  • Рабочая область Regression_L1: /var/work/matrix_service_jobs/Regression_L1
  • Рабочие пространства матрицы Regression_l1: /var/work/workspace_user_matrix/workspace/Regression_L1/TEST_PHASE/test1/label/custom_matrix_service_jobs/ а также /var/work/workspace_user_matrix/workspace/Regression_L1/TEST_PHASE/test2/label/custom_matrix_service_jobs/
  • $JENKINS_HOME: var/work/jenkins_home

Я не знал, где найти загруженные файлы, поэтому я сделал поиск Ung Linux find, Результат: /var/work/jenkins_home/Regression_L1/TEST_PHASE/test2/label/custom_matrix_service_jobs/builds/${BUILD_NUMBER}/fileParameters/CUSTOMBUILD/mybuild.zip,

Как я могу скопировать его на подчиненный узел, который выполняет тестовый скрипт?

2 ответа

Решение

Все, что вы вводите в "Расположение файла", это будет местоположение и переменная, которая содержит исходное имя файла загруженного файла.

Однако на *nix, ни / ни . допустимые символы имени переменной, так что в вашем случае, если "Расположение файла" CUSTOMBUILD/mybuild.zip система не может создать переменную ${CUSTOMBUILD/mybuild.zip}

Файл все еще находится под ${WORKSPACE}/CUSTOMBUILD/mybuild.zip, Вы также можете получить к нему доступ по этому пути.

Затем вы можете использовать плагин Copy To Slave, чтобы скопировать файл с мастера на подчиненные

Я не смог найти загруженный файл в WORKSPACE, поэтому я перестал использовать что-то вроде

"%JENKINS_HOME%\jobs\%JOB_NAME%\builds\%BUILD_ID%\fileParameters\myUploadedFile"
Другие вопросы по тегам