func (c *Config) Resolve(ctx context.Context) error {
	return configutil.Resolve(ctx,
		configutil.SetString(&c.Engine, configutil.Env(EnvVarDBEngine), configutil.String(c.Engine), configutil.String(DefaultEngine)),
		configutil.SetString(&c.DSN, configutil.Env(EnvVarDatabaseURL), configutil.String(c.DSN)),
		configutil.SetString(&c.Host, configutil.Env(EnvVarDBHost), configutil.String(c.Host), configutil.String(DefaultHost)),
		configutil.SetString(&c.Port, configutil.Env(EnvVarDBPort), configutil.String(c.Port), configutil.String(DefaultPort)),
		configutil.SetString(&c.Database, configutil.Env(EnvVarDBName), configutil.String(c.Database), configutil.String(DefaultDatabase)),
		configutil.SetString(&c.Schema, configutil.Env(EnvVarDBSchema), configutil.String(c.Schema)),
		configutil.SetString(&c.ApplicationName, configutil.Env(EnvVarDBApplicationName), configutil.String(c.ApplicationName)),
		configutil.SetString(&c.Username, configutil.Env(EnvVarDBUser), configutil.String(c.Username), configutil.Env("USER")),
		configutil.SetString(&c.Password, configutil.Env(EnvVarDBPassword), configutil.String(c.Password)),
		configutil.SetDuration(&c.ConnectTimeout, configutil.Env(EnvVarDBConnectTimeout), configutil.Duration(c.ConnectTimeout), configutil.Duration(DefaultConnectTimeout)),
		configutil.SetDuration(&c.LockTimeout, configutil.Env(EnvVarDBLockTimeout), configutil.Duration(c.LockTimeout)),
		configutil.SetDuration(&c.StatementTimeout, configutil.Env(EnvVarDBStatementTimeout), configutil.Duration(c.StatementTimeout)),
		configutil.SetString(&c.SSLMode, configutil.Env(EnvVarDBSSLMode), configutil.String(c.SSLMode)),
		configutil.SetInt(&c.IdleConnections, configutil.Env(EnvVarDBIdleConnections), configutil.Int(c.IdleConnections), configutil.Int(DefaultIdleConnections)),
		configutil.SetInt(&c.MaxConnections, configutil.Env(EnvVarDBMaxConnections), configutil.Int(c.MaxConnections), configutil.Int(DefaultMaxConnections)),
		configutil.SetDuration(&c.MaxLifetime, configutil.Env(EnvVarDBMaxLifetime), configutil.Duration(c.MaxLifetime), configutil.Duration(DefaultMaxLifetime)),
		configutil.SetDuration(&c.MaxIdleTime, configutil.Env(EnvVarDBMaxIdleTime), configutil.Duration(c.MaxIdleTime), configutil.Duration(DefaultMaxIdleTime)),
		configutil.SetInt(&c.BufferPoolSize, configutil.Env(EnvVarDBBufferPoolSize), configutil.Int(c.BufferPoolSize), configutil.Int(DefaultBufferPoolSize)),
		configutil.SetString(&c.Dialect, configutil.Env(EnvVarDBDialect), configutil.String(c.Dialect), configutil.String(DialectPostgres)),
	)
}
// Resolve applies any external data sources to the config.
Resolve applies any external data sources to the config.
// Resolve applies any external data sources to the config .
func (c *Config) Resolve(ctx context.Context) error {
	return configutil.Resolve(ctx,
		configutil.SetString(&c.Engine, configutil.Env(EnvVarDBEngine), configutil.String(c.Engine), configutil.String(DefaultEngine)),
		configutil.SetString(&c.DSN, configutil.Env(EnvVarDatabaseURL), configutil.String(c.DSN)),
		configutil.SetString(&c.Host, configutil.Env(EnvVarDBHost), configutil.String(c.Host), configutil.String(DefaultHost)),
		configutil.SetString(&c.Port, configutil.Env(EnvVarDBPort), configutil.String(c.Port), configutil.String(DefaultPort)),
		configutil.SetString(&c.Database, configutil.Env(EnvVarDBName), configutil.String(c.Database), configutil.String(DefaultDatabase)),
		configutil.SetString(&c.Schema, configutil.Env(EnvVarDBSchema), configutil.String(c.Schema)),
		configutil.SetString(&c.ApplicationName, configutil.Env(EnvVarDBApplicationName), configutil.String(c.ApplicationName)),
		configutil.SetString(&c.Username, configutil.Env(EnvVarDBUser), configutil.String(c.Username), configutil.Env("USER")),
		configutil.SetString(&c.Password, configutil.Env(EnvVarDBPassword), configutil.String(c.Password)),
		configutil.SetDuration(&c.ConnectTimeout, configutil.Env(EnvVarDBConnectTimeout), configutil.Duration(c.ConnectTimeout), configutil.Duration(DefaultConnectTimeout)),
		configutil.SetDuration(&c.LockTimeout, configutil.Env(EnvVarDBLockTimeout), configutil.Duration(c.LockTimeout)),
		configutil.SetDuration(&c.StatementTimeout, configutil.Env(EnvVarDBStatementTimeout), configutil.Duration(c.StatementTimeout)),
		configutil.SetString(&c.SSLMode, configutil.Env(EnvVarDBSSLMode), configutil.String(c.SSLMode)),
		configutil.SetInt(&c.IdleConnections, configutil.Env(EnvVarDBIdleConnections), configutil.Int(c.IdleConnections), configutil.Int(DefaultIdleConnections)),
		configutil.SetInt(&c.MaxConnections, configutil.Env(EnvVarDBMaxConnections), configutil.Int(c.MaxConnections), configutil.Int(DefaultMaxConnections)),
		configutil.SetDuration(&c.MaxLifetime, configutil.Env(EnvVarDBMaxLifetime), configutil.Duration(c.MaxLifetime), configutil.Duration(DefaultMaxLifetime)),
		configutil.SetDuration(&c.MaxIdleTime, configutil.Env(EnvVarDBMaxIdleTime), configutil.Duration(c.MaxIdleTime), configutil.Duration(DefaultMaxIdleTime)),
		configutil.SetInt(&c.BufferPoolSize, configutil.Env(EnvVarDBBufferPoolSize), configutil.Int(c.BufferPoolSize), configutil.Int(DefaultBufferPoolSize)),
		configutil.SetString(&c.Dialect, configutil.Env(EnvVarDBDialect), configutil.String(c.Dialect), configutil.String(DialectPostgres)),
	)
}
func ( c * Config ) Resolve ( ctx context . Context ) error { return configutil . Resolve ( ctx , configutil . SetString ( & c . Engine , configutil . Env ( EnvVarDBEngine ) , configutil . String ( c . Engine ) , configutil . String ( DefaultEngine ) ) , configutil . SetString ( & c . DSN , configutil . Env ( EnvVarDatabaseURL ) , configutil . String ( c . DSN ) ) , configutil . SetString ( & c . Host , configutil . Env ( EnvVarDBHost ) , configutil . String ( c . Host ) , configutil . String ( DefaultHost ) ) , configutil . SetString ( & c . Port , configutil . Env ( EnvVarDBPort ) , configutil . String ( c . Port ) , configutil . String ( DefaultPort ) ) , configutil . SetString ( & c . Database , configutil . Env ( EnvVarDBName ) , configutil . String ( c . Database ) , configutil . String ( DefaultDatabase ) ) , configutil . SetString ( & c . Schema , configutil . Env ( EnvVarDBSchema ) , configutil . String ( c . Schema ) ) , configutil . SetString ( & c . ApplicationName , configutil . Env ( EnvVarDBApplicationName ) , configutil . String ( c . ApplicationName ) ) , configutil . SetString ( & c . Username , configutil . Env ( EnvVarDBUser ) , configutil . String ( c . Username ) , configutil . Env ( " " ) ) , configutil . SetString ( & c . Password , configutil . Env ( EnvVarDBPassword ) , configutil . String ( c . Password ) ) , configutil . SetDuration ( & c . ConnectTimeout , configutil . Env ( EnvVarDBConnectTimeout ) , configutil . Duration ( c . ConnectTimeout ) , configutil . Duration ( DefaultConnectTimeout ) ) , configutil . SetDuration ( & c . LockTimeout , configutil . Env ( EnvVarDBLockTimeout ) , configutil . Duration ( c . LockTimeout ) ) , configutil . SetDuration ( & c . StatementTimeout , configutil . Env ( EnvVarDBStatementTimeout ) , configutil . Duration ( c . StatementTimeout ) ) , configutil . SetString ( & c . SSLMode , configutil . Env ( EnvVarDBSSLMode ) , configutil . String ( c . SSLMode ) ) , configutil . SetInt ( & c . IdleConnections , configutil . Env ( EnvVarDBIdleConnections ) , configutil . Int ( c . IdleConnections ) , configutil . Int ( DefaultIdleConnections ) ) , configutil . SetInt ( & c . MaxConnections , configutil . Env ( EnvVarDBMaxConnections ) , configutil . Int ( c . MaxConnections ) , configutil . Int ( DefaultMaxConnections ) ) , configutil . SetDuration ( & c . MaxLifetime , configutil . Env ( EnvVarDBMaxLifetime ) , configutil . Duration ( c . MaxLifetime ) , configutil . Duration ( DefaultMaxLifetime ) ) , configutil . SetDuration ( & c . MaxIdleTime , configutil . Env ( EnvVarDBMaxIdleTime ) , configutil . Duration ( c . MaxIdleTime ) , configutil . Duration ( DefaultMaxIdleTime ) ) , configutil . SetInt ( & c . BufferPoolSize , configutil . Env ( EnvVarDBBufferPoolSize ) , configutil . Int ( c . BufferPoolSize ) , configutil . Int ( DefaultBufferPoolSize ) ) , configutil . SetString ( & c . Dialect , configutil . Env ( EnvVarDBDialect ) , configutil . String ( c . Dialect ) , configutil . String ( DialectPostgres ) ) , ) }
Resolve applies any external data sources to the config.
Resolve applies any external data sources to the config .