本文整理匯總了Golang中github.com/juju/juju/cloudconfig/cloudinit.CloudConfig.SetSSHAuthorizedKeys方法的典型用法代碼示例。如果您正苦於以下問題:Golang CloudConfig.SetSSHAuthorizedKeys方法的具體用法?Golang CloudConfig.SetSSHAuthorizedKeys怎麽用?Golang CloudConfig.SetSSHAuthorizedKeys使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/juju/juju/cloudconfig/cloudinit.CloudConfig
的用法示例。
在下文中一共展示了CloudConfig.SetSSHAuthorizedKeys方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: SetUbuntuUser
// SetUbuntuUser creates an "ubuntu" use for unix systems so the juju client
// can access the machine using ssh with the configuration we expect.
// On precise, the default cloudinit version is too old to support the users
// option, so instead rely on the default user being created and adding keys.
// It may make sense in the future to add a "juju" user instead across
// all distributions.
func SetUbuntuUser(conf cloudinit.CloudConfig, authorizedKeys string) {
targetSeries := conf.GetSeries()
if targetSeries == "precise" {
conf.SetSSHAuthorizedKeys(authorizedKeys)
} else {
var groups []string
targetOS, _ := series.GetOSFromSeries(targetSeries)
switch targetOS {
case os.Ubuntu:
groups = UbuntuGroups
case os.CentOS:
groups = CentOSGroups
}
conf.AddUser(&cloudinit.User{
Name: "ubuntu",
Groups: groups,
Shell: "/bin/bash",
Sudo: []string{"ALL=(ALL) NOPASSWD:ALL"},
SSHAuthorizedKeys: authorizedKeys,
})
}
}