如果部署失败,Kubernetes会预先删除钩子区块删除Helm删除

时间:2019-01-21 18:22:34

标签: amazon-web-services kubernetes google-cloud-platform cloud kubernetes-helm

在我的掌舵图中,有一个预删除作业,在执行helm delete时会删除一些额外的资源。如果部署顺利,那就没有问题了。

但是,当发生诸如imagePullBackoffpvc unbounded之类的错误时,预删除作业仍会尝试执行,并且也会进入错误状态,因此helm delete会超时

我知道有一个helm delete --no-hook选项,但是我无法更改UI中的删除按钮以使其由第三方提供。

图表中是否可以做些什么,以使helm delete在作业失败时不会自动等待预删除的作业?

1 个答案:

答案 0 :(得分:0)

您可以尝试编写pre-delete钩子作业,这样无论执行主操作期间发生了什么,该作业都会始终报告成功。

示例:

$ cat success.sh:

ls sdfsf || exit 0

$ cat success2.sh

set +e
ls 
ls sdfsf
exit 0

脚本success.shsuccess2.sh始终返回0(成功),尽管脚本中的ls sdfsf命令返回2(“目录”错误)。

# following command also has exit code 0
$ ls sfsdf || echo -n ''