[MM-57194] Allow plugins to mark setting fields as secret (#27986)
Co-authored-by: Claudio Costa <cstcld91@gmail.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
84a0c09d56
Коммит
70fe2abea6
@@ -214,11 +214,25 @@ func (a *App) GetConfigFile(name string) ([]byte, error) {
|
||||
// GetSanitizedConfig gets the configuration for a system admin without any secrets.
|
||||
func (a *App) GetSanitizedConfig() *model.Config {
|
||||
cfg := a.Config().Clone()
|
||||
cfg.Sanitize()
|
||||
|
||||
a.SanitizedConfig(cfg)
|
||||
|
||||
return cfg
|
||||
}
|
||||
|
||||
// SanitizedConfig sanitizes a given configuration for a system admin without any secrets.
|
||||
func (a *App) SanitizedConfig(cfg *model.Config) {
|
||||
manifests, err := a.getPluginManifests()
|
||||
if err != nil {
|
||||
// GetPluginManifests might error, e.g. when plugins are disabled.
|
||||
// Sanitize all plugin settings in this case.
|
||||
cfg.Sanitize(nil)
|
||||
return
|
||||
}
|
||||
|
||||
cfg.Sanitize(manifests)
|
||||
}
|
||||
|
||||
// GetEnvironmentConfig returns a map of configuration keys whose values have been overridden by an environment variable.
|
||||
// If filter is not nil and returns false for a struct field, that field will be omitted.
|
||||
func (a *App) GetEnvironmentConfig(filter func(reflect.StructField) bool) map[string]any {
|
||||
|
||||
Ссылка в новой задаче
Block a user