mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-06 18:54:06 +00:00
Merge pull request #70141 from pohly/provider-warning
e2e: allow unknown providers with a warning
This commit is contained in:
commit
432e8d43e0
@ -134,6 +134,7 @@ go_library(
|
|||||||
"//vendor/github.com/onsi/ginkgo/config:go_default_library",
|
"//vendor/github.com/onsi/ginkgo/config:go_default_library",
|
||||||
"//vendor/github.com/onsi/gomega:go_default_library",
|
"//vendor/github.com/onsi/gomega:go_default_library",
|
||||||
"//vendor/github.com/onsi/gomega/types: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/expfmt:go_default_library",
|
||||||
"//vendor/github.com/prometheus/common/model:go_default_library",
|
"//vendor/github.com/prometheus/common/model:go_default_library",
|
||||||
"//vendor/golang.org/x/crypto/ssh:go_default_library",
|
"//vendor/golang.org/x/crypto/ssh:go_default_library",
|
||||||
|
@ -18,8 +18,11 @@ package framework
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"os"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
|
"github.com/pkg/errors"
|
||||||
|
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
clientset "k8s.io/client-go/kubernetes"
|
clientset "k8s.io/client-go/kubernetes"
|
||||||
)
|
)
|
||||||
@ -66,7 +69,7 @@ func SetupProviderConfig(providerName string) (ProviderInterface, error) {
|
|||||||
defer mutex.Unlock()
|
defer mutex.Unlock()
|
||||||
factory, ok := providers[providerName]
|
factory, ok := providers[providerName]
|
||||||
if !ok {
|
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()
|
provider, err := factory()
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@ import (
|
|||||||
|
|
||||||
"github.com/golang/glog"
|
"github.com/golang/glog"
|
||||||
"github.com/onsi/ginkgo/config"
|
"github.com/onsi/ginkgo/config"
|
||||||
|
"github.com/pkg/errors"
|
||||||
utilflag "k8s.io/apiserver/pkg/util/flag"
|
utilflag "k8s.io/apiserver/pkg/util/flag"
|
||||||
restclient "k8s.io/client-go/rest"
|
restclient "k8s.io/client-go/rest"
|
||||||
"k8s.io/client-go/tools/clientcmd"
|
"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.
|
// Make sure that all test runs have a valid TestContext.CloudConfig.Provider.
|
||||||
var err error
|
var err error
|
||||||
TestContext.CloudConfig.Provider, err = SetupProviderConfig(TestContext.Provider)
|
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 {
|
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
Block a user