DEVELOPMENT ENVIRONMENT

~liljamo/felu

ref: 334e135c39e1243fe670e822739f8548db63933e felu/config/config.go -rw-r--r-- 970 bytes
334e135cJonni Liljamo feat: indicator in logger for if frontend or backend 11 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*
 * Copyright (C) 2023 Jonni Liljamo <jonni@liljamo.com>
 *
 * This file is licensed under AGPL-3.0-or-later, see NOTICE and LICENSE for
 * more information.
 */
package config

import "git.src.quest/~skye/erya-go/util"

var FeluConfig *config

type config struct {
	ServiceName string

	// Data directory, with trailing slash
	DataDir string

	FrontendBindAddr string

	BackendBindAddr string

	DNSBindIP   string
	DNSBindPort int32
	DNSPattern  string
}

func InitConfig() {
	FeluConfig = &config {
		ServiceName: util.LoadEnvStr("FELU_SERVICE_NAME", "FeluDDNS"),

		DataDir: util.LoadEnvStr("FELU_DB_PATH", "/var/felu/"),

		FrontendBindAddr: util.LoadEnvStr("FELU_FRONTEND_BIND_ADDR", "0.0.0.0:8080"),

		BackendBindAddr: util.LoadEnvStr("FELU_BACKEND_BIND_ADDR", "0.0.0.0:8081"),

		DNSBindIP: util.LoadEnvStr("FELU_DNS_BIND_IP", "0.0.0.0"),
		DNSBindPort: util.LoadEnvInt32("FELU_DNS_BIND_PORT", 53),
		DNSPattern: util.LoadEnvStr("FELU_DNS_PATTERN", "."),
	}
}