mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Don't hard code true for auth job
Signed-off-by: Michael Crosby <michael@docker.com> Conflicts: registry/service.go
This commit is contained in:
parent
c66196a9dc
commit
f43e77fc12
3 changed files with 20 additions and 13 deletions
|
@ -10,7 +10,6 @@ import (
|
||||||
"github.com/docker/docker/engine"
|
"github.com/docker/docker/engine"
|
||||||
"github.com/docker/docker/events"
|
"github.com/docker/docker/events"
|
||||||
"github.com/docker/docker/pkg/parsers/kernel"
|
"github.com/docker/docker/pkg/parsers/kernel"
|
||||||
"github.com/docker/docker/registry"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Register(eng *engine.Engine) error {
|
func Register(eng *engine.Engine) error {
|
||||||
|
@ -26,7 +25,8 @@ func Register(eng *engine.Engine) error {
|
||||||
if err := eng.Register("version", dockerVersion); err != nil {
|
if err := eng.Register("version", dockerVersion); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return registry.NewService().Install(eng)
|
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// remote: a RESTful api for cross-docker communication
|
// remote: a RESTful api for cross-docker communication
|
||||||
|
|
|
@ -14,6 +14,7 @@ import (
|
||||||
"github.com/docker/docker/engine"
|
"github.com/docker/docker/engine"
|
||||||
flag "github.com/docker/docker/pkg/mflag"
|
flag "github.com/docker/docker/pkg/mflag"
|
||||||
"github.com/docker/docker/pkg/signal"
|
"github.com/docker/docker/pkg/signal"
|
||||||
|
"github.com/docker/docker/registry"
|
||||||
)
|
)
|
||||||
|
|
||||||
const CanDaemon = true
|
const CanDaemon = true
|
||||||
|
@ -33,11 +34,17 @@ func mainDaemon() {
|
||||||
}
|
}
|
||||||
eng := engine.New()
|
eng := engine.New()
|
||||||
signal.Trap(eng.Shutdown)
|
signal.Trap(eng.Shutdown)
|
||||||
|
|
||||||
// Load builtins
|
// Load builtins
|
||||||
if err := builtins.Register(eng); err != nil {
|
if err := builtins.Register(eng); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// load registry service
|
||||||
|
if err := registry.NewService(daemonCfg.InsecureRegistries).Install(eng); err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
// load the daemon in the background so we can immediately start
|
// load the daemon in the background so we can immediately start
|
||||||
// the http api so that connections don't fail while the daemon
|
// the http api so that connections don't fail while the daemon
|
||||||
// is booting
|
// is booting
|
||||||
|
|
|
@ -13,12 +13,15 @@ import (
|
||||||
// 'pull': Download images from any registry (TODO)
|
// 'pull': Download images from any registry (TODO)
|
||||||
// 'push': Upload images to any registry (TODO)
|
// 'push': Upload images to any registry (TODO)
|
||||||
type Service struct {
|
type Service struct {
|
||||||
|
insecureRegistries []string
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewService returns a new instance of Service ready to be
|
// NewService returns a new instance of Service ready to be
|
||||||
// installed no an engine.
|
// installed no an engine.
|
||||||
func NewService() *Service {
|
func NewService(insecureRegistries []string) *Service {
|
||||||
return &Service{}
|
return &Service{
|
||||||
|
insecureRegistries: insecureRegistries,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Install installs registry capabilities to eng.
|
// Install installs registry capabilities to eng.
|
||||||
|
@ -32,15 +35,12 @@ func (s *Service) Install(eng *engine.Engine) error {
|
||||||
// and returns OK if authentication was sucessful.
|
// and returns OK if authentication was sucessful.
|
||||||
// It can be used to verify the validity of a client's credentials.
|
// It can be used to verify the validity of a client's credentials.
|
||||||
func (s *Service) Auth(job *engine.Job) engine.Status {
|
func (s *Service) Auth(job *engine.Job) engine.Status {
|
||||||
var (
|
var authConfig = new(AuthConfig)
|
||||||
err error
|
|
||||||
authConfig = &AuthConfig{}
|
|
||||||
)
|
|
||||||
|
|
||||||
job.GetenvJson("authConfig", 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 != IndexServerAddress() {
|
if addr := authConfig.ServerAddress; addr != "" && addr != IndexServerAddress() {
|
||||||
endpoint, err := NewEndpoint(addr, true)
|
endpoint, err := NewEndpoint(addr, IsSecure(addr, s.insecureRegistries))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return job.Error(err)
|
return job.Error(err)
|
||||||
}
|
}
|
||||||
|
@ -49,11 +49,11 @@ func (s *Service) Auth(job *engine.Job) engine.Status {
|
||||||
}
|
}
|
||||||
authConfig.ServerAddress = endpoint.String()
|
authConfig.ServerAddress = endpoint.String()
|
||||||
}
|
}
|
||||||
status, err := Login(authConfig, HTTPRequestFactory(nil))
|
|
||||||
if err != nil {
|
if _, err := Login(authConfig, HTTPRequestFactory(nil)); err != nil {
|
||||||
return job.Error(err)
|
return job.Error(err)
|
||||||
}
|
}
|
||||||
job.Printf("%s\n", status)
|
|
||||||
return engine.StatusOK
|
return engine.StatusOK
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue