outposts: use common config loader for outposts to support loading values from file
closes #4383 Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
parent
47aba4a996
commit
7eb6320d74
|
@ -8,6 +8,7 @@ import (
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
|
|
||||||
"goauthentik.io/internal/common"
|
"goauthentik.io/internal/common"
|
||||||
|
"goauthentik.io/internal/config"
|
||||||
"goauthentik.io/internal/debug"
|
"goauthentik.io/internal/debug"
|
||||||
"goauthentik.io/internal/outpost/ak"
|
"goauthentik.io/internal/outpost/ak"
|
||||||
"goauthentik.io/internal/outpost/ldap"
|
"goauthentik.io/internal/outpost/ldap"
|
||||||
|
@ -30,14 +31,14 @@ func main() {
|
||||||
DisableHTMLEscape: true,
|
DisableHTMLEscape: true,
|
||||||
})
|
})
|
||||||
go debug.EnableDebugServer()
|
go debug.EnableDebugServer()
|
||||||
akURL, found := os.LookupEnv("AUTHENTIK_HOST")
|
akURL := config.Get().AuthentikHost
|
||||||
if !found {
|
if akURL == "" {
|
||||||
fmt.Println("env AUTHENTIK_HOST not set!")
|
fmt.Println("env AUTHENTIK_HOST not set!")
|
||||||
fmt.Println(helpMessage)
|
fmt.Println(helpMessage)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
akToken, found := os.LookupEnv("AUTHENTIK_TOKEN")
|
akToken := config.Get().AuthentikToken
|
||||||
if !found {
|
if akToken == "" {
|
||||||
fmt.Println("env AUTHENTIK_TOKEN not set!")
|
fmt.Println("env AUTHENTIK_TOKEN not set!")
|
||||||
fmt.Println(helpMessage)
|
fmt.Println(helpMessage)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
|
|
|
@ -8,6 +8,7 @@ import (
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
|
|
||||||
"goauthentik.io/internal/common"
|
"goauthentik.io/internal/common"
|
||||||
|
"goauthentik.io/internal/config"
|
||||||
"goauthentik.io/internal/debug"
|
"goauthentik.io/internal/debug"
|
||||||
"goauthentik.io/internal/outpost/ak"
|
"goauthentik.io/internal/outpost/ak"
|
||||||
"goauthentik.io/internal/outpost/proxyv2"
|
"goauthentik.io/internal/outpost/proxyv2"
|
||||||
|
@ -33,14 +34,14 @@ func main() {
|
||||||
DisableHTMLEscape: true,
|
DisableHTMLEscape: true,
|
||||||
})
|
})
|
||||||
go debug.EnableDebugServer()
|
go debug.EnableDebugServer()
|
||||||
akURL, found := os.LookupEnv("AUTHENTIK_HOST")
|
akURL := config.Get().AuthentikHost
|
||||||
if !found {
|
if akURL == "" {
|
||||||
fmt.Println("env AUTHENTIK_HOST not set!")
|
fmt.Println("env AUTHENTIK_HOST not set!")
|
||||||
fmt.Println(helpMessage)
|
fmt.Println(helpMessage)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
akToken, found := os.LookupEnv("AUTHENTIK_TOKEN")
|
akToken := config.Get().AuthentikToken
|
||||||
if !found {
|
if akToken == "" {
|
||||||
fmt.Println("env AUTHENTIK_TOKEN not set!")
|
fmt.Println("env AUTHENTIK_TOKEN not set!")
|
||||||
fmt.Println(helpMessage)
|
fmt.Println(helpMessage)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
|
|
|
@ -1,14 +1,23 @@
|
||||||
package config
|
package config
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
Debug bool `yaml:"debug" env:"AUTHENTIK_DEBUG"`
|
// Core specific config
|
||||||
SecretKey string `yaml:"secret_key" env:"AUTHENTIK_SECRET_KEY"`
|
SecretKey string `yaml:"secret_key" env:"AUTHENTIK_SECRET_KEY"`
|
||||||
Listen ListenConfig `yaml:"listen"`
|
|
||||||
Paths PathsConfig `yaml:"paths"`
|
Paths PathsConfig `yaml:"paths"`
|
||||||
LogLevel string `yaml:"log_level" env:"AUTHENTIK_LOG_LEVEL"`
|
LogLevel string `yaml:"log_level" env:"AUTHENTIK_LOG_LEVEL"`
|
||||||
ErrorReporting ErrorReportingConfig `yaml:"error_reporting"`
|
ErrorReporting ErrorReportingConfig `yaml:"error_reporting"`
|
||||||
Redis RedisConfig `yaml:"redis"`
|
Redis RedisConfig `yaml:"redis"`
|
||||||
Outposts OutpostConfig `yaml:"outposts"`
|
Outposts OutpostConfig `yaml:"outposts"`
|
||||||
|
|
||||||
|
// Config for both core and outposts
|
||||||
|
Debug bool `yaml:"debug" env:"AUTHENTIK_DEBUG"`
|
||||||
|
Listen ListenConfig `yaml:"listen"`
|
||||||
|
|
||||||
|
// Outpost specific config
|
||||||
|
// These are only relevant for proxy/ldap outposts, and cannot be set via YAML
|
||||||
|
// They are loaded via this config loader to support file:// schemas
|
||||||
|
AuthentikHost string `env:"AUTHENTIK_HOST"`
|
||||||
|
AuthentikToken string `env:"AUTHENTIK_TOKEN"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type RedisConfig struct {
|
type RedisConfig struct {
|
||||||
|
|
|
@ -3,8 +3,6 @@ package debug
|
||||||
import (
|
import (
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/http/pprof"
|
"net/http/pprof"
|
||||||
"os"
|
|
||||||
"strings"
|
|
||||||
|
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
"goauthentik.io/internal/config"
|
"goauthentik.io/internal/config"
|
||||||
|
@ -12,7 +10,7 @@ import (
|
||||||
|
|
||||||
func EnableDebugServer() {
|
func EnableDebugServer() {
|
||||||
l := log.WithField("logger", "authentik.go_debugger")
|
l := log.WithField("logger", "authentik.go_debugger")
|
||||||
if deb := os.Getenv("AUTHENTIK_DEBUG"); strings.ToLower(deb) != "true" {
|
if !config.Get().Debug {
|
||||||
l.Info("not enabling debug server, set `AUTHENTIK_DEBUG` to `true` to enable it.")
|
l.Info("not enabling debug server, set `AUTHENTIK_DEBUG` to `true` to enable it.")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue