From 0e906065471cfcca89dcdfeb65137db07fd0bed8 Mon Sep 17 00:00:00 2001 From: Agniva De Sarker Date: Thu, 1 Oct 2020 10:37:15 +0530 Subject: [PATCH] MM-29011: Add feature flag for shared channels (#15585) * MM-29011: Add feature flag for shared channels https://mattermost.atlassian.net/browse/MM-29011 * gofmt Co-authored-by: Mattermod --- config/client.go | 1 + model/config.go | 5 +++++ services/telemetry/telemetry.go | 1 + 3 files changed, 7 insertions(+) diff --git a/config/client.go b/config/client.go index 9b5632b5e3..a64bef56a5 100644 --- a/config/client.go +++ b/config/client.go @@ -59,6 +59,7 @@ func GenerateClientConfig(c *model.Config, telemetryID string, license *model.Li } else { props["ExperimentalChannelOrganization"] = strconv.FormatBool(false) } + props["ExperimentalSharedChannels"] = strconv.FormatBool(*c.ExperimentalSettings.EnableSharedChannels) props["ExperimentalChannelSidebarOrganization"] = *c.ServiceSettings.ExperimentalChannelSidebarOrganization props["ExperimentalEnableAutomaticReplies"] = strconv.FormatBool(*c.TeamSettings.ExperimentalEnableAutomaticReplies) diff --git a/model/config.go b/model/config.go index ea578e5910..b4317db9eb 100644 --- a/model/config.go +++ b/model/config.go @@ -875,6 +875,7 @@ type ExperimentalSettings struct { UseNewSAMLLibrary *bool `access:"experimental,cloud_restrictable"` CloudUserLimit *int64 `access:"experimental,write_restrictable,cloud_restrictable"` CloudBilling *bool `access:"experimental,write_restrictable,cloud_restrictable"` + EnableSharedChannels *bool `access:"experimental"` } func (s *ExperimentalSettings) SetDefaults() { @@ -910,6 +911,10 @@ func (s *ExperimentalSettings) SetDefaults() { if s.UseNewSAMLLibrary == nil { s.UseNewSAMLLibrary = NewBool(false) } + + if s.EnableSharedChannels == nil { + s.EnableSharedChannels = NewBool(false) + } } type AnalyticsSettings struct { diff --git a/services/telemetry/telemetry.go b/services/telemetry/telemetry.go index 70fb6f0831..fca9f5a9b1 100644 --- a/services/telemetry/telemetry.go +++ b/services/telemetry/telemetry.go @@ -683,6 +683,7 @@ func (ts *TelemetryService) trackConfig() { "restrict_system_admin": *cfg.ExperimentalSettings.RestrictSystemAdmin, "use_new_saml_library": *cfg.ExperimentalSettings.UseNewSAMLLibrary, "cloud_billing": *cfg.ExperimentalSettings.CloudBilling, + "enable_shared_channels": *cfg.ExperimentalSettings.EnableSharedChannels, }) ts.sendTelemetry(TRACK_CONFIG_ANALYTICS, map[string]interface{}{