我有Jenkins字符串参数$ {EMAIL_ID},用户可以在其中输入他们的电子邮件ID.(说他们进来了myid@gmai.com
但是在这个过程的中间我想把它改成我在配置中指定的值,如下所示Execute Shell.
EMAIL_ID='example@ex.com'
echo $EMAIL_ID
--returns example@ex.com
Run Code Online (Sandbox Code Playgroud)
如果我在下一个中使用此变量,Execute Shell
则返回myid@gmai.com
我需要打印 example@ex.com
每个" 执行Shell "或任何其他构建步骤都会启动一个新的独立环境.此新环境继承了实际环境变量的副本以及为作业定义的所有构建参数,但意识到它们是副本/继承的.
您可以轻松更改环境变量的值:
但是,这种变化将是本地到这了"执行shell"的步骤的实例.如果在同一个"执行shell"步骤中回显该变量,则可以看到更改,但在下一个"执行shell"中,您将获得一个新副本(具有原始值).
要在构建步骤之间(或者就此而言的作业之间)保留更改的变量,您需要在第一步中保存它,并在下一步中加载它.最简单的方法是将值输出到文件:
echo param=$param > temp.props
然后使用EnvInject插件将此文件读入第二个"执行shell"步骤(注意,您需要在现有的两个"执行shell"步骤之间配置EnvInject构建步骤.
| 归档时间: |
|
| 查看次数: |
8626 次 |
| 最近记录: |