Я создаю конвейер 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 == "Готово")]. status} '