2

我已经为一些特定的基于项目的自动化编写了一些 bash 脚本。我正在使用参数化构建过程来上传文件,如此SO 链接中所述。问题是我需要从脚本访问上传的文件,但我不知道上传后放置的位置。

Jenkins 暗示该位置将与工作空间相关。就詹金斯而言,我不确定工作空间是什么意思。我尝试了几个选项.. 主干位置 /users/$USER/workspace/、/users/$USER/workspace/[project_name]/

任何人都可以帮助我吗?

提前致谢。

4

2 回答 2

2

工作区通常位于“jenkins”文件夹下,由作业名称分隔。

  • 查找作业工作区的确切位置,
    只需在作业中回显该参数的值:(

    echo $WORKSPACE适用于 Unix/Linux/Mac)

    echo %WORKSPACE%(适用于 Windows)

  • 要在脚本中使用此位置,只需将其添加到文件路径:

    ls -l $WORKSPACE/myFile.txt

    dir %WORKSPACE%\myFile.txt

请注意,如果您尝试从Job_BB访问Job_AA的结果,会有点棘手, 因为每个都位于不同的工作区中。 (您可以访问其他作业的工作区,但现在Job_BB依赖于Job_AA名称, 这很糟糕。)


为此,我建议在 Jenkins 之外为所有构建结果使用共享位置。

祝你好运!

于 2012-09-07T08:44:26.963 回答
1

Jenkins 假设上传文件的路径将由构建工作区的路径添加。您可以将文件位置指定为$WORKSPACE/path/to/file(Jenkins 使用每个构建的适当路径填充 $WORKSPACE)或只是path/to/file

于 2012-09-06T17:15:06.693 回答