在詹金斯访问文件参数

Access file parameter in jenkins

我正在 Jenkins 中进行多配置作业(Regression_L1),其任务是 运行 2 种测试(test1 和 test2)。在多配置作业中,它会触发一个执行程序作业(Regression_executor)到运行 脚本来选择测试。 Regression_L1 作业仅限于 matrix_service_jobs 节点中的 运行,而矩阵作业是 运行在slave节点custom_matrix_service_jobs节点。 Regression_executor 作业被限制在具有特定标签 (RL1_Test_Machine) 的远程计算机中的 运行。

我的目标是测试开发人员的自定义构建。因此,我为作业添加了一个文件参数(配置 - 文件位置:CUSTOMBUILD/mybuild.zip)。问题是如何访问上传的文件?

一些重要信息:

我不知道在哪里可以找到上传的文件,所以我搜索了 ung linux find。结果是: /var/work/jenkins_home/Regression_L1/TEST_PHASE/test2/label/custom_matrix_service_jobs/builds/${BUILD_NUMBER}/fileParameters/CUSTOMBUILD/mybuild.zip.

如何复制到执行测试脚本的slave节点?

无论您在“文件位置”下输入什么,都将是位置保存上传文件原始文件名的变量文件。

但是,在 *nix 上,/. 都不是有效的变量名称字符,因此在您的情况下,如果 "File Location" CUSTOMBUILD/mybuild.zip系统无法创建变量${CUSTOMBUILD/mybuild.zip}

该文件仍然位于 ${WORKSPACE}/CUSTOMBUILD/mybuild.zip 下。您也可以通过此路径访问它。

然后您可以使用Copy To Slave plugin,将文件从master复制到您的slave

我在 WORKSPACE 下找不到我上传的文件,所以我结束了使用

"%JENKINS_HOME%\jobs\%JOB_NAME%\builds\%BUILD_ID%\fileParameters\myUploadedFile"