From f8559e9f3798fcbc553b2b3596ccee637f356dc3 Mon Sep 17 00:00:00 2001 From: Timofey Kirillov Date: Wed, 7 Sep 2022 18:32:14 +0300 Subject: [PATCH] fix(telemetry): repair turn-off telemetry switch Signed-off-by: Timofey Kirillov --- pkg/telemetry/telemetry.go | 15 +++++++++++---- pkg/util/env.go | 19 ++++++++++++++----- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/pkg/telemetry/telemetry.go b/pkg/telemetry/telemetry.go index 1e75409a19..7aeb835072 100644 --- a/pkg/telemetry/telemetry.go +++ b/pkg/telemetry/telemetry.go @@ -13,7 +13,8 @@ import ( ) const ( - TracesURL = "https://telemetry.werf.io/v1/traces" + TracesURL = "https://telemetry.werf.io/v1/traces" + TelemetryEnv = "WERF_TELEMETRY" ) var ( @@ -94,9 +95,15 @@ func GetTraceUrl() string { } func IsEnabled() bool { - isDevVersion := werf.Version == "dev" || werf.Version == "0.0.0" - envVal := util.GetBoolEnvironmentDefaultFalse("WERF_TELEMETRY") - return envVal || !isDevVersion + val, isSet := util.LookupBoolEnvironment(TelemetryEnv) + if isSet && val != nil { + return *val + } + + if werf.Version == "dev" || werf.Version == "0.0.0" { + return false + } + return true } func LogF(f string, args ...interface{}) { diff --git a/pkg/util/env.go b/pkg/util/env.go index 065b350dec..f3debac3aa 100644 --- a/pkg/util/env.go +++ b/pkg/util/env.go @@ -8,17 +8,26 @@ import ( "strings" ) -func GetBoolEnvironment(environmentName string) *bool { - switch os.Getenv(environmentName) { +func LookupBoolEnvironment(environmentName string) (*bool, bool) { + value, isSet := os.LookupEnv(environmentName) + if !isSet { + return nil, false + } + + switch value { case "1", "true", "yes": t := true - return &t + return &t, true case "0", "false", "no": f := false - return &f + return &f, true } + return nil, true +} - return nil +func GetBoolEnvironment(environmentName string) *bool { + val, _ := LookupBoolEnvironment(environmentName) + return val } func GetBoolEnvironmentDefaultFalse(environmentName string) bool {