@@ -261,7 +261,7 @@ func (p Parser) Parse(raw Raw) (Config, error) {
261
261
case TimeFormat12H :
262
262
timeHourFormat = helpers .TimeHourFormat12
263
263
case TimeFormat24H :
264
- timeHourFormat = helpers .TimeHourFormat12
264
+ timeHourFormat = helpers .TimeHourFormat24
265
265
default :
266
266
return Config {}, fmt .Errorf ("invalid time format: %s" , raw .TimeFormat )
267
267
}
@@ -306,42 +306,43 @@ func NewParser(flags *flag.FlagSet) (Parser, error) {
306
306
var k = koanf .New ("." )
307
307
308
308
// Load defaults
309
- k .Load (structs .Provider (RawDefault , "koanf" ), nil )
310
-
311
- // Load YAML
312
- var configFile string
313
- if p := flags .Lookup ("config" ); p != nil && p .Value .String () != "" {
314
- // Config file from flag
315
- configFile = p .Value .String ()
316
- } else {
317
- // Config file from default
318
- var err error
319
- configFile , err = resolve ([]string {
320
- "config.yaml" ,
321
- "config.yml" ,
322
- ".smtpbridge.yaml" ,
323
- ".smtpbridge.yml" ,
324
- "~/.smtpbridge.yaml" ,
325
- "~/.smtpbridge.yml" ,
326
- "/etc/smtpbridge.yaml" ,
327
- "/etc/smtpbridge.yml" ,
328
- })
329
- if err != nil {
330
- return Parser {}, err
309
+ k .Load (structs .ProviderWithDelim (RawDefault , "koanf" , "." ), nil )
310
+
311
+ if envConfig := os .Getenv ("SMTPBRIDGE_CONFIG_YAML" ); envConfig == "" {
312
+ // Load YAML file
313
+ var configFile string
314
+ if p := flags .Lookup ("config" ); p != nil && p .Value .String () != "" {
315
+ // Config file from flag
316
+ configFile = p .Value .String ()
317
+ } else {
318
+ // Config file from default
319
+ var err error
320
+ configFile , err = resolve ([]string {
321
+ "config.yaml" ,
322
+ "config.yml" ,
323
+ ".smtpbridge.yaml" ,
324
+ ".smtpbridge.yml" ,
325
+ "~/.smtpbridge.yaml" ,
326
+ "~/.smtpbridge.yml" ,
327
+ "/etc/smtpbridge.yaml" ,
328
+ "/etc/smtpbridge.yml" ,
329
+ })
330
+ if err != nil {
331
+ return Parser {}, err
332
+ }
331
333
}
332
- }
333
- if configFile != "" {
334
- log .Info ().Str ("path" , configFile ).Msg ("Reading config from file" )
335
- if err := k .Load (file .Provider (configFile ), yaml .Parser ()); err != nil {
336
- return Parser {}, err
334
+ if configFile != "" {
335
+ log .Info ().Str ("path" , configFile ).Msg ("Reading config from file" )
336
+ if err := k .Load (file .Provider (configFile ), yaml .Parser ()); err != nil {
337
+ return Parser {}, err
338
+ }
339
+ }
340
+ } else {
341
+ // Load YAML env
342
+ if envConfig != "" {
343
+ log .Info ().Str ("env" , "SMTPBRIDGE_CONFIG_YAML" ).Msgf ("Reading config from environment" )
344
+ k .Load (rawbytes .Provider ([]byte (envConfig )), yaml .Parser ())
337
345
}
338
- }
339
-
340
- // Load env
341
- envConfig := os .Getenv ("SMTPBRIDGE_CONFIG_YAML" )
342
- if envConfig != "" {
343
- log .Info ().Str ("env" , "SMTPBRIDGE_CONFIG_YAML" ).Msgf ("Reading config from environment" )
344
- k .Load (rawbytes .Provider ([]byte (envConfig )), yaml .Parser ())
345
346
}
346
347
347
348
// Load flag
0 commit comments