cmd: no context + logging for config parsing

This commit is contained in:
Christian Schwarz 2017-09-22 14:02:07 +02:00
parent af2ff08940
commit e87ce3f7cf
5 changed files with 9 additions and 17 deletions

View File

@ -3,7 +3,6 @@ package cmd
import (
"io/ioutil"
"context"
"fmt"
"github.com/mitchellh/mapstructure"
"github.com/pkg/errors"
@ -28,9 +27,7 @@ type ConfigParsingContext struct {
Global *Global
}
func ParseConfig(ctx context.Context, path string) (config *Config, err error) {
log := ctx.Value(contextKeyLog).(Logger)
func ParseConfig(path string) (config *Config, err error) {
if path == "" {
// Try default locations
@ -40,7 +37,7 @@ func ParseConfig(ctx context.Context, path string) (config *Config, err error) {
continue
}
if !stat.Mode().IsRegular() {
log.Printf("warning: file at default location is not a regular file: %s", l)
err = errors.Errorf("file at default location is not a regular file: %s", l)
continue
}
path = l

View File

@ -41,8 +41,7 @@ func doControlPProf(cmd *cobra.Command, args []string) {
os.Exit(1)
}
ctx := context.WithValue(context.Background(), contextKeyLog, log)
conf, err := ParseConfig(ctx, rootArgs.configFile)
conf, err := ParseConfig(rootArgs.configFile)
if err != nil {
log.Printf("error parsing config: %s", err)
die()

View File

@ -39,15 +39,15 @@ func doDaemon(cmd *cobra.Command, args []string) {
log := log.New(os.Stderr, "", log.LUTC|log.Ldate|log.Ltime)
ctx := context.Background()
ctx = context.WithValue(ctx, contextKeyLog, log)
conf, err := ParseConfig(ctx, rootArgs.configFile)
conf, err := ParseConfig(rootArgs.configFile)
if err != nil {
log.Printf("error parsing config: %s", err)
os.Exit(1)
}
ctx := context.Background()
ctx = context.WithValue(ctx, contextKeyLog, log)
d := NewDaemon(conf)
d.Loop(ctx)

View File

@ -4,7 +4,6 @@ import (
"fmt"
"os"
"context"
"github.com/ftrvxmtrx/fd"
"github.com/spf13/cobra"
"io"
@ -31,8 +30,7 @@ func cmdStdinServer(cmd *cobra.Command, args []string) {
os.Exit(1)
}
ctx := context.WithValue(context.Background(), contextKeyLog, log)
conf, err := ParseConfig(ctx, rootArgs.configFile)
conf, err := ParseConfig(rootArgs.configFile)
if err != nil {
log.Printf("error parsing config: %s", err)
die()

View File

@ -66,10 +66,8 @@ func testCmdGlobalInit(cmd *cobra.Command, args []string) {
testCmdGlobal.log = log.New(os.Stdout, "", 0)
ctx := context.WithValue(context.Background(), contextKeyLog, testCmdGlobal.log)
var err error
if testCmdGlobal.conf, err = ParseConfig(ctx, rootArgs.configFile); err != nil {
if testCmdGlobal.conf, err = ParseConfig(rootArgs.configFile); err != nil {
testCmdGlobal.log.Printf("error parsing config file: %s", err)
os.Exit(1)
}