我觉得我必须在这里错过一些简单的东西 - 我想要做的是创建一个参数化的构建,其中一个参数是密码。我不想永久存储密码在Jenkins中。到目前为止,我已经能够使用“Mask Passwords”插件屏蔽控制台输出中的密码,但无论如何,任何版本的EnvInject的“Injected environment variables”页面都以纯文本显示密码。
我尝试过各种各样的事情,包括但不限于: 命名“Mask Passwords”密码与我的密码参数之一相同 命名“EnvInject”密码与我的密码参数之一相同
我找到了 https://issues.jenkins-ci.org/browse/JENKINS-12423 但我认为它只是指从控制台输出中屏蔽密码。
我在几个不同的操作系统和版本组合上尝试了这个,但是现在我只是试图让它继续工作: Windows 7 64位 詹金斯诉。 1.470 环境注入器插件1.55 掩码密码插件2.7.2
但我似乎无法弄清楚这一点。我觉得这可能不是一个非常罕见的设置,所以我可能只是错过了一些愚蠢的东西。
非常感谢任何帮助!
答案 0 :(得分:3)
您可以通过Flexible Publish插件使用Inject Environment Variable插件在构建结束时将空值注入密码参数。 在“注入的变量”选项卡中,您将看到一个空值。
答案 1 :(得分:0)
FWIW,Jenkins的Mask Password插件(没有EnvInject插件)很好用。它可以用Invoke gradle脚本任务中的交换机替换全局密码,例如:
-Psometask_password=${global_sometask_password}
当我尝试在同一个gradle任务的Windows批处理命令版本中使用该变量时,它不起作用。也许插件会在Invoke gradle script任务中检测到“Switches”字段。