armada/armada/cli
Sean Eagan 9fad5cff0a Add chart API to wait on k8s resource types/labels
This adds a `wait.resources` key to chart documents which allows
waiting on a list of k8s type+labels configurations to wait on.
Initially supported types are pods, jobs, deployments, daemonsets, and
statefulsets. The behavior for controller types is similar to that of
`kubectl rollout status`.

If `wait.resources` is omitted, it waits on pods and jobs (if any exist)
as before.

The existing `wait.labels` key still have the same behavior, but if
`wait.resources` is also included, the labels are added to each resource
wait in that array. Thus they serve to specify base labels that apply
to all resources in the release, so as to not have to duplicate them.
This may also be useful later for example to use them as labels to wait
for when deleting a chart.

Controller types additionaly have a `min_ready` field which
represents the minimum amount of pods of the controller which must
be ready in order for the controller to be considered ready. The value
can either be an integer or a percent string e.g. "80%", similar to e.g.
`maxUnavailable` in k8s. Default is "100%".

This also wraps up moving the rest of the wait code into its own module.

Change-Id: If72881af0c74e8f765bbb57ac5ffc8d709cd3c16
2018-10-05 16:48:32 -05:00
..
__init__.py bugfix(cli): Remove redundant oslo_log register_options calls 2018-06-01 12:11:38 -05:00
apply.py Add chart API to wait on k8s resource types/labels 2018-10-05 16:48:32 -05:00
delete.py armada delete --manifest failed 2018-07-26 16:55:37 -07:00
rollback.py Fix for yapf v0.24.0 2018-09-11 20:39:25 +00:00
test.py Change chart `test` key to object and support cleanup flag 2018-06-27 10:47:02 -05:00
tiller.py Adding yapf config, plus formatted code. 2018-06-22 14:56:04 -05:00
validate.py Adding yapf config, plus formatted code. 2018-06-22 14:56:04 -05:00