github.com/abhinav/git-pr@v0.6.1-0.20171029234004-54218d68c11b/cmd/git-pr/config.go (about) 1 package main 2 3 import ( 4 "github.com/abhinav/git-pr/cli" 5 "github.com/abhinav/git-pr/pr" 6 "github.com/abhinav/git-pr/service" 7 ) 8 9 // Common config for git-pr commands. 10 type config struct { 11 cli.Config 12 13 Service service.PR 14 } 15 16 type configBuilder func() (config, error) 17 18 func newConfigBuilder(cb cli.ConfigBuilder) configBuilder { 19 return func() (config, error) { 20 cfg, err := cb() 21 if err != nil { 22 return config{}, err 23 } 24 25 return config{ 26 Config: cfg, 27 Service: pr.NewService(pr.ServiceConfig{ 28 GitHub: cfg.GitHub(), 29 Git: cfg.Git(), 30 }), 31 }, nil 32 } 33 }