@@ -48,16 +48,15 @@ func (m *KindIntegrationTestStep) Use(dir string) (bool, error) {
4848//
4949// If `KUBECONFIG` is already deinfed in the env then it will do nothing.
5050func (m * KindIntegrationTestStep ) Setup (env map [string ]string ) error {
51- _ , exists := env ["KUBECONFIG" ]
52- if exists {
53- // do nothing
54- return nil
55- }
56- _ , exists = env ["KUBE_CONFIG" ]
57- if exists {
58- // do nothing
59- return nil
51+
52+ envVars := []string {"KUBECONFIG" , "KUBE_CONFIG" }
53+ for _ , envVar := range envVars {
54+ exists := envKubeConfigExists (env , envVar )
55+ if exists {
56+ return nil
57+ }
6058 }
59+
6160 _ , err := exec .LookPath ("kind" )
6261 if err != nil {
6362 if mg .Verbose () {
@@ -80,6 +79,9 @@ func (m *KindIntegrationTestStep) Setup(env map[string]string) error {
8079 return err
8180 }
8281 kubeConfig := filepath .Join (kubeCfgDir , "kubecfg" )
82+ if mg .Verbose () {
83+ fmt .Println ("Kubeconfig: " , kubeConfig )
84+ }
8385 if err := os .MkdirAll (kubeCfgDir , os .ModePerm ); err != nil {
8486 return err
8587 }
@@ -141,3 +143,20 @@ func (m *KindIntegrationTestStep) Teardown(env map[string]string) error {
141143 }
142144 return nil
143145}
146+
147+ func envKubeConfigExists (env map [string ]string , envVar string ) bool {
148+ _ , exists := env [envVar ]
149+ if exists {
150+ if mg .Verbose () {
151+ fmt .Printf ("%s: %s\n " , envVar , env [envVar ])
152+ }
153+ if _ , err := os .Stat (env [envVar ]); err == nil {
154+ return true
155+ } else if os .IsNotExist (err ) {
156+ if mg .Verbose () {
157+ fmt .Printf ("%s file not found: %s: %v\n " , envVar , env [envVar ], err )
158+ }
159+ }
160+ }
161+ return false
162+ }
0 commit comments