mirror of https://github.com/k3s-io/k3s
Merge pull request #70141 from pohly/provider-warning
e2e: allow unknown providers with a warningpull/58/head
commit
432e8d43e0
|
@ -134,6 +134,7 @@ go_library(
|
|||
"//vendor/github.com/onsi/ginkgo/config:go_default_library",
|
||||
"//vendor/github.com/onsi/gomega:go_default_library",
|
||||
"//vendor/github.com/onsi/gomega/types:go_default_library",
|
||||
"//vendor/github.com/pkg/errors:go_default_library",
|
||||
"//vendor/github.com/prometheus/common/expfmt:go_default_library",
|
||||
"//vendor/github.com/prometheus/common/model:go_default_library",
|
||||
"//vendor/golang.org/x/crypto/ssh:go_default_library",
|
||||
|
|
|
@ -18,8 +18,11 @@ package framework
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"sync"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"k8s.io/api/core/v1"
|
||||
clientset "k8s.io/client-go/kubernetes"
|
||||
)
|
||||
|
@ -66,7 +69,7 @@ func SetupProviderConfig(providerName string) (ProviderInterface, error) {
|
|||
defer mutex.Unlock()
|
||||
factory, ok := providers[providerName]
|
||||
if !ok {
|
||||
return nil, fmt.Errorf("The provider %s is unknown.", providerName)
|
||||
return nil, errors.Wrapf(os.ErrNotExist, "The provider %s is unknown.", providerName)
|
||||
}
|
||||
provider, err := factory()
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@ import (
|
|||
|
||||
"github.com/golang/glog"
|
||||
"github.com/onsi/ginkgo/config"
|
||||
"github.com/pkg/errors"
|
||||
utilflag "k8s.io/apiserver/pkg/util/flag"
|
||||
restclient "k8s.io/client-go/rest"
|
||||
"k8s.io/client-go/tools/clientcmd"
|
||||
|
@ -366,7 +367,20 @@ func AfterReadingAllFlags(t *TestContextType) {
|
|||
// Make sure that all test runs have a valid TestContext.CloudConfig.Provider.
|
||||
var err error
|
||||
TestContext.CloudConfig.Provider, err = SetupProviderConfig(TestContext.Provider)
|
||||
if err == nil {
|
||||
return
|
||||
}
|
||||
if !os.IsNotExist(errors.Cause(err)) {
|
||||
Failf("Failed to setup provider config: %v", err)
|
||||
}
|
||||
// We allow unknown provider parameters for historic reasons. At least log a
|
||||
// warning to catch typos.
|
||||
// TODO (https://github.com/kubernetes/kubernetes/issues/70200):
|
||||
// - remove the fallback for unknown providers
|
||||
// - proper error message instead of Failf (which panics)
|
||||
glog.Warningf("Unknown provider %q, proceeding as for --provider=skeleton.", TestContext.Provider)
|
||||
TestContext.CloudConfig.Provider, err = SetupProviderConfig("skeleton")
|
||||
if err != nil {
|
||||
Failf("Failed to setup provide r config: %v", err)
|
||||
Failf("Failed to setup fallback skeleton provider config: %v", err)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue