Merge pull request #75032 from rosti/win-test

kubeadm: Don't hardcode temp path in a test
This commit is contained in:
Kubernetes Prow Robot 2019-03-06 09:51:15 -08:00 committed by GitHub
commit c360bac6e2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -18,11 +18,9 @@ package upgrade
import (
"bytes"
"fmt"
"io/ioutil"
"os"
"testing"
"time"
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
)
@ -77,17 +75,25 @@ func TestGetK8sVersionFromUserInput(t *testing.T) {
name: "Version is optional",
},
}
for tnum, tt := range tcases {
for _, tt := range tcases {
t.Run(tt.name, func(t *testing.T) {
flags := &applyPlanFlags{}
if len(tt.clusterConfig) > 0 {
tmpfile := fmt.Sprintf("/tmp/kubeadm-upgrade-common-test-%d-%d.yaml", tnum, time.Now().Unix())
if err := ioutil.WriteFile(tmpfile, []byte(tt.clusterConfig), 0666); err != nil {
file, err := ioutil.TempFile("", "kubeadm-upgrade-common-test-*.yaml")
if err != nil {
t.Fatalf("Failed to create test config file: %+v", err)
}
defer os.Remove(tmpfile)
flags.cfgPath = tmpfile
tmpFileName := file.Name()
defer os.Remove(tmpFileName)
_, err = file.WriteString(tt.clusterConfig)
file.Close()
if err != nil {
t.Fatalf("Failed to write test config file contents: %+v", err)
}
flags.cfgPath = tmpFileName
}
userVersion, err := getK8sVersionFromUserInput(flags, tt.args, tt.isVersionMandatory)