in monitoring/cloudid.go [43:80]
func OverrideWithCloudSettings(monitoringCfg *config.C) error {
var config cloudConfig
if err := monitoringCfg.Unpack(&config); err != nil {
return cfgError(err)
}
if config.Cloud.ID == "" && config.Cloud.Auth == "" {
// Nothing to do
return nil
}
if config.Cloud.ID == "" && config.Cloud.Auth != "" {
return cfgError(errCloudCfgIncomplete)
}
// We remove monitoring.cloud.* so that "cloud" is not treated as a type of
// monitoring reporter later.
if _, err := monitoringCfg.Remove("cloud", -1); err != nil {
return cfgError(err)
}
cid, err := cloudid.NewCloudID(config.Cloud.ID, config.Cloud.Auth)
if err != nil {
return cfgError(err)
}
if err := overwriteWithCloudID(monitoringCfg, cid); err != nil {
return cfgError(err)
}
if config.Cloud.Auth != "" {
if err := overwriteWithCloudAuth(monitoringCfg, cid); err != nil {
return cfgError(err)
}
}
return nil
}