我正在编写一个使用cmake的库。我已经设置好了构建一个make
目标,该目标构建了一个Debian源代码包,然后我可以使用dput
上传到Launchpad以创建一个Ubuntu PPA。此过程的一部分是使用我的gpg
密钥签署包裹。当我登录到正常的X会话时运行这个make
目标时,它弹出一个框,要求我输入我的gpg
密码。从Jenkins自动签名构建工件
我想让詹金斯自动执行此操作来上传每日快照构建。问题是如何让詹金斯自动签署包裹。我见过类似的问题,但他们从来没有真正回答我在找什么。
我想我需要运行gpg-agent
来处理这一点,但这里有事情,我不明白:
1)詹金斯下jenkins
用户运行。我如何为此用户运行gpg-agent
。我已经看到eval $(gpg-agent --daemon)
可以放在shell脚本启动文件中,但不会由Jenkins提供。如何使gpg-agent
知道我的密码。如果我使用sudo su - jenkins
登录到jenkins
用户,我可以使用gpg
来解密文件,但它会弹出pinentry-curses
并要求输入我的密码。 Jenkins如何处理这个问题。我想输入一次密码并记住它。