aboutsummaryrefslogtreecommitdiffstats
path: root/bridge/launchpad/config.go
diff options
context:
space:
mode:
Diffstat (limited to 'bridge/launchpad/config.go')
-rw-r--r--bridge/launchpad/config.go28
1 files changed, 11 insertions, 17 deletions
diff --git a/bridge/launchpad/config.go b/bridge/launchpad/config.go
index e029fad3..dfff0d3d 100644
--- a/bridge/launchpad/config.go
+++ b/bridge/launchpad/config.go
@@ -13,18 +13,14 @@ import (
var ErrBadProjectURL = errors.New("bad Launchpad project URL")
-func (l *Launchpad) Configure(repo *cache.RepoCache, params core.BridgeParams) (core.Configuration, error) {
- if params.TokenRaw != "" {
- fmt.Println("warning: token params are ineffective for a Launchpad bridge")
- }
- if params.Owner != "" {
- fmt.Println("warning: --owner is ineffective for a Launchpad bridge")
- }
- if params.BaseURL != "" {
- fmt.Println("warning: --base-url is ineffective for a Launchpad bridge")
+func (Launchpad) ValidParams() map[string]interface{} {
+ return map[string]interface{}{
+ "URL": nil,
+ "Project": nil,
}
+}
- conf := make(core.Configuration)
+func (l *Launchpad) Configure(repo *cache.RepoCache, params core.BridgeParams) (core.Configuration, error) {
var err error
var project string
@@ -52,8 +48,9 @@ func (l *Launchpad) Configure(repo *cache.RepoCache, params core.BridgeParams) (
return nil, fmt.Errorf("project doesn't exist")
}
+ conf := make(core.Configuration)
conf[core.ConfigKeyTarget] = target
- conf[keyProject] = project
+ conf[confKeyProject] = project
err = l.ValidateConfig(conf)
if err != nil {
@@ -70,8 +67,8 @@ func (*Launchpad) ValidateConfig(conf core.Configuration) error {
return fmt.Errorf("unexpected target name: %v", v)
}
- if _, ok := conf[keyProject]; !ok {
- return fmt.Errorf("missing %s key", keyProject)
+ if _, ok := conf[confKeyProject]; !ok {
+ return fmt.Errorf("missing %s key", confKeyProject)
}
return nil
@@ -94,10 +91,7 @@ func validateProject(project string) (bool, error) {
// extract project name from url
func splitURL(url string) (string, error) {
- re, err := regexp.Compile(`launchpad\.net[\/:]([^\/]*[a-z]+)`)
- if err != nil {
- panic("regexp compile:" + err.Error())
- }
+ re := regexp.MustCompile(`launchpad\.net[\/:]([^\/]*[a-z]+)`)
res := re.FindStringSubmatch(url)
if res == nil {