java如何在travis构建期间使用gpg2导入私钥?
我正在尝试为我的一个项目升级Travis CI构建,以便从“xenial”dist迁移到“仿生”dist,由于gpg命令中的行为差异,我在构建期间无法导入签名密钥。 “xenial”区包括gpg v1。4.20我使用这样的命令将我的签名密钥导入Travis build worker的本地密钥环:
gpg --import signing.key
“仿生”区现在包括gpg v2。2.4,与上面相同的命令现在失败,因为 gpg要求指定密码短语。我相信这个新需求是由于gpg命令在Travis构建中作为“根”运行
我可以用gpg v2重现这种行为。2.27在Fedora 34机器上。i、 例如,如果我以非root用户的身份运行gpg,gpg --import signing.key
命令运行良好,不需要密码短语,但如果我以root用户的身份运行同一命令,gpg会在shell中显示一个对话框,询问我密码短语
我是否可以在Travis build中以root用户身份运行gpg来导入签名密钥,而无需指定密码短语
这是使用maven在maven Central上签名和部署JAR的java项目的一部分。其他人如何使用gpg v2实现这一点。x
提前谢谢
# 1 楼答案
经过更多实验,我发现“批处理”选项允许导入成功,而无需指定密码短语:
我发誓,我在提出上述问题之前尝试过这个选项,但也许我无意中尝试了与其他选项结合使用:)