Я создаю конвейер CI / CD.
Я бегу helm install --wait --timeout 300 ...
. Но на самом деле это не ждет, просто возвращается, когда статус «релиз» равен DEPLOYED
.
Итак, я вижу в kubectl get pods --namespace default -l 'release=${TAG}' -o yaml
несколько вещей, которые можно использовать:
- kind: Pod
status:
conditions:
- lastProbeTime: null
lastTransitionTime: 2018-05-11T00:30:46Z
status: "True"
type: Initialized
- lastProbeTime: null
lastTransitionTime: 2018-05-11T00:30:48Z
status: "True"
type: Ready
Так что, думаю, я посмотрю, когда Ready
условие станет "Истинным".
Это кажется немного неправильным ... Все решают это, поэтому я предполагаю, что для этого есть какая-то особенность
kubectl
, не так ли?Это правильный вопрос? (См. справочник Kubernetes JSONPath)
kubectl get pods --namespace default -l 'release = sc8757070' -o jsonpath = '{. items [*]. status.conditions [? (@. type == "Ready")]. status}'