// ModelConfig returns the current environment's configuration. func (e *ModelWatcher) ModelConfig() (params.ModelConfigResult, error) { result := params.ModelConfigResult{} config, err := e.st.ModelConfig() if err != nil { return result, err } allAttrs := config.AllAttrs() if !e.authorizer.AuthModelManager() { // Mask out any secrets in the environment configuration // with values of the same type, so it'll pass validation. // // TODO(dimitern) 201309-26 bug #1231384 // Delete the code below and mark the bug as fixed, // once it's live tested on MAAS and 1.16 compatibility // is dropped. provider, err := environs.Provider(config.Type()) if err != nil { return result, err } secretAttrs, err := provider.SecretAttrs(config) for k := range secretAttrs { allAttrs[k] = "not available" } } result.Config = allAttrs return result, nil }
// ModelConfig returns the model's configuration. func (u *UndertakerAPI) ModelConfig() (params.ModelConfigResult, error) { result := params.ModelConfigResult{} config, err := u.st.ModelConfig() if err != nil { return result, err } allAttrs := config.AllAttrs() result.Config = allAttrs return result, nil }
// ModelConfig returns the current model's configuration. func (api *DiscoverSpacesAPI) ModelConfig() (params.ModelConfigResult, error) { result := params.ModelConfigResult{} config, err := api.st.ModelConfig() if err != nil { return result, err } allAttrs := config.AllAttrs() // No need to obscure any secrets as caller needs to be a ModelManager to // call any api methods. result.Config = allAttrs return result, nil }
// ConfigSkeleton returns config values to be used as a starting point for the // API caller to construct a valid model specific config. The provider // and region params are there for future use, and current behaviour expects // both of these to be empty. func (mm *ModelManagerAPI) ConfigSkeleton(args params.ModelSkeletonConfigArgs) (params.ModelConfigResult, error) { var result params.ModelConfigResult if args.Region != "" { return result, errors.NotValidf("region value %q", args.Region) } controllerEnv, err := mm.state.ControllerModel() if err != nil { return result, errors.Trace(err) } config, err := mm.configSkeleton(controllerEnv, args.Provider) if err != nil { return result, errors.Trace(err) } result.Config = config return result, nil }