在我们的部署过程中,至关重要的是,当部署失败时,通知我们。部署正在滚动,但是无论如何通过松弛的信息还是不错的。在生命周期中是否可能,或者存在其他可能性?
答案 0 :(得分:0)
部署状态通常是从OpenShift作为事件日志注销。 您是否使用OpenShift日志记录组件EFK堆栈?然后另外考虑安装EventRouter,它将OpenShift事件日志收集为eventrouter pod的日志。 您可以从日志中提取部署事件消息,并通过自定义脚本或监视系统的日志尾部功能等来触发警报。
请参阅Specifying Logging Ansible Variables ,以获取有关变量的详细信息。
openshift_logging_install_eventrouter
openshift_logging_eventrouter_nodeselector
openshift_logging_eventrouter_namespace
...
答案 1 :(得分:0)
您可以将customParams传递到部署过程,并在openshift-deploy失败时进行卷曲。
"strategy": {
"type": "Rolling",
"timeoutSeconds": 180,
"customParams": {
"command": [
"/bin/sh",
"-c",
"set -e && if ! openshift-deploy; then curl -i -X POST -d '{\"text\": \"Deployment of ${application} failed!\"}' ${webhook} && exit 1; else echo \"Deployment complete\"; fi"
]
}