当 docker 登录命令失败时,Jenkins 作业不会失败



我在詹金斯管道中写了一个阶段,以将docker映像推向注册表,但是当docker login命令失败时,管道不会流产:

make push BUILD_ID=733
for i in tomcat ; do cd $i ; make login &&  make push TAG=latest && make push ; cd - ; done
make[1]: Entering directory `/home/jenkins/workspace/CTO/CSF/Common/CSF-DOCKER/tomcat'
sudo docker login -u **** -p "****" csf-docker-candidate.repo.lab.pl.alcatel-lucent.com
Error response from daemon: Login: {
  "errors" : [ {
    "status" : 400,
    "message" : "Unsupported docker v1 repository request for 'csf-docker-candidate'"
  } ]
} (Code: 400; Headers: map[Date:[Mon, 13 Nov 2017 11:35:21 GMT] Server:[Artifactory/5.4.6] X-Artifactory-Id:[ff6eb7375fefa75b:-9fef662:15e7accbf81:-7ffd] Content-Type:[application/json]])
make[1]: *** [login] Error 1
make[1]: Leaving directory `/home/jenkins/workspace/CTO/CSF/Common/CSF-DOCKER/tomcat'
/home/jenkins/workspace/CTO/CSF/Common/CSF-DOCKER 
[Pipeline] End of Pipeline
Finished: SUCCESS

当Docker命令失败时,要添加什么东西才能中止管道;

预先感谢

管道不会失败,因为您的bash命令成功。半隆之后" CD"的成功隐藏了您的命令的失败。您应该使命令在错误时退出循环,然后失败整个脚本 - 请参阅此处的类似问题:https://unix.stackexchange.com/questions/questions/241178/how-can-can-i--i--i-----------------i--i------------------- - 基于循环的基于欧洲的分辨率

最新更新