2 Commits

Author SHA1 Message Date
a2676a4f30 Merge branch 'staging' of https://git.fossy.my.id/bagas/tunnel-please into staging
All checks were successful
Docker Build and Push / build-and-push (push) Successful in 3m36s
renovate / renovate (push) Successful in 20s
2025-12-28 18:45:46 +07:00
83657d3206 refactor: remove unnecessary caching of environment data 2025-12-28 18:45:22 +07:00

View File

@@ -11,22 +11,18 @@ import (
"path/filepath"
"strconv"
"strings"
"sync"
"time"
"github.com/joho/godotenv"
"golang.org/x/crypto/ssh"
)
type Env struct {
value map[string]string
mu sync.Mutex
}
var env *Env
func init() {
env = &Env{value: map[string]string{}}
if _, err := os.Stat(".env"); err == nil {
if err := godotenv.Load(".env"); err != nil {
log.Printf("Warning: Failed to load .env file: %s", err)
}
}
}
func GenerateRandomString(length int) string {
@@ -41,24 +37,10 @@ func GenerateRandomString(length int) string {
}
func Getenv(key, defaultValue string) string {
env.mu.Lock()
defer env.mu.Unlock()
if val, ok := env.value[key]; ok {
return val
}
if os.Getenv("HOSTNAME") == "" {
err := godotenv.Load(".env")
if err != nil {
log.Fatalf("Error loading .env file: %s", err)
}
}
val := os.Getenv(key)
if val == "" {
val = defaultValue
}
env.value[key] = val
return val
}