driver: start implemeting bootstrap for docker

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
This commit is contained in:
Tonis Tiigi
2019-03-25 19:01:31 -07:00
parent 49f67b7e96
commit f302881c0d
8 changed files with 144 additions and 19 deletions

View File

@ -37,7 +37,7 @@ func Register(f Factory) {
drivers[f.Name()] = f
}
func GetDefaultDriver() (Factory, error) {
func GetDefaultFactory() (Factory, error) {
if len(drivers) == 0 {
return nil, errors.Errorf("no drivers available")
}
@ -54,3 +54,17 @@ func GetDefaultDriver() (Factory, error) {
})
return dd[0].f, nil
}
func GetDriver(ctx context.Context, name string, f Factory, api dockerclient.APIClient) (Driver, error) {
if f == nil {
var err error
f, err = GetDefaultFactory()
if err != nil {
return nil, err
}
}
return f.New(ctx, InitConfig{
Name: name,
DockerAPI: api,
})
}