summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/config.go5
-rw-r--r--config/env.go11
2 files changed, 16 insertions, 0 deletions
diff --git a/config/config.go b/config/config.go
index 293a135..41b0f5a 100644
--- a/config/config.go
+++ b/config/config.go
@@ -10,6 +10,7 @@ import (
var (
Server server
Database database
+ Session session
)
func init() {
@@ -24,4 +25,8 @@ func init() {
if err := env.Parse(&Database); err != nil {
log.Fatalf("Failed to parse DatabaseConfig: %v", err)
}
+
+ if err := env.Parse(&Session); err != nil {
+ log.Fatalf("Failed to parse SessionConfig: %v", err)
+ }
}
diff --git a/config/env.go b/config/env.go
index dd9eb70..760bb3d 100644
--- a/config/env.go
+++ b/config/env.go
@@ -1,5 +1,7 @@
package config
+import "time"
+
type server struct {
Host string `env:"SERVER_HOST" default:"localhost"`
Port int `env:"SERVER_PORT" default:"8080"`
@@ -17,3 +19,12 @@ type database struct {
Name string `env:"DB_NAME" default:"cafe"`
SSLMode string `env:"DB_SSLMODE" default:"disable"`
}
+
+type session struct {
+ CookieDomain string `env:"SESSION_COOKIE_DOMAIN" default:"localhost"`
+ CookieName string `env:"SESSION_COOKIE_NAME" default:"cafe_session"`
+ CookiePath string `env:"SESSION_COOKIE_PATH" default:"/"`
+ CookieSameSite string `env:"SESSION_COOKIE_SAME_SITE" default:"Lax"`
+ CookieSecure bool `env:"SESSION_SECURE_COOKIE" default:"false"`
+ CookieTimeout time.Duration `env:"SESSION_TIMEOUT" default:"24h"`
+}