aboutsummaryrefslogtreecommitdiffstats
path: root/bridge/core
diff options
context:
space:
mode:
authorMichael Muré <batolettre@gmail.com>2018-09-24 17:21:24 +0200
committerMichael Muré <batolettre@gmail.com>2018-09-24 17:21:24 +0200
commitc86e7231b223d532e26ab5449715c65b6b4e3fde (patch)
tree8d863617aad2dce304b266cd1e493d7ba5c4690f /bridge/core
parent2282cbb595ff5cc603d11645ddc833d70de9ad9d (diff)
downloadgit-bug-c86e7231b223d532e26ab5449715c65b6b4e3fde.tar.gz
bridge: validate config before use
Diffstat (limited to 'bridge/core')
-rw-r--r--bridge/core/bridge.go5
-rw-r--r--bridge/core/interfaces.go3
2 files changed, 8 insertions, 0 deletions
diff --git a/bridge/core/bridge.go b/bridge/core/bridge.go
index d9d688ba..dd1f1337 100644
--- a/bridge/core/bridge.go
+++ b/bridge/core/bridge.go
@@ -200,6 +200,11 @@ func (b Bridge) loadConfig() (Configuration, error) {
result[key] = value
}
+ err = b.impl.ValidateConfig(result)
+ if err != nil {
+ return nil, errors.Wrap(err, "invalid configuration")
+ }
+
return result, nil
}
diff --git a/bridge/core/interfaces.go b/bridge/core/interfaces.go
index 5ead3c8f..79b75606 100644
--- a/bridge/core/interfaces.go
+++ b/bridge/core/interfaces.go
@@ -15,6 +15,9 @@ type BridgeImpl interface {
// for future use
Configure(repo repository.RepoCommon) (Configuration, error)
+ // ValidateConfig check the configuration for error
+ ValidateConfig(conf Configuration) error
+
// Importer return an Importer implementation if the import is supported
Importer() Importer