我正在尝试设置gitlab管道,它构建并部署到kubernetes。我在我所处的位置
kubectl apply -f Application-k8s-file.yaml
和
kubectl rollout status deployment deployment_name
正如您所看到的,我正在使用滚动更新。即使kubernetes部署失败,我也看到等待pod的状态。当kubernetes部署失败时,如何确保我的作业失败。
检查您是否设置了.spec.progressDeadlineSeconds
字段。它表示部署控制器在指示部署进度已停止之前等待的秒数。
这将导致kubectl status rollout
命令在X秒后失败。
kubectl rollout status deployment.v1.apps/nginx-deployment
Waiting for rollout to finish: 2 out of 3 new replicas have been updated...
error: deployment "nginx" exceeded its progress deadline
$ echo $?
1
更多信息:https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#progress-deadline-seconds