diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index cd7efedc..335bdcfd 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -364,215 +364,215 @@ }, { "ImportPath": "k8s.io/apimachinery/pkg/api/equality", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/errors", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/meta", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/resource", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/testing", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/testing/fuzzer", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/testing/roundtrip", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apimachinery", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apimachinery/announced", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apimachinery/registered", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/fuzzer", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/internalversion", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1beta1", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/conversion", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/conversion/queryparams", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/fields", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/labels", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/schema", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/json", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/protobuf", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/recognizer", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/streaming", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/versioning", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/selection", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/types", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/cache", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/clock", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/diff", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/errors", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/framer", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/httpstream", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/httpstream/spdy", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/intstr", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/json", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/mergepatch", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/net", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/remotecommand", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/runtime", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/sets", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/strategicpatch", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/validation", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/validation/field", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/wait", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/yaml", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/version", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/pkg/watch", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/json", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/netutil", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/reflect", - "Rev": "7175867f4d9f782220ceae4fc323e3aaae35f23a" + "Rev": "210bcde8e5a7715fe776460ca1df1a3f2738725e" }, { "ImportPath": "k8s.io/kube-openapi/pkg/util/proto", diff --git a/tools/clientcmd/client_config.go b/tools/clientcmd/client_config.go index c202e6b2..93e99a94 100644 --- a/tools/clientcmd/client_config.go +++ b/tools/clientcmd/client_config.go @@ -100,6 +100,26 @@ func NewInteractiveClientConfig(config clientcmdapi.Config, contextName string, return &DirectClientConfig{config, contextName, overrides, fallbackReader, configAccess, promptedCredentials{}} } +// NewClientConfigFromBytes takes your kubeconfig and gives you back a ClientConfig +func NewClientConfigFromBytes(configBytes []byte) (ClientConfig, error) { + config, err := Load(configBytes) + if err != nil { + return nil, err + } + + return &DirectClientConfig{*config, "", &ConfigOverrides{}, nil, nil, promptedCredentials{}}, nil +} + +// RESTConfigFromKubeConfig is a convenience method to give back a restconfig from your kubeconfig bytes. +// For programmatic access, this is what you want 80% of the time +func RESTConfigFromKubeConfig(configBytes []byte) (*restclient.Config, error) { + clientConfig, err := NewClientConfigFromBytes(configBytes) + if err != nil { + return nil, err + } + return clientConfig.ClientConfig() +} + func (config *DirectClientConfig) RawConfig() (clientcmdapi.Config, error) { return config.config, nil }