Jenkins 环境变量拾取杂散逗号,我该如何防止这种情况发生?
Jenkins environment variables picking up stray commas, how do I prevent this?
我在使用 jenkins 环境变量时遇到问题。我正在编写一个批处理文件,可以在构建 运行 时调用,它将一个文件写入构建目录,其中包含有关文件生成方式的信息。 (分支、日期时间、git 修订等)
批处理文件只是通过命令行参数获取一些 jenkins 环境变量,并将它们写入文本文件。这是我在构建期间通过执行 Shell 步骤进行的批处理调用:
c:\temp\~BuildStamper.bat "$GIT_COMMIT", "$BUILD_URL", "$JOB_NAME", "$BUILD_ID", "$WORKSPACE", "$GIT_BRANCH", "$BUILD_USER"
我注意到对于包含白色 space 的参数,在引号分隔符内附加了一个额外的逗号。生成的文本文件中的示例行:
职位名称:"Departure Board Build and Publish,"
我知道我在批处理文件中进行的处理不是问题,因为我可以在 Jenkins 生成的作业日志中看到传递到批处理文件中的值,并且逗号存在于传递到我的批处理文件时的值。
几乎看起来 Jenkins 在遇到带有白色 space 的字符串时错误地拆分了逗号分隔的字符串,但我在网上找不到任何关于 Jenkins 这种性质的问题。
还有其他人看到了吗?难道我做错了什么?我尝试将 vars 传递给 Jenkins sans 引号,但随后批处理文件开始将每个单词作为单独的参数读取。
KeepCalmAndCarryOn 做到了,逗号完全无关紧要。
我在使用 jenkins 环境变量时遇到问题。我正在编写一个批处理文件,可以在构建 运行 时调用,它将一个文件写入构建目录,其中包含有关文件生成方式的信息。 (分支、日期时间、git 修订等)
批处理文件只是通过命令行参数获取一些 jenkins 环境变量,并将它们写入文本文件。这是我在构建期间通过执行 Shell 步骤进行的批处理调用:
c:\temp\~BuildStamper.bat "$GIT_COMMIT", "$BUILD_URL", "$JOB_NAME", "$BUILD_ID", "$WORKSPACE", "$GIT_BRANCH", "$BUILD_USER"
我注意到对于包含白色 space 的参数,在引号分隔符内附加了一个额外的逗号。生成的文本文件中的示例行:
职位名称:"Departure Board Build and Publish,"
我知道我在批处理文件中进行的处理不是问题,因为我可以在 Jenkins 生成的作业日志中看到传递到批处理文件中的值,并且逗号存在于传递到我的批处理文件时的值。
几乎看起来 Jenkins 在遇到带有白色 space 的字符串时错误地拆分了逗号分隔的字符串,但我在网上找不到任何关于 Jenkins 这种性质的问题。
还有其他人看到了吗?难道我做错了什么?我尝试将 vars 传递给 Jenkins sans 引号,但随后批处理文件开始将每个单词作为单独的参数读取。
KeepCalmAndCarryOn 做到了,逗号完全无关紧要。