我有一个Android
项目,正在打包成.apk
。现在我想签署这个神器作为詹金斯的一个步骤,没有人为干预。但我不明白如何提供实际密码?
首先,我将my.keystore
上传到Jenkins -> Manage Credentials -> Secret file
。
然后将我的工作配置为:
Use secret text(s) or file(s)
Variable
设为mVar
Specific credentials
设为my.keystore
向Execute Shell
添加了echo "$myVar"
,打印的值如下:
+ echo /Users/Shared/Jenkins/Home/secretFiles/1f737ec7-c437-4005-8577-5b28edf158e4/my.keystore
/Users/Shared/Jenkins/Home/secretFiles/1f737ec7-c437-4005-8577-5b28edf158e4/my.keystore
这是我手动签署.apk
..
osx:~ jenkins$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my.keystore /Users/Shared/Jenkins/Home/jobs/myProject/workspace/build/outputs/apk/android-release-unsigned.apk myKeystore
答案 0 :(得分:0)
Credentials Binding Plugin允许您为每个作业绑定多个凭据。
在“使用秘密文本或文件”配置部分中,您可以将多个凭据绑定到多个环境变量。
因此,在作业配置中的“Bindings”下,再次选择“Add”并选择“Secret text”。
在那里(或通过“凭据”页面),您可以使用密码添加另一个凭据,并将其映射到另一个环境变量。
如果您的密钥别名密码与密钥库密码不同,您也可以以相同的方式添加密码。