本文整理匯總了Golang中github.com/juju/juju/cloud.CloudCredential.DefaultCredential方法的典型用法代碼示例。如果您正苦於以下問題:Golang CloudCredential.DefaultCredential方法的具體用法?Golang CloudCredential.DefaultCredential怎麽用?Golang CloudCredential.DefaultCredential使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/juju/juju/cloud.CloudCredential
的用法示例。
在下文中一共展示了CloudCredential.DefaultCredential方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: UpdateCredential
// UpdateCredential implements CredentialUpdater.
func (s *store) UpdateCredential(cloudName string, details cloud.CloudCredential) error {
releaser, err := s.acquireLock()
if err != nil {
return errors.Annotatef(err, "cannot update credentials for %v", cloudName)
}
defer releaser.Release()
all, err := ReadCredentialsFile(JujuCredentialsPath())
if err != nil {
return errors.Annotate(err, "cannot get credentials")
}
if len(all) == 0 {
all = make(map[string]cloud.CloudCredential)
}
// Clear the default credential if we are removing that one.
if existing, ok := all[cloudName]; ok && existing.DefaultCredential != "" {
stillHaveDefault := false
for name := range details.AuthCredentials {
if name == existing.DefaultCredential {
stillHaveDefault = true
break
}
}
if !stillHaveDefault {
details.DefaultCredential = ""
}
}
all[cloudName] = details
return WriteCredentialsFile(all)
}