Ver Fonte

move acceptconnections as builtin

Docker-DCO-1.1-Signed-off-by: Victor Vieux <vieux@docker.com> (github: vieux)
Victor Vieux há 11 anos atrás
pai
commit
937f8f2d81
3 ficheiros alterados com 8 adições e 7 exclusões
  1. 3 5
      api/server/server.go
  2. 4 1
      builtins/builtins.go
  3. 1 1
      docker/docker.go

+ 3 - 5
api/server/server.go

@@ -1285,10 +1285,6 @@ func ServeApi(job *engine.Job) engine.Status {
 	)
 	)
 	activationLock = make(chan struct{})
 	activationLock = make(chan struct{})
 
 
-	if err := job.Eng.Register("acceptconnections", AcceptConnections); err != nil {
-		return job.Error(err)
-	}
-
 	for _, protoAddr := range protoAddrs {
 	for _, protoAddr := range protoAddrs {
 		protoAddrParts := strings.SplitN(protoAddr, "://", 2)
 		protoAddrParts := strings.SplitN(protoAddr, "://", 2)
 		if len(protoAddrParts) != 2 {
 		if len(protoAddrParts) != 2 {
@@ -1315,7 +1311,9 @@ func AcceptConnections(job *engine.Job) engine.Status {
 	go systemd.SdNotify("READY=1")
 	go systemd.SdNotify("READY=1")
 
 
 	// close the lock so the listeners start accepting connections
 	// close the lock so the listeners start accepting connections
-	close(activationLock)
+	if activationLock != nil {
+		close(activationLock)
+	}
 
 
 	return engine.StatusOK
 	return engine.StatusOK
 }
 }

+ 4 - 1
builtins/builtins.go

@@ -28,7 +28,10 @@ func Register(eng *engine.Engine) error {
 
 
 // remote: a RESTful api for cross-docker communication
 // remote: a RESTful api for cross-docker communication
 func remote(eng *engine.Engine) error {
 func remote(eng *engine.Engine) error {
-	return eng.Register("serveapi", apiserver.ServeApi)
+	if err := eng.Register("serveapi", apiserver.ServeApi); err != nil {
+		return err
+	}
+	return eng.Register("acceptconnections", apiserver.AcceptConnections)
 }
 }
 
 
 // daemon: a default execution and storage backend for Docker on Linux,
 // daemon: a default execution and storage backend for Docker on Linux,

+ 1 - 1
docker/docker.go

@@ -185,7 +185,7 @@ func main() {
 		job.Setenv("TlsCa", *flCa)
 		job.Setenv("TlsCa", *flCa)
 		job.Setenv("TlsCert", *flCert)
 		job.Setenv("TlsCert", *flCert)
 		job.Setenv("TlsKey", *flKey)
 		job.Setenv("TlsKey", *flKey)
-		job.SetenvBool("BuffferRequests", true)
+		job.SetenvBool("BufferRequests", true)
 		if err := job.Run(); err != nil {
 		if err := job.Run(); err != nil {
 			log.Fatal(err)
 			log.Fatal(err)
 		}
 		}