本文整理匯總了Golang中github.com/juju/juju/cloudconfig/cloudinit.CloudConfig.GetSeries方法的典型用法代碼示例。如果您正苦於以下問題:Golang CloudConfig.GetSeries方法的具體用法?Golang CloudConfig.GetSeries怎麽用?Golang CloudConfig.GetSeries使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/juju/juju/cloudconfig/cloudinit.CloudConfig
的用法示例。
在下文中一共展示了CloudConfig.GetSeries方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: cloudinitRunCmd
// cloudinitRunCmd returns the shell command that, when run, will create the
// "machine info" file containing the hostname of a machine.
// That command is destined to be used by cloudinit.
func (info *machineInfo) cloudinitRunCmd(cloudcfg cloudinit.CloudConfig) (string, error) {
dataDir, err := paths.DataDir(cloudcfg.GetSeries())
if err != nil {
return "", errors.Trace(err)
}
yaml, err := goyaml.Marshal(info)
if err != nil {
return "", errors.Trace(err)
}
renderer := cloudcfg.ShellRenderer()
fileName := renderer.Join(renderer.FromSlash(dataDir), "MAASmachine.txt")
script := renderer.MkdirAll(dataDir)
contents := renderer.Quote(string(yaml))
script = append(script, renderer.WriteFile(fileName, []byte(contents))...)
script = append(script, renderer.Chmod(fileName, 0755)...)
return strings.Join(script, "\n"), nil
}
示例2: 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,
})
}
}