本文整理汇总了Golang中k8s/io/kubernetes/pkg/client/unversioned.Config.TLSClientConfig方法的典型用法代码示例。如果您正苦于以下问题:Golang Config.TLSClientConfig方法的具体用法?Golang Config.TLSClientConfig怎么用?Golang Config.TLSClientConfig使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类k8s/io/kubernetes/pkg/client/unversioned.Config
的用法示例。
在下文中一共展示了Config.TLSClientConfig方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: newAPIClient
// newAPIClient creates a new client to speak to the kubernetes api service
func (r *kubeAPIImpl) newAPIClient() (*unversioned.Client, error) {
// step: create the configuration
cfg := unversioned.Config{
Host: getURL(),
Insecure: config.HTTPInsecure,
Version: config.APIVersion,
}
// check: ensure the token file exists
if config.TokenFile != "" {
if _, err := os.Stat(config.TokenFile); os.IsNotExist(err) {
return nil, fmt.Errorf("the token file: %s does not exist", config.TokenFile)
}
content, err := ioutil.ReadFile(config.TokenFile)
if err != nil {
return nil, fmt.Errorf("unable to read the token file: %s, error: %s", config.TokenFile, err)
}
config.Token = string(content)
}
// check: are we using a user token to authenticate?
if config.Token != "" {
cfg.BearerToken = config.Token
}
// check: are we using a cert to authenticate
if config.CaCertFile != "" {
cfg.Insecure = false
cfg.TLSClientConfig = unversioned.TLSClientConfig{
CAFile: config.CaCertFile,
}
}
// step: initialize the client
kube, err := unversioned.New(&cfg)
if err != nil {
return nil, fmt.Errorf("unable to create a kubernetes api client, reason: %s", err)
}
return kube, nil
}
示例2: makeTransport
func makeTransport(config *schedulerapi.ExtenderConfig) (http.RoundTripper, error) {
var cfg client.Config
if config.TLSConfig != nil {
cfg.TLSClientConfig = *config.TLSConfig
}
if config.EnableHttps {
hasCA := len(cfg.CAFile) > 0 || len(cfg.CAData) > 0
if !hasCA {
cfg.Insecure = true
}
}
tlsConfig, err := client.TLSConfigFor(&cfg)
if err != nil {
return nil, err
}
if tlsConfig != nil {
return &http.Transport{
TLSClientConfig: tlsConfig,
}, nil
}
return http.DefaultTransport, nil
}