【发布时间】:2016-05-12 13:32:24
【问题描述】:
我有一个在我的测试机器上执行的部署任务。目的是在同一台机器上测试 jenkins 新构建的 rpm。
因此,我在 jenkins 中设置了一个部署作业,它执行以下 shell 行:
artifact=$(ls build/*.rpm | head -1)
sudo /usr/local/sbin/jenkins-rpm-install $artifact
rm -rf build/
为了安装 rpm,我制作了一个 jenkins 拥有专有 sudo 权限的小 shell 脚本。
#!/bin/sh
#
# allows jenkins to install rpm as privileged user
#
# add the following line to /etc/sudoers:
# jenkins ALL = NOPASSWD: /usr/local/sbin/jenkins-rpm-install
#
artifact=$1
rpm -vv --install --force $artifact
现在我遇到了问题:每当 rpm 安装失败时,jenkins 无法识别错误代码并将构建标记为成功。
有人知道如何正确解决这个问题吗? 也欢迎改进此过程的提示。
【问题讨论】: