您好我正在为我的rails项目配置jenkins构建。
我的项目使用redis进行缓存。
所以,我的构建步骤是
启动redis服务器
运行规范
停止redis服务器。
问题:
如果我将所有这些步骤作为单个构建步骤进行,虽然规范失败,但jenkins返回'success'(因为上一次命令传递)
如果我在单独的构建步骤中有'stop redis server'命令,由于rspec失败,此步骤根本不会运行。
那么,我怎样才能实现,“如果规范失败,Jenkins构建应该失败并且仍然应该运行下一步(停止redis服务器)”?
请帮助。
答案 0 :(得分:2)
这个(单个)构建步骤怎么样:
#!/bin/bash -e
# start Redis
service redis-server start
# run specs and save exit code
bundle exec rake --trace
STATUS=$?
# stop Redis
service redis-server stop
# return with saved exit code
exit $STATUS