const clusterExtensionKey … var ClusterDefaults … var DefaultClientConfig … // getDefaultServer returns a default setting for DefaultClientConfig // DEPRECATED func getDefaultServer() string { … } type ClientConfig … type OverridingClientConfig … type PersistAuthProviderConfigForUser … type promptedCredentials … type DirectClientConfig … // NewDefaultClientConfig creates a DirectClientConfig using the config.CurrentContext as the context name func NewDefaultClientConfig(config clientcmdapi.Config, overrides *ConfigOverrides) OverridingClientConfig { … } // NewNonInteractiveClientConfig creates a DirectClientConfig using the passed context name and does not have a fallback reader for auth information func NewNonInteractiveClientConfig(config clientcmdapi.Config, contextName string, overrides *ConfigOverrides, configAccess ConfigAccess) OverridingClientConfig { … } // NewInteractiveClientConfig creates a DirectClientConfig using the passed context name and a reader in case auth information is not provided via files or flags func NewInteractiveClientConfig(config clientcmdapi.Config, contextName string, overrides *ConfigOverrides, fallbackReader io.Reader, configAccess ConfigAccess) OverridingClientConfig { … } // NewClientConfigFromBytes takes your kubeconfig and gives you back a ClientConfig func NewClientConfigFromBytes(configBytes []byte) (OverridingClientConfig, error) { … } // 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) { … } func (config *DirectClientConfig) RawConfig() (clientcmdapi.Config, error) { … } // MergedRawConfig returns the raw kube config merged with the overrides func (config *DirectClientConfig) MergedRawConfig() (clientcmdapi.Config, error) { … } // ClientConfig implements ClientConfig func (config *DirectClientConfig) ClientConfig() (*restclient.Config, error) { … } // getServerIdentificationPartialConfig extracts server identification information from configClusterInfo // (the final result of command line flags and merged .kubeconfig files). func getServerIdentificationPartialConfig(configClusterInfo clientcmdapi.Cluster) *restclient.Config { … } // getUserIdentificationPartialConfig extracts user identification information from configAuthInfo // (the final result of command line flags and merged .kubeconfig files); // if the information available there is insufficient, it prompts (if possible) for additional information. func (config *DirectClientConfig) getUserIdentificationPartialConfig(configAuthInfo clientcmdapi.AuthInfo, fallbackReader io.Reader, persistAuthConfig restclient.AuthProviderConfigPersister, configClusterInfo clientcmdapi.Cluster) (*restclient.Config, error) { … } // makeUserIdentificationFieldsConfig returns a client.Config capable of being merged for only user identification information func makeUserIdentificationConfig(info clientauth.Info) *restclient.Config { … } func canIdentifyUser(config restclient.Config) bool { … } // cleanANSIEscapeCodes takes an arbitrary string and ensures that there are no // ANSI escape sequences that could put the terminal in a weird state (e.g., // "\e[1m" bolds text) func cleanANSIEscapeCodes(s string) string { … } // Namespace implements ClientConfig func (config *DirectClientConfig) Namespace() (string, bool, error) { … } // ConfigAccess implements ClientConfig func (config *DirectClientConfig) ConfigAccess() ConfigAccess { … } // ConfirmUsable looks a particular context and determines if that particular part of the config is useable. There might still be errors in the config, // but no errors in the sections requested or referenced. It does not return early so that it can find as many errors as possible. func (config *DirectClientConfig) ConfirmUsable() error { … } // getContextName returns the default, or user-set context name, and a boolean that indicates // whether the default context name has been overwritten by a user-set flag, or left as its default value func (config *DirectClientConfig) getContextName() (string, bool) { … } // getAuthInfoName returns a string containing the current authinfo name for the current context, // and a boolean indicating whether the default authInfo name is overwritten by a user-set flag, or // left as its default value func (config *DirectClientConfig) getAuthInfoName() (string, bool) { … } // getClusterName returns a string containing the default, or user-set cluster name, and a boolean // indicating whether the default clusterName has been overwritten by a user-set flag, or left as // its default value func (config *DirectClientConfig) getClusterName() (string, bool) { … } // getContext returns the clientcmdapi.Context, or an error if a required context is not found. func (config *DirectClientConfig) getContext() (clientcmdapi.Context, error) { … } // getAuthInfo returns the clientcmdapi.AuthInfo, or an error if a required auth info is not found. func (config *DirectClientConfig) getAuthInfo() (clientcmdapi.AuthInfo, error) { … } // getCluster returns the clientcmdapi.Cluster, or an error if a required cluster is not found. func (config *DirectClientConfig) getCluster() (clientcmdapi.Cluster, error) { … } type inClusterClientConfig … var _ … func (config *inClusterClientConfig) RawConfig() (clientcmdapi.Config, error) { … } func (config *inClusterClientConfig) ClientConfig() (*restclient.Config, error) { … } func (config *inClusterClientConfig) Namespace() (string, bool, error) { … } func (config *inClusterClientConfig) ConfigAccess() ConfigAccess { … } // Possible returns true if loading an inside-kubernetes-cluster is possible. func (config *inClusterClientConfig) Possible() bool { … } // BuildConfigFromFlags is a helper function that builds configs from a master // url or a kubeconfig filepath. These are passed in as command line flags for cluster // components. Warnings should reflect this usage. If neither masterUrl or kubeconfigPath // are passed in we fallback to inClusterConfig. If inClusterConfig fails, we fallback // to the default config. func BuildConfigFromFlags(masterUrl, kubeconfigPath string) (*restclient.Config, error) { … } // BuildConfigFromKubeconfigGetter is a helper function that builds configs from a master // url and a kubeconfigGetter. func BuildConfigFromKubeconfigGetter(masterUrl string, kubeconfigGetter KubeconfigGetter) (*restclient.Config, error) { … }