1
0
Fork 0

Refactor providers and add tests

- Add a `baseProvider` struct with common
- Refactor docker, kv(s) and marathon providers (spliting into small pieces)
- Add unit tests

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
This commit is contained in:
Vincent Demeester 2015-11-13 11:50:32 +01:00
parent 3f905ee7d0
commit 4d485e1b6b
14 changed files with 2319 additions and 438 deletions

View file

@ -13,8 +13,7 @@ import (
// File holds configurations of the File provider.
type File struct {
Watch bool
Filename string
baseProvider
}
// Provide allows the provider to provide configurations to traefik
@ -44,7 +43,10 @@ func (provider *File) Provide(configurationChan chan<- types.ConfigMessage) erro
log.Debug("File event:", event)
configuration := provider.loadFileConfig(file.Name())
if configuration != nil {
configurationChan <- types.ConfigMessage{"file", configuration}
configurationChan <- types.ConfigMessage{
ProviderName: "file",
Configuration: configuration,
}
}
}
case error := <-watcher.Errors:
@ -60,7 +62,10 @@ func (provider *File) Provide(configurationChan chan<- types.ConfigMessage) erro
}
configuration := provider.loadFileConfig(file.Name())
configurationChan <- types.ConfigMessage{"file", configuration}
configurationChan <- types.ConfigMessage{
ProviderName: "file",
Configuration: configuration,
}
return nil
}