123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- /*
- Copyright 2019 The Kubernetes Authors.
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- */
- package deployment
- import (
- "time"
- appsv1 "k8s.io/api/apps/v1"
- clientset "k8s.io/client-go/kubernetes"
- "k8s.io/kubernetes/test/e2e/framework"
- testutils "k8s.io/kubernetes/test/utils"
- )
- const (
- // poll is how often to poll pods, nodes and claims.
- poll = 2 * time.Second
- pollShortTimeout = 1 * time.Minute
- pollLongTimeout = 5 * time.Minute
- )
- // WaitForDeploymentRevisionAndImage waits for the deployment's and its new RS's revision and container image to match the given revision and image.
- // Note that deployment revision and its new RS revision should be updated shortly most of the time, but an overwhelmed RS controller
- // may result in taking longer to relabel a RS.
- func WaitForDeploymentRevisionAndImage(c clientset.Interface, ns, deploymentName string, revision, image string) error {
- return testutils.WaitForDeploymentRevisionAndImage(c, ns, deploymentName, revision, image, framework.Logf, poll, pollLongTimeout)
- }
- // WaitForDeploymentComplete waits for the deployment to complete, and don't check if rolling update strategy is broken.
- // Rolling update strategy is used only during a rolling update, and can be violated in other situations,
- // such as shortly after a scaling event or the deployment is just created.
- func WaitForDeploymentComplete(c clientset.Interface, d *appsv1.Deployment) error {
- return testutils.WaitForDeploymentComplete(c, d, framework.Logf, poll, pollLongTimeout)
- }
|