MM-46408: adds PostPriority feature flag and admin setting (#20875)

* MM-46408: adds PostPriority feature flag

Adds the PostPriority feature flag. You can enable it by setting the
env variable `MM_FEATUREFLAGS_POSTPRIORITY=true`.

* Adds support for admin setting

* empty

* Uses post priority in telemetry

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
Kyriakos Z
2022-09-11 20:45:20 +03:00
коммит произвёл GitHub
родитель 38aaa9e3d3
Коммит 93174fbe56
4 изменённых файлов: 10 добавлений и 0 удалений

Просмотреть файл

@@ -131,6 +131,7 @@ func GenerateClientConfig(c *model.Config, telemetryID string, license *model.Li
props["CollapsedThreads"] = *c.ServiceSettings.CollapsedThreads
props["EnableCustomGroups"] = "false"
props["InsightsEnabled"] = "false"
props["PostPriority"] = strconv.FormatBool(*c.ServiceSettings.PostPriority)
if license != nil {
props["ExperimentalEnableAuthenticationTransfer"] = strconv.FormatBool(*c.ServiceSettings.ExperimentalEnableAuthenticationTransfer)

Просмотреть файл

@@ -371,6 +371,7 @@ type ServiceSettings struct {
EnableSVGs *bool `access:"site_posts"`
EnableLatex *bool `access:"site_posts"`
EnableInlineLatex *bool `access:"site_posts"`
PostPriority *bool `access:"site_posts"`
EnableAPIChannelDeletion *bool
EnableLocalMode *bool
LocalModeSocketLocation *string // telemetry: none
@@ -842,6 +843,10 @@ func (s *ServiceSettings) SetDefaults(isUpdate bool) {
if s.EnableCustomGroups == nil {
s.EnableCustomGroups = NewBool(true)
}
if s.PostPriority == nil {
s.PostPriority = NewBool(false)
}
}
type ClusterSettings struct {

Просмотреть файл

@@ -73,6 +73,8 @@ type FeatureFlags struct {
BoardsProduct bool
PlanUpgradeButtonText string
PostPriority bool
}
func (f *FeatureFlags) SetDefaults() {
@@ -100,6 +102,7 @@ func (f *FeatureFlags) SetDefaults() {
f.CallsEnabled = true
f.BoardsProduct = false
f.PlanUpgradeButtonText = "upgrade"
f.PostPriority = false
}
func (f *FeatureFlags) Plugins() map[string]string {

Просмотреть файл

@@ -448,6 +448,7 @@ func (ts *TelemetryService) trackConfig() {
"enable_file_search": *cfg.ServiceSettings.EnableFileSearch,
"restrict_link_previews": isDefault(*cfg.ServiceSettings.RestrictLinkPreviews, ""),
"enable_custom_groups": *cfg.ServiceSettings.EnableCustomGroups,
"post_priority": *cfg.ServiceSettings.PostPriority,
})
ts.SendTelemetry(TrackConfigTeam, map[string]any{