Implement basic interfaces to write custom routers that can be plugged to the server. Remove server coupling with the daemon. Signed-off-by: David Calavera <david.calavera@gmail.com> Upstream-commit: da982cf5511814b6897244ecaa9c016f8800340a Component: engine
28 lines
638 B
Go
28 lines
638 B
Go
package local
|
|
|
|
import (
|
|
"encoding/json"
|
|
"net/http"
|
|
|
|
"github.com/docker/docker/api/server/httputils"
|
|
"github.com/docker/docker/api/types"
|
|
"github.com/docker/docker/cliconfig"
|
|
"golang.org/x/net/context"
|
|
)
|
|
|
|
func (s *router) postAuth(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
|
|
var config *cliconfig.AuthConfig
|
|
err := json.NewDecoder(r.Body).Decode(&config)
|
|
r.Body.Close()
|
|
if err != nil {
|
|
return err
|
|
}
|
|
status, err := s.daemon.RegistryService.Auth(config)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return httputils.WriteJSON(w, http.StatusOK, &types.AuthResponse{
|
|
Status: status,
|
|
})
|
|
}
|