|
@@ -8,17 +8,19 @@ import (
|
|
"github.com/dotcloud/docker/server"
|
|
"github.com/dotcloud/docker/server"
|
|
)
|
|
)
|
|
|
|
|
|
-func Register(eng *engine.Engine) {
|
|
|
|
- daemon(eng)
|
|
|
|
- remote(eng)
|
|
|
|
- // FIXME: engine.Installer.Install can fail. These errors
|
|
|
|
- // should be passed up.
|
|
|
|
- registry.NewService().Install(eng)
|
|
|
|
|
|
+func Register(eng *engine.Engine) error {
|
|
|
|
+ if err := daemon(eng); err != nil {
|
|
|
|
+ return err
|
|
|
|
+ }
|
|
|
|
+ if err := remote(eng); err != nil {
|
|
|
|
+ return err
|
|
|
|
+ }
|
|
|
|
+ return registry.NewService().Install(eng)
|
|
}
|
|
}
|
|
|
|
|
|
// remote: a RESTful api for cross-docker communication
|
|
// remote: a RESTful api for cross-docker communication
|
|
-func remote(eng *engine.Engine) {
|
|
|
|
- eng.Register("serveapi", api.ServeApi)
|
|
|
|
|
|
+func remote(eng *engine.Engine) error {
|
|
|
|
+ return eng.Register("serveapi", api.ServeApi)
|
|
}
|
|
}
|
|
|
|
|
|
// daemon: a default execution and storage backend for Docker on Linux,
|
|
// daemon: a default execution and storage backend for Docker on Linux,
|
|
@@ -36,7 +38,9 @@ func remote(eng *engine.Engine) {
|
|
//
|
|
//
|
|
// These components should be broken off into plugins of their own.
|
|
// These components should be broken off into plugins of their own.
|
|
//
|
|
//
|
|
-func daemon(eng *engine.Engine) {
|
|
|
|
- eng.Register("initserver", server.InitServer)
|
|
|
|
- eng.Register("init_networkdriver", bridge.InitDriver)
|
|
|
|
|
|
+func daemon(eng *engine.Engine) error {
|
|
|
|
+ if err := eng.Register("initserver", server.InitServer); err != nil {
|
|
|
|
+ return err
|
|
|
|
+ }
|
|
|
|
+ return eng.Register("init_networkdriver", bridge.InitDriver)
|
|
}
|
|
}
|