diff options
author | Amine Hilaly <hilalyamine@gmail.com> | 2019-08-21 14:24:48 +0200 |
---|---|---|
committer | Amine Hilaly <hilalyamine@gmail.com> | 2019-08-31 23:02:20 +0200 |
commit | 0381400bfda16f910ca87b0258ddda1c1732fbc7 (patch) | |
tree | 54a271f43bafbbc238e2fc26bb6fa67d6403c4af /bridge/github | |
parent | c7792a5d1279a92c8d0caf67a0cf688cc9e32e09 (diff) | |
download | git-bug-0381400bfda16f910ca87b0258ddda1c1732fbc7.tar.gz |
commands: read token from stdin in bridge configuration
bridge: improve bridge config validation
Diffstat (limited to 'bridge/github')
-rw-r--r-- | bridge/github/config.go | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/bridge/github/config.go b/bridge/github/config.go index 45c078f6..f55ea1b4 100644 --- a/bridge/github/config.go +++ b/bridge/github/config.go @@ -37,13 +37,18 @@ var ( ErrBadProjectURL = errors.New("bad project url") ) -func (*Github) Configure(repo repository.RepoCommon, params core.BridgeParams) (core.Configuration, error) { +func (g *Github) Configure(repo repository.RepoCommon, params core.BridgeParams) (core.Configuration, error) { conf := make(core.Configuration) var err error var token string var owner string var project string + if params.Token != "" && + !(params.URL != "" || (params.Project != "" && params.Owner != "")) { + return nil, fmt.Errorf("you must provide a project URL or Owner/Name to configure this bridge with a token") + } + // getting owner and project name if params.Owner != "" && params.Project != "" { // first try to use params if both or project and owner are provided @@ -106,6 +111,11 @@ func (*Github) Configure(repo repository.RepoCommon, params core.BridgeParams) ( conf[keyOwner] = owner conf[keyProject] = project + err = g.ValidateConfig(conf) + if err != nil { + return nil, err + } + return conf, nil } |