我需要能够使用Jenkins作业构建我的apk的发行版。
我知道我可以通过以下两种方式之一来做到这一点。要么让用户在cmd提示符下输入密码,要么将我的密码详细信息存储在一个不会提交给git的纯文本文件中,并且位于我的本地计算机上。
但是,在jenkins上运行构建作业时,这些都不起作用。1)我无法获得用户输入,因为它可能在深夜运行(即使用户在他们的机器上,我什至都不知道如何从cmd线获取用户输入)2)任何可以获得对该构建框的访问权限,将能够通过cmd行或在该jenkins服务器上运行的另一个build.gradle作业来管理该文件的内容。
有谁知道我可以隐藏密码但让Jenkins作业可以访问它吗?
谢谢
您可以使用“掩码密码插件”来做到这一点。或EnvInject插件中包含相同的功能,并且所有Jenkins项目迟早都需要EnvInject插件(它可以做很多其他事情),因此不妨立即开始使用它。
现在,在任何构建步骤中,您都可以使用$name(如先前定义的那样)引用密码,就像您以纯文本形式键入密码一样。
$name
****
唯一的安全问题是,如果某人具有 配置您的作业的管理权限 ,则他们可以写入echo $name > secretpassword.txt构建步骤,然后在工作区中查看文件。但是您应该小心,将管理权限分配给谁。
echo $name > secretpassword.txt