fix: make telemetry opt-in
This commit is contained in:
@@ -63,6 +63,7 @@ CFG_OAUTH_ISSUER_URL=""
|
||||
CFG_SESSION_SECRET=""
|
||||
CFG_SETTINGS_SYNC_ENABLED="false"
|
||||
CFG_SETTINGS_DATA_DIR="./data/settings"
|
||||
CFG_TELEMETRY="false"
|
||||
CFG_LOG_FORMAT="text"
|
||||
CFG_LOG_LEVEL="info"
|
||||
CFG_APP_SHORT_NAME=""
|
||||
@@ -733,6 +734,30 @@ screen_security_config() {
|
||||
echo -e " ${DIM}You can add a SESSION_SECRET to .env.local at any time.${RESET}"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
hr
|
||||
echo ""
|
||||
echo -e " ${BOLD}Anonymous Usage Stats${RESET}"
|
||||
echo ""
|
||||
echo -e " Bulwark can send one anonymous heartbeat per day. It helps us see how"
|
||||
echo -e " many instances run, on what platforms, and which features are enabled"
|
||||
echo -e " so we can ${BOLD}make the product better${RESET}."
|
||||
echo ""
|
||||
echo -e " ${STAR} ${BOLD}No private data${RESET} - no email addresses, hostnames, or IPs"
|
||||
echo -e " ${STAR} Just version, platform, and which features are turned on"
|
||||
echo -e " ${STAR} ${BOLD}Off by default${RESET} - you can change it any time in the admin UI"
|
||||
echo ""
|
||||
|
||||
prompt_yesno "Enable anonymous telemetry to help improve Bulwark?" "$CFG_TELEMETRY" "CFG_TELEMETRY"
|
||||
|
||||
if [[ "$CFG_TELEMETRY" == "true" ]]; then
|
||||
echo ""
|
||||
echo -e " ${OK} ${GREEN}Thanks! Telemetry will be enabled. We appreciate it.${RESET}"
|
||||
else
|
||||
echo ""
|
||||
note "Telemetry stays off. No heartbeats will be sent."
|
||||
fi
|
||||
|
||||
draw_footer
|
||||
read -r
|
||||
}
|
||||
@@ -948,6 +973,11 @@ screen_summary() {
|
||||
else
|
||||
echo -e " Session Secret ........ ${DIM}Not set${RESET}"
|
||||
fi
|
||||
if [[ "$CFG_TELEMETRY" == "true" ]]; then
|
||||
echo -e " Anonymous Telemetry ... ${GREEN}${BOLD}Enabled${RESET} ${DIM}(thank you!)${RESET}"
|
||||
else
|
||||
echo -e " Anonymous Telemetry ... ${DIM}Off${RESET}"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# Logging
|
||||
@@ -1093,6 +1123,20 @@ ENVEOF
|
||||
|
||||
cat >> "$ENV_FILE" << ENVEOF
|
||||
|
||||
# -- Anonymous Telemetry -------------------------------------------------------
|
||||
# Opt-in, anonymous heartbeats (no PII). Off by default; helps improve Bulwark.
|
||||
# Toggleable later in the admin UI unless this is set. See
|
||||
# https://bulwarkmail.org/docs/legal/privacy/telemetry
|
||||
ENVEOF
|
||||
|
||||
if [[ "$CFG_TELEMETRY" == "true" ]]; then
|
||||
echo "BULWARK_TELEMETRY=on" >> "$ENV_FILE"
|
||||
else
|
||||
echo "# BULWARK_TELEMETRY=on" >> "$ENV_FILE"
|
||||
fi
|
||||
|
||||
cat >> "$ENV_FILE" << ENVEOF
|
||||
|
||||
# -- Logging -------------------------------------------------------------------
|
||||
LOG_FORMAT=${CFG_LOG_FORMAT}
|
||||
LOG_LEVEL=${CFG_LOG_LEVEL}
|
||||
@@ -1340,6 +1384,11 @@ load_existing_config() {
|
||||
get_env_val "SESSION_SECRET"; [[ -n "$val" ]] && CFG_SESSION_SECRET="$val"
|
||||
get_env_val "SETTINGS_SYNC_ENABLED"; [[ -n "$val" ]] && CFG_SETTINGS_SYNC_ENABLED="$val"
|
||||
get_env_val "SETTINGS_DATA_DIR"; [[ -n "$val" ]] && CFG_SETTINGS_DATA_DIR="$val"
|
||||
get_env_val "BULWARK_TELEMETRY"
|
||||
case "$(echo "$val" | tr '[:upper:]' '[:lower:]')" in
|
||||
on|true|1|yes) CFG_TELEMETRY="true" ;;
|
||||
off|false|0|no) CFG_TELEMETRY="false" ;;
|
||||
esac
|
||||
get_env_val "LOG_FORMAT"; [[ -n "$val" ]] && CFG_LOG_FORMAT="$val"
|
||||
get_env_val "LOG_LEVEL"; [[ -n "$val" ]] && CFG_LOG_LEVEL="$val"
|
||||
get_env_val "LOGIN_COMPANY_NAME"; [[ -n "$val" ]] && CFG_LOGIN_COMPANY_NAME="$val"
|
||||
|
||||
Reference in New Issue
Block a user