nixos/mattermost: disable telemetry by default

We should disable telemetry but enable security update checks. Make both
controlable in the module without digging into settings.

Disabling telemetry also makes NixOS tests faster because the server
tries to send telemetry on first start.
This commit is contained in:
Morgan Jones 2025-01-25 17:23:39 -08:00 committed by Valentin Gagarin
parent cbdbe58680
commit fc3f7c17e2
2 changed files with 29 additions and 1 deletions

View File

@ -202,6 +202,7 @@ let
ListenAddress = "${cfg.host}:${toString cfg.port}";
LocalModeSocketLocation = cfg.socket.path;
EnableLocalMode = cfg.socket.enable;
EnableSecurityFixAlert = cfg.telemetry.enableSecurityAlerts;
};
TeamSettings.SiteName = cfg.siteName;
SqlSettings.DriverName = cfg.database.driver;
@ -233,7 +234,13 @@ let
FileSettings.Directory = cfg.dataDir;
PluginSettings.Directory = "${pluginDir}/server";
PluginSettings.ClientDirectory = "${pluginDir}/client";
LogSettings.FileLocation = cfg.logDir;
LogSettings = {
FileLocation = cfg.logDir;
# Reaches out to Mattermost's servers for telemetry; disable it by default.
# https://docs.mattermost.com/configure/environment-configuration-settings.html#enable-diagnostics-and-error-reporting
EnableDiagnostics = cfg.telemetry.enableDiagnostics;
};
} cfg.settings;
mattermostConf = recursiveUpdate mattermostConfWithoutPlugins (
@ -474,6 +481,26 @@ in
'';
};
telemetry = {
enableSecurityAlerts = mkOption {
type = types.bool;
default = true;
description = ''
True if we should enable security update checking. This reaches out to Mattermost's servers:
https://docs.mattermost.com/manage/telemetry.html#security-update-check-feature
'';
};
enableDiagnostics = mkOption {
type = types.bool;
default = false;
description = ''
True if we should enable sending diagnostic data. This reaches out to Mattermost's servers:
https://docs.mattermost.com/manage/telemetry.html#error-and-diagnostics-reporting-feature
'';
};
};
environment = mkOption {
type = with types; attrsOf (either int str);
default = { };

View File

@ -48,6 +48,7 @@ import ../make-test-python.nix (
database = {
peerAuth = lib.mkDefault true;
};
telemetry.enableSecurityAlerts = false;
settings = {
SupportSettings.AboutLink = "https://nixos.org";
PluginSettings.AutomaticPrepackagedPlugins = false;