summaryrefslogtreecommitdiff
path: root/internal/configuration/schema/configuration.go
diff options
context:
space:
mode:
authorClement Michaud <clement.michaud34@gmail.com>2019-11-17 11:47:07 +0100
committerClément Michaud <clement.michaud34@gmail.com>2019-11-17 16:30:33 +0100
commit3b2d733367c88621e4178301f2bcb4bc03613eee (patch)
tree41ac41fc5b6cece04db85a08bfa7c32a022f7354 /internal/configuration/schema/configuration.go
parenta06b69dd458e756f1a3d6867eb5b9f54560e2ee1 (diff)
Move source code into internal directory to follow standard project layout.
https://github.com/golang-standards/project-layout
Diffstat (limited to 'internal/configuration/schema/configuration.go')
-rw-r--r--internal/configuration/schema/configuration.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/internal/configuration/schema/configuration.go b/internal/configuration/schema/configuration.go
new file mode 100644
index 000000000..3035fcc20
--- /dev/null
+++ b/internal/configuration/schema/configuration.go
@@ -0,0 +1,18 @@
+package schema
+
+// Configuration object extracted from YAML configuration file.
+type Configuration struct {
+ Port int `yaml:"port"`
+ LogsLevel string `yaml:"logs_level"`
+ JWTSecret string `yaml:"jwt_secret"`
+ DefaultRedirectionURL string `yaml:"default_redirection_url"`
+ AuthenticationBackend AuthenticationBackendConfiguration `yaml:"authentication_backend"`
+ Session SessionConfiguration `yaml:"session"`
+
+ TOTP *TOTPConfiguration `yaml:"totp"`
+ DuoAPI *DuoAPIConfiguration `yaml:"duo_api"`
+ AccessControl *AccessControlConfiguration `yaml:"access_control"`
+ Regulation *RegulationConfiguration `yaml:"regulation"`
+ Storage *StorageConfiguration `yaml:"storage"`
+ Notifier *NotifierConfiguration `yaml:"notifier"`
+}