|
@@ -139,7 +139,6 @@ func InitServer(job *engine.Job) engine.Status {
|
|
|
"events": srv.Events,
|
|
|
"push": srv.ImagePush,
|
|
|
"containers": srv.Containers,
|
|
|
- "auth": srv.Auth,
|
|
|
} {
|
|
|
if err := job.Eng.Register(name, handler); err != nil {
|
|
|
return job.Error(err)
|
|
@@ -148,24 +147,6 @@ func InitServer(job *engine.Job) engine.Status {
|
|
|
return engine.StatusOK
|
|
|
}
|
|
|
|
|
|
-// simpleVersionInfo is a simple implementation of
|
|
|
-// the interface VersionInfo, which is used
|
|
|
-// to provide version information for some product,
|
|
|
-// component, etc. It stores the product name and the version
|
|
|
-// in string and returns them on calls to Name() and Version().
|
|
|
-type simpleVersionInfo struct {
|
|
|
- name string
|
|
|
- version string
|
|
|
-}
|
|
|
-
|
|
|
-func (v *simpleVersionInfo) Name() string {
|
|
|
- return v.name
|
|
|
-}
|
|
|
-
|
|
|
-func (v *simpleVersionInfo) Version() string {
|
|
|
- return v.version
|
|
|
-}
|
|
|
-
|
|
|
// ContainerKill send signal to the container
|
|
|
// If no signal is given (sig 0), then Kill with SIGKILL and wait
|
|
|
// for the container to exit.
|
|
@@ -215,29 +196,6 @@ func (srv *Server) ContainerKill(job *engine.Job) engine.Status {
|
|
|
return engine.StatusOK
|
|
|
}
|
|
|
|
|
|
-func (srv *Server) Auth(job *engine.Job) engine.Status {
|
|
|
- var (
|
|
|
- err error
|
|
|
- authConfig = ®istry.AuthConfig{}
|
|
|
- )
|
|
|
-
|
|
|
- job.GetenvJson("authConfig", authConfig)
|
|
|
- // TODO: this is only done here because auth and registry need to be merged into one pkg
|
|
|
- if addr := authConfig.ServerAddress; addr != "" && addr != registry.IndexServerAddress() {
|
|
|
- addr, err = registry.ExpandAndVerifyRegistryUrl(addr)
|
|
|
- if err != nil {
|
|
|
- return job.Error(err)
|
|
|
- }
|
|
|
- authConfig.ServerAddress = addr
|
|
|
- }
|
|
|
- status, err := registry.Login(authConfig, srv.HTTPRequestFactory(nil))
|
|
|
- if err != nil {
|
|
|
- return job.Error(err)
|
|
|
- }
|
|
|
- job.Printf("%s\n", status)
|
|
|
- return engine.StatusOK
|
|
|
-}
|
|
|
-
|
|
|
func (srv *Server) Events(job *engine.Job) engine.Status {
|
|
|
if len(job.Args) != 1 {
|
|
|
return job.Errorf("Usage: %s FROM", job.Name)
|
|
@@ -654,7 +612,7 @@ func (srv *Server) ImagesSearch(job *engine.Job) engine.Status {
|
|
|
job.GetenvJson("authConfig", authConfig)
|
|
|
job.GetenvJson("metaHeaders", metaHeaders)
|
|
|
|
|
|
- r, err := registry.NewRegistry(authConfig, srv.HTTPRequestFactory(metaHeaders), registry.IndexServerAddress())
|
|
|
+ r, err := registry.NewRegistry(authConfig, registry.HTTPRequestFactory(metaHeaders), registry.IndexServerAddress())
|
|
|
if err != nil {
|
|
|
return job.Error(err)
|
|
|
}
|
|
@@ -1457,7 +1415,7 @@ func (srv *Server) ImagePull(job *engine.Job) engine.Status {
|
|
|
return job.Error(err)
|
|
|
}
|
|
|
|
|
|
- r, err := registry.NewRegistry(&authConfig, srv.HTTPRequestFactory(metaHeaders), endpoint)
|
|
|
+ r, err := registry.NewRegistry(&authConfig, registry.HTTPRequestFactory(metaHeaders), endpoint)
|
|
|
if err != nil {
|
|
|
return job.Error(err)
|
|
|
}
|
|
@@ -1680,7 +1638,7 @@ func (srv *Server) ImagePush(job *engine.Job) engine.Status {
|
|
|
}
|
|
|
|
|
|
img, err := srv.daemon.Graph().Get(localName)
|
|
|
- r, err2 := registry.NewRegistry(authConfig, srv.HTTPRequestFactory(metaHeaders), endpoint)
|
|
|
+ r, err2 := registry.NewRegistry(authConfig, registry.HTTPRequestFactory(metaHeaders), endpoint)
|
|
|
if err2 != nil {
|
|
|
return job.Error(err2)
|
|
|
}
|
|
@@ -2558,24 +2516,6 @@ func NewServer(eng *engine.Engine, config *daemonconfig.Config) (*Server, error)
|
|
|
return srv, nil
|
|
|
}
|
|
|
|
|
|
-func (srv *Server) HTTPRequestFactory(metaHeaders map[string][]string) *utils.HTTPRequestFactory {
|
|
|
- httpVersion := make([]utils.VersionInfo, 0, 4)
|
|
|
- httpVersion = append(httpVersion, &simpleVersionInfo{"docker", dockerversion.VERSION})
|
|
|
- httpVersion = append(httpVersion, &simpleVersionInfo{"go", goruntime.Version()})
|
|
|
- httpVersion = append(httpVersion, &simpleVersionInfo{"git-commit", dockerversion.GITCOMMIT})
|
|
|
- if kernelVersion, err := utils.GetKernelVersion(); err == nil {
|
|
|
- httpVersion = append(httpVersion, &simpleVersionInfo{"kernel", kernelVersion.String()})
|
|
|
- }
|
|
|
- httpVersion = append(httpVersion, &simpleVersionInfo{"os", goruntime.GOOS})
|
|
|
- httpVersion = append(httpVersion, &simpleVersionInfo{"arch", goruntime.GOARCH})
|
|
|
- ud := utils.NewHTTPUserAgentDecorator(httpVersion...)
|
|
|
- md := &utils.HTTPMetaHeadersDecorator{
|
|
|
- Headers: metaHeaders,
|
|
|
- }
|
|
|
- factory := utils.NewHTTPRequestFactory(ud, md)
|
|
|
- return factory
|
|
|
-}
|
|
|
-
|
|
|
func (srv *Server) LogEvent(action, id, from string) *utils.JSONMessage {
|
|
|
now := time.Now().UTC().Unix()
|
|
|
jm := utils.JSONMessage{Status: action, ID: id, From: from, Time: now}
|