即使出现错误,jenkins仍可标记成功

时间:2019-05-19 12:32:02

标签: jenkins continuous-integration jenkins-pipeline

让我们看看jenkins的构建输出。

[SSH] executing...
Error: No such container: dbf
Uploading mysql backup msql_backup20190519_1224.sql

[SSH] completed
[SSH] exit-status: 0

Finished: SUCCESS

如您所见,我故意在脚本中犯了一些错误。现在,正如您在输出中看到的那样,虽然有一个错误,但是构建仍成功完成。 (最后一行)。

即使出现错误,为什么也标记为成功?

我所做的一种解决方法是在脚本的开头插入一行。这个-set -e。然后它起作用,并给出正确的故障响应。任何帮助,将不胜感激。谢谢。

编辑:我的脚本是这个

BACKUP_NAME=$(date +%Y%m%d_%H%M) 
BACKUP=backup$BACKUP_NAME.sql
mkdir -p /var/backups

docker exec dbf /usr/bin/mysqldump -u root --password=$DB_PASSWORD db_name > /var/backups/$BACKUP

export AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID
export AWS_SECRET_ACCESS_KEY=$AWS_SECRET_KEY

echo "Uploading mysql backup $BACKUP"
aws s3 cp /var/backups/$BACKUP s3://$AWS_BUCKET_NAME/$BACKUP

echo "deleting all sql files older than 3 days"
find /var/backups/backup* -mtime +2 -type f -delete

现在,如果您看到的话,docker exec dbf不应报告错误,因为我故意键入dbf而不是db。

0 个答案:

没有答案