Merge pull request #73903 from smarterclayton/cluster_upgrade

Upgrade tests don't tolerate nodes with taints correctly
pull/564/head
Kubernetes Prow Robot 2019-02-13 14:32:05 -08:00 committed by GitHub
commit a5653dc01b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 12 additions and 9 deletions

View File

@ -66,7 +66,7 @@ func (t *AppArmorUpgradeTest) Setup(f *framework.Framework) {
// pod can still consume the secret. // pod can still consume the secret.
func (t *AppArmorUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) { func (t *AppArmorUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) {
<-done <-done
if upgrade == MasterUpgrade { if upgrade == MasterUpgrade || upgrade == ClusterUpgrade {
t.verifyPodStillUp(f) t.verifyPodStillUp(f)
} }
t.verifyNodesAppArmorEnabled(f) t.verifyNodesAppArmorEnabled(f)

View File

@ -20,7 +20,7 @@ import (
. "github.com/onsi/ginkgo" . "github.com/onsi/ginkgo"
apps "k8s.io/api/apps/v1" apps "k8s.io/api/apps/v1"
"k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/util/wait" "k8s.io/apimachinery/pkg/util/wait"
@ -59,6 +59,9 @@ func (t *DaemonSetUpgradeTest) Setup(f *framework.Framework) {
Labels: labelSet, Labels: labelSet,
}, },
Spec: v1.PodSpec{ Spec: v1.PodSpec{
Tolerations: []v1.Toleration{
{Operator: v1.TolerationOpExists},
},
Containers: []v1.Container{ Containers: []v1.Container{
{ {
Name: daemonSetName, Name: daemonSetName,

View File

@ -115,7 +115,7 @@ func (t *IngressUpgradeTest) Setup(f *framework.Framework) {
// with a connectvity check to the loadbalancer ip. // with a connectvity check to the loadbalancer ip.
func (t *IngressUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) { func (t *IngressUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) {
switch upgrade { switch upgrade {
case MasterUpgrade: case MasterUpgrade, ClusterUpgrade:
// Restarting the ingress controller shouldn't disrupt a steady state // Restarting the ingress controller shouldn't disrupt a steady state
// Ingress. Restarting the ingress controller and deleting ingresses // Ingress. Restarting the ingress controller and deleting ingresses
// while it's down will leak cloud resources, because the ingress // while it's down will leak cloud resources, because the ingress

View File

@ -20,7 +20,7 @@ import (
"regexp" "regexp"
"time" "time"
"k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource" "k8s.io/apimachinery/pkg/api/resource"
"k8s.io/kubernetes/test/e2e/framework" "k8s.io/kubernetes/test/e2e/framework"
"k8s.io/kubernetes/test/e2e/scheduling" "k8s.io/kubernetes/test/e2e/scheduling"
@ -50,7 +50,7 @@ func (t *NvidiaGPUUpgradeTest) Test(f *framework.Framework, done <-chan struct{}
<-done <-done
By("Verifying gpu job success") By("Verifying gpu job success")
t.verifyJobPodSuccess(f) t.verifyJobPodSuccess(f)
if upgrade == MasterUpgrade { if upgrade == MasterUpgrade || upgrade == ClusterUpgrade {
// MasterUpgrade should be totally hitless. // MasterUpgrade should be totally hitless.
job, err := framework.GetJob(f.ClientSet, f.Namespace.Name, "cuda-add") job, err := framework.GetJob(f.ClientSet, f.Namespace.Name, "cuda-add")
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())

View File

@ -17,7 +17,7 @@ limitations under the License.
package upgrades package upgrades
import ( import (
"k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/util/wait" "k8s.io/apimachinery/pkg/util/wait"
"k8s.io/kubernetes/test/e2e/framework" "k8s.io/kubernetes/test/e2e/framework"
@ -77,7 +77,7 @@ func (t *ServiceUpgradeTest) Setup(f *framework.Framework) {
// Test runs a connectivity check to the service. // Test runs a connectivity check to the service.
func (t *ServiceUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) { func (t *ServiceUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) {
switch upgrade { switch upgrade {
case MasterUpgrade: case MasterUpgrade, ClusterUpgrade:
t.test(f, done, true) t.test(f, done, true)
case NodeUpgrade: case NodeUpgrade:
// Node upgrades should test during disruption only on GCE/GKE for now. // Node upgrades should test during disruption only on GCE/GKE for now.

View File

@ -22,7 +22,7 @@ import (
. "github.com/onsi/ginkgo" . "github.com/onsi/ginkgo"
. "github.com/onsi/gomega" . "github.com/onsi/gomega"
"k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid" "k8s.io/apimachinery/pkg/util/uuid"
@ -52,7 +52,7 @@ func (t *SysctlUpgradeTest) Setup(f *framework.Framework) {
func (t *SysctlUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) { func (t *SysctlUpgradeTest) Test(f *framework.Framework, done <-chan struct{}, upgrade UpgradeType) {
<-done <-done
switch upgrade { switch upgrade {
case MasterUpgrade: case MasterUpgrade, ClusterUpgrade:
By("Checking the safe sysctl pod keeps running on master upgrade") By("Checking the safe sysctl pod keeps running on master upgrade")
pod, err := f.ClientSet.CoreV1().Pods(t.validPod.Namespace).Get(t.validPod.Name, metav1.GetOptions{}) pod, err := f.ClientSet.CoreV1().Pods(t.validPod.Namespace).Get(t.validPod.Name, metav1.GetOptions{})
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())