Deployments complete only when all desired pods are available

Signed-off-by: Michail Kargakis <mkargaki@redhat.com>
This commit is contained in:
Michail Kargakis
2017-04-19 14:40:31 +02:00
parent 0a59f6c487
commit f1e8356265
2 changed files with 16 additions and 10 deletions

View File

@@ -960,37 +960,43 @@ func TestDeploymentComplete(t *testing.T) {
expected bool
}{
{
name: "complete",
name: "not complete: min but not all pods become available",
d: deployment(5, 5, 5, 4, 1, 0),
expected: true,
expected: false,
},
{
name: "not complete",
name: "not complete: min availability is not honored",
d: deployment(5, 5, 5, 3, 1, 0),
expected: false,
},
{
name: "complete #2",
name: "complete",
d: deployment(5, 5, 5, 5, 0, 0),
expected: true,
},
{
name: "not complete #2",
name: "not complete: all pods are available but not updated",
d: deployment(5, 5, 4, 5, 0, 0),
expected: false,
},
{
name: "not complete #3",
name: "not complete: still running old pods",
// old replica set: spec.replicas=1, status.replicas=1, status.availableReplicas=1
// new replica set: spec.replicas=1, status.replicas=1, status.availableReplicas=0
d: deployment(1, 2, 1, 1, 0, 1),
expected: false,
},
{
name: "not complete: one replica deployment never comes up",
d: deployment(1, 1, 1, 0, 1, 1),
expected: false,
},
}
for _, test := range tests {