blob: 8057e7aeb507d48deddd6a5049aea251ff014ffd (
plain)
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
|
package config
import "time"
type server struct {
Host string `env:"HOST" default:"0.0.0.0"`
Port int `env:"PORT" default:"3000"`
Secret string `env:"SECRET" default:"pagoda-secret"`
Debug bool `env:"DEBUG" default:"false"`
CorsOrigins string `env:"CORS_ORIGINS" default:"*"`
TokenExpiry time.Duration `env:"TOKEN_EXPIRY" default:"720h"`
}
type database struct {
Driver string `env:"DB_DRIVER" default:"sqlite"`
DSN string `env:"DSN" default:"pagoda.db"`
}
type smtp struct {
Host string `env:"SMTP_HOST" default:"localhost"`
Port int `env:"SMTP_PORT" default:"587"`
Username string `env:"SMTP_USERNAME" default:""`
Password string `env:"SMTP_PASSWORD" default:""`
From string `env:"SMTP_FROM" default:"[email protected]"`
FrontendURL string `env:"FRONTEND_URL" default:"http://localhost:5173"`
}
type storage struct {
Endpoint string `env:"MINIO_ENDPOINT" default:"localhost:9000"`
AccessKey string `env:"MINIO_ACCESS_KEY" default:""`
SecretKey string `env:"MINIO_SECRET_KEY" default:""`
Bucket string `env:"MINIO_BUCKET" default:"pagoda"`
UseSSL bool `env:"MINIO_USE_SSL" default:"false"`
CDN string `env:"CDN_URL" default:""`
MaxFileSize int64 `env:"MAX_FILE_SIZE" default:"33554432"`
MaxAttachments int `env:"MAX_ATTACHMENTS" default:"8"`
}
|