Feature Management: UI improvements (#76866)

* Feature Management: UI improvements

* update UI logic

---------

Co-authored-by: Michael Mandrus <michael.mandrus@grafana.com>
This commit is contained in:
João Calisto
2023-10-26 10:42:00 +01:00
committed by GitHub
parent c4bf32fa2d
commit 7869ca1932
7 changed files with 62 additions and 47 deletions

View File

@@ -16,6 +16,7 @@ var (
type FeatureManager struct {
isDevMod bool
restartRequired bool
allowEditing bool
licensing licensing.Licensing
flags map[string]*FeatureFlag
enabled map[string]bool // only the "on" values
@@ -150,7 +151,7 @@ func (fm *FeatureManager) GetFlags() []FeatureFlag {
}
func (fm *FeatureManager) GetState() *FeatureManagerState {
return &FeatureManagerState{RestartRequired: fm.restartRequired}
return &FeatureManagerState{RestartRequired: fm.restartRequired, AllowEditing: fm.allowEditing}
}
func (fm *FeatureManager) SetRestartRequired() {

View File

@@ -132,4 +132,5 @@ type FeatureToggleDTO struct {
type FeatureManagerState struct {
RestartRequired bool `json:"restartRequired"`
AllowEditing bool `json:"allowEditing"`
}

View File

@@ -24,11 +24,12 @@ var (
func ProvideManagerService(cfg *setting.Cfg, licensing licensing.Licensing) (*FeatureManager, error) {
mgmt := &FeatureManager{
isDevMod: setting.Env != setting.Prod,
licensing: licensing,
flags: make(map[string]*FeatureFlag, 30),
enabled: make(map[string]bool),
log: log.New("featuremgmt"),
isDevMod: setting.Env != setting.Prod,
licensing: licensing,
flags: make(map[string]*FeatureFlag, 30),
enabled: make(map[string]bool),
allowEditing: cfg.FeatureManagement.AllowEditing && cfg.FeatureManagement.UpdateWebhook != "",
log: log.New("featuremgmt"),
}
// Register the standard flags