57c29dc58f
- Removed YAML configuration files for the scraper and web commands, transitioning to an environment-based configuration system. - Updated configuration structs to utilize `env` tags for loading values from `.env` files, enhancing security and flexibility. - Implemented reflection-based parsing for environment variables, ensuring type-safe configuration loading. - Revised documentation to reflect the new configuration approach, including usage examples and best practices for environment variable naming conventions.
29 lines
688 B
Go
29 lines
688 B
Go
package bootstrap
|
|
|
|
import (
|
|
"tm/pkg/config"
|
|
)
|
|
|
|
// Config holds configuration for the web command
|
|
type Config struct {
|
|
Server config.ServerConfig
|
|
Database config.DatabaseConfig
|
|
Cache config.CacheConfig
|
|
Logging config.LoggingConfig
|
|
RateLimit config.RateLimitConfig
|
|
Assets config.AssetsConfig
|
|
UserAuth AuthConfig
|
|
CustomerAuth AuthConfig
|
|
}
|
|
|
|
type AuthConfig struct {
|
|
JWT JWTConfig
|
|
}
|
|
|
|
type JWTConfig struct {
|
|
AccessSecret string `env:"USER_AUTH_ACCESS_SECRET"`
|
|
RefreshSecret string `env:"USER_AUTH_REFRESH_SECRET"`
|
|
AccessExpiresIn int `env:"USER_AUTH_ACCESS_EXPIRES_IN"`
|
|
RefreshExpiresIn int `env:"USER_AUTH_REFRESH_EXPIRES_IN"`
|
|
}
|