我为一些特定的基于项目的自动化编写了一些bash脚本。我正在使用参数化构建过程来上传文件,如SO link中所述。 问题是我需要从脚本访问上传的文件,但我不知道上传后放置的位置。
Jenkins暗示该位置将相对于工作区。根据詹金斯的意思,我不确定工作空间是什么。 我尝试了几个选项..中继位置,/ users / $ USER / workspace /,/ users / $ USER / workspace / [project_name] /
有人可以帮助我吗?
提前致谢。
答案 0 :(得分:2)
工作区通常位于'jenkins'文件夹下,由作业名称分隔。
要找到作业工作区的确切位置,只需在作业中回显该参数的值:
{{1} (对于Unix / Linux / Mac)
echo $WORKSPACE
(对于Windows)
要在脚本中使用此位置,只需将其添加到文件路径中:
echo %WORKSPACE%
或<登记/> ls -l $WORKSPACE/myFile.txt
请注意,如果您尝试从 Job_BB 访问 Job_AA 的结果,则会有点棘手,
因为每个人都坐在不同的工作区
(您可以访问其他作业的工作区,但现在 Job_BB 取决于 Job_AA 的名称,
这很糟糕。)
为此,我建议在Jenkins之外的所有构建结果中使用共享位置。
祝你好运!答案 1 :(得分:1)
Jenkins假定上传文件的路径将由构建工作区的路径预先添加。您可以将文件位置指定为$WORKSPACE/path/to/file
(Jenkins使用每个版本的相应路径填充$ WORKSPACE)或仅path/to/file