diff --git a/app/diagnostics.go b/app/diagnostics.go index 33cf61a17d..1850d13cc1 100644 --- a/app/diagnostics.go +++ b/app/diagnostics.go @@ -636,6 +636,7 @@ func (s *Server) trackConfig() { "enable_click_to_reply": *cfg.ExperimentalSettings.EnableClickToReply, "restrict_system_admin": *cfg.ExperimentalSettings.RestrictSystemAdmin, "use_new_saml_library": *cfg.ExperimentalSettings.UseNewSAMLLibrary, + "cloud_billing": *cfg.ExperimentalSettings.CloudBilling, }) s.SendDiagnostic(TRACK_CONFIG_ANALYTICS, map[string]interface{}{ diff --git a/config/client.go b/config/client.go index a7cc70bcfc..b060b3d609 100644 --- a/config/client.go +++ b/config/client.go @@ -53,6 +53,7 @@ func GenerateClientConfig(c *model.Config, diagnosticID string, license *model.L props["ExperimentalEnableClickToReply"] = strconv.FormatBool(*c.ExperimentalSettings.EnableClickToReply) props["ExperimentalCloudUserLimit"] = strconv.FormatInt(*c.ExperimentalSettings.CloudUserLimit, 10) + props["ExperimentalCloudBilling"] = strconv.FormatBool(*c.ExperimentalSettings.CloudBilling) if *c.ServiceSettings.ExperimentalChannelOrganization || *c.ServiceSettings.ExperimentalGroupUnreadChannels != model.GROUP_UNREAD_CHANNELS_DISABLED { props["ExperimentalChannelOrganization"] = strconv.FormatBool(true) } else { diff --git a/model/config.go b/model/config.go index c8615dcc44..30d5586cc1 100644 --- a/model/config.go +++ b/model/config.go @@ -863,6 +863,7 @@ type ExperimentalSettings struct { RestrictSystemAdmin *bool `access:"experimental,write_restrictable"` UseNewSAMLLibrary *bool `access:"experimental"` CloudUserLimit *int64 `access:"experimental,write_restrictable"` + CloudBilling *bool `access:"experimental,write_restrictable"` } func (s *ExperimentalSettings) SetDefaults() { @@ -890,6 +891,11 @@ func (s *ExperimentalSettings) SetDefaults() { // User limit 0 is treated as no limit s.CloudUserLimit = NewInt64(0) } + + if s.CloudBilling == nil { + s.CloudBilling = NewBool(false) + } + if s.UseNewSAMLLibrary == nil { s.UseNewSAMLLibrary = NewBool(false) }