From 328d65dcff423b14e76f03ee65445032da31ed42 Mon Sep 17 00:00:00 2001 From: Victor Vieux Date: Sat, 3 May 2014 00:54:52 +0000 Subject: [PATCH] remove fixme Docker-DCO-1.1-Signed-off-by: Victor Vieux (github: vieux) --- builtins/builtins.go | 26 +++++++++++++++----------- docker/docker.go | 4 +++- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/builtins/builtins.go b/builtins/builtins.go index bd3b33d0d3..40d421f154 100644 --- a/builtins/builtins.go +++ b/builtins/builtins.go @@ -8,17 +8,19 @@ import ( "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 -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, @@ -36,7 +38,9 @@ func remote(eng *engine.Engine) { // // 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) } diff --git a/docker/docker.go b/docker/docker.go index 7c366001b7..db33341413 100644 --- a/docker/docker.go +++ b/docker/docker.go @@ -128,7 +128,9 @@ func main() { eng := engine.New() // Load builtins - builtins.Register(eng) + if err := builtins.Register(eng); err != nil { + log.Fatal(err) + } // load the daemon in the background so we can immediately start // the http api so that connections don't fail while the daemon // is booting