Documentation
¶
Index ¶
Constants ¶
View Source
const ( // ServerRoleBootstrap represents the bootstrap test server role ServerRoleBootstrap = "bootstrap" // ServerRoleGraphQL represents the graphql server role ServerRoleGraphQL = "graphql" // ServerRoleWebapp represents the webapp server role ServerRoleWebapp = "webapp" )
Variables ¶
View Source
var Defaults = Values{ ConfigPath: "", LogLevel: "info", ApplicationName: "megabot", DbType: "postgres", DbAddress: "", DbPort: 5432, DbUser: "", DbPassword: "", DbDatabase: "megabot", DbTLSMode: "disable", DbTLSCACert: "", DbLoadTestData: false, RedisAddress: "localhost:6379", RedisDB: 0, RedisPassword: "", AccessExpiration: time.Minute * 15, RefreshExpiration: time.Hour * 24 * 7, S3Endpoint: "play.min.io", S3Region: "us-east-1", S3UseSSL: true, S3Bucket: "megabot", S3PresignedURLExpiration: 10 * time.Second, ServerExternalHostname: "localhost", ServerHTTP2: true, ServerHTTP2Bind: ":5000", ServerHTTP3: false, ServerHTTP3Bind: ":5000", ServerMinifyHTML: true, ServerRoles: []string{ ServerRoleGraphQL, ServerRoleWebapp, }, ServerTLSCertPath: "server.crt", ServerTLSKeyPath: "server.key", }
Defaults contains the default values
View Source
var Keys = KeyNames{
ConfigPath: "config-path",
LogLevel: "log-level",
ApplicationName: "application-name",
SoftwareVersion: "software-version",
DbType: "db-type",
DbAddress: "db-address",
DbPort: "db-port",
DbUser: "db-user",
DbPassword: "db-password",
DbDatabase: "db-database",
DbTLSMode: "db-tls-mode",
DbTLSCACert: "db-tls-ca-cert",
DbLoadTestData: "test-data",
RedisAddress: "redis-address",
RedisDB: "redis-db",
RedisPassword: "redis-password",
AccessExpiration: "access-expiration",
AccessSecret: "access-secret",
RefreshExpiration: "refresh-expiration",
RefreshSecret: "refresh-secret",
S3Endpoint: "s3-endpoint",
S3Region: "s3-region",
S3AccessKeyID: "s3-access-id",
S3SecretAccessKey: "s3-secret-key",
S3UseSSL: "s3-ssl",
S3Bucket: "s3-bucket",
S3PresignedURLExpiration: "s3-url-expiration",
ServerExternalHostname: "external-hostname",
ServerHTTP2: "http2",
ServerHTTP2Bind: "http2-bind",
ServerHTTP3: "http3",
ServerHTTP3Bind: "http3-bind",
ServerMinifyHTML: "minify-html",
ServerRoles: "server-role",
ServerTLSCertPath: "tls-cert",
ServerTLSKeyPath: "tls-key",
UserEmail: "email",
UserGroups: "group",
UserPassword: "password",
}
Keys contains the names of config keys.
Functions ¶
func ReadConfigFile ¶
func ReadConfigFile() error
ReadConfigFile reads the config file from disk if config path is sent.
Types ¶
type KeyNames ¶
type KeyNames struct {
LogLevel string
ConfigPath string
// application
ApplicationName string
SoftwareVersion string
// database
DbType string
DbAddress string
DbPort string
DbUser string
DbPassword string
DbDatabase string
DbTLSMode string
DbTLSCACert string
DbLoadTestData string
// redis
RedisAddress string
RedisDB string
RedisPassword string
// auth
AccessExpiration string
AccessSecret string
RefreshExpiration string
RefreshSecret string
// s3
S3Endpoint string
S3Region string
S3AccessKeyID string
S3SecretAccessKey string
S3UseSSL string
S3Bucket string
S3PresignedURLExpiration string
// server
ServerExternalHostname string
ServerHTTP2 string
ServerHTTP2Bind string
ServerHTTP3 string
ServerHTTP3Bind string
ServerMinifyHTML string
ServerRoles string
ServerTLSCertPath string
ServerTLSKeyPath string
// user
UserEmail string
UserGroups string
UserPassword string
}
KeyNames is a struct that contains the names of keys.
type Values ¶
type Values struct {
ConfigPath string
LogLevel string
// application
ApplicationName string
SoftwareVersion string
// database
DbType string
DbAddress string
DbPort int
DbUser string
DbPassword string
DbDatabase string
DbTLSMode string
DbTLSCACert string
DbLoadTestData bool
// redis
RedisAddress string
RedisDB int
RedisPassword string
// auth
AccessExpiration time.Duration
AccessSecret string
RefreshExpiration time.Duration
RefreshSecret string
// s3
S3Endpoint string
S3Region string
S3AccessKeyID string
S3SecretAccessKey string
S3UseSSL bool
S3Bucket string
S3PresignedURLExpiration time.Duration
// server
ServerExternalHostname string
ServerHTTP2 bool
ServerHTTP2Bind string
ServerHTTP3 bool
ServerHTTP3Bind string
ServerMinifyHTML bool
ServerRoles []string
ServerTLSCertPath string
ServerTLSKeyPath string
// user
UserEmail string
UserGroups []string
UserPassword string
}
Values contains the type of each value.
Click to show internal directories.
Click to hide internal directories.