Jenkins 在SLES构建上签署RPM

Jenkins 在SLES构建上签署RPM,jenkins,rpm,sles,Jenkins,Rpm,Sles,我一直在尝试对我的SLES构建RPM进行签名,但出现以下错误: 04:30:12 + xargs rpm --resign 04:30:12 error: You must set "%_gpg_name" in your macro file 04:30:12 Pass phrase check failed 04:30:13 Build step 'Execute shell' marked build as failure 我检查了RH6/7从机,我已经安装了rpm。SLES从机上没有这

我一直在尝试对我的SLES构建RPM进行签名,但出现以下错误:

04:30:12 + xargs rpm --resign
04:30:12 error: You must set "%_gpg_name" in your macro file
04:30:12 Pass phrase check failed
04:30:13 Build step 'Execute shell' marked build as failure

我检查了RH6/7从机,我已经安装了rpm。SLES从机上没有这样的rpm。我不想简单地复制这些RPM,因为我不确定它们是否适用于SLE。有人知道使用哪种rpm来满足SLES特定的签名需求吗?

您需要有关该主题的指南。我发现最有用的是托马斯·钟的网页

您未完成的特定步骤在该页中为#6,此处引用:

6) 签名前的最后一步,将
~/.rpmmacros
文件配置为包括以下内容:

%\u签名gpg

%\u gpg\u姓名Thomas Chung


但是当然,您会使用自己的名称作为
\u gpg\u name
字段。

您在RPM宏文件中设置了
\u gpg\u name
吗?因为这就是错误所说的问题所在。(我不知道
sign rpm
是什么。你能在拥有它的机器上运行
rpm-qi sign rpm
吗?@Etan.rpmmacros文件在我的虚拟机上不存在。我应该创建一个吗?这也是SLES,是一样的吗?在安装了rpm的vm上运行rpm-qi签名rpm,并显示未安装包,所以签名rpm与此无关。(前面我说安装了sign rpm,我应该说rpm rpm的符号显示在rpm--last-qa | tac下)。Is
rpm--last-qa | tac
显示了一个
sign rpm
安装包。他们
rpm-qi sign rpm
应该会提供相关信息。如果没有,就有问题了。我不知道那个包裹在做什么。它可能为您的环境提供签名配置,这样您就不必手动执行(这就是您遇到此问题的原因)。但如果不知道是什么,我就说不出来。工作虚拟机是否有
.rpmmacro
文件?