MCPcopy Create free account
hub / github.com/0xUnixIO/pulse / Load

Function Load

internal/config/config.go:38–58  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

36}
37
38func Load() Config {
39 return Config{
40 ServerAddr: envOrDefault("PULSE_SERVER_ADDR", ":8080"),
41 DataDir: envOrDefault("PULSE_DATA_DIR", "./data"),
42 DatabaseURL: envOrDefault("PULSE_DATABASE_URL", ""),
43 NodeCACertFile: envOrDefault("PULSE_NODE_CA_CERT_FILE", "./node_ca_cert.pem"),
44 NodeCAKeyFile: envOrDefault("PULSE_NODE_CA_KEY_FILE", "./node_ca_key.pem"),
45 NodeGRPCURL: envOrDefault("PULSE_NODE_GRPC_URL", ""),
46 NodeID: envOrDefault("PULSE_NODE_ID", ""),
47 NodeServerAddr: envOrDefault("PULSE_NODE_SERVER_ADDR", ""),
48 NodeClientCert: envOrDefault("PULSE_NODE_CLIENT_CERT_FILE", "./node_cert.pem"),
49 NodeClientKey: envOrDefault("PULSE_NODE_CLIENT_KEY_FILE", "./node_key.pem"),
50 NodeServerCAFile: envOrDefault("PULSE_NODE_SERVER_CA_FILE", "./node_ca.pem"),
51 NodeServerName: envOrDefault("PULSE_NODE_SERVER_NAME", ""),
52 DiscourseURL: envOrDefault("PULSE_DISCOURSE_URL", ""),
53 DiscourseSSOSecret: envOrDefault("PULSE_DISCOURSE_SSO_SECRET", ""),
54 DiscourseAdminUsers: envOrDefault("PULSE_DISCOURSE_ADMIN_USERS", ""),
55 StripeSecretKey: envOrDefault("PULSE_STRIPE_SECRET_KEY", ""),
56 StripeWebhookSecret: envOrDefault("PULSE_STRIPE_WEBHOOK_SECRET", ""),
57 }
58}
59
60func envOrDefault(key, fallback string) string {
61 if value := os.Getenv(key); value != "" {

Callers 3

RunFunction · 0.92
ServerPortFunction · 0.92
RunFunction · 0.92

Calls 1

envOrDefaultFunction · 0.85

Tested by

no test coverage detected