From c8a06069bcee4214cd03468343aec7fcc4a37143 Mon Sep 17 00:00:00 2001 From: Derek McGowan Date: Mon, 2 Feb 2015 15:54:14 -0800 Subject: [PATCH] Reduce logging when official v2 registry is unavailable On pull treat an unavailable v2 registry as a non-error fallback. On push only show v2 error message in debug mode. Signed-off-by: Derek McGowan (github: dmcgowan) --- graph/pull.go | 6 +++++- graph/push.go | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/graph/pull.go b/graph/pull.go index fd6170b571..1477f2277d 100644 --- a/graph/pull.go +++ b/graph/pull.go @@ -84,7 +84,7 @@ func (s *TagStore) CmdPull(job *engine.Job) engine.Status { log.Errorf("Error logging event 'pull' for %s: %s", logName, err) } return engine.StatusOK - } else if err != registry.ErrDoesNotExist { + } else if err != registry.ErrDoesNotExist && err != ErrV2RegistryUnavailable { log.Errorf("Error from V2 registry: %s", err) } @@ -374,6 +374,10 @@ type downloadInfo struct { func (s *TagStore) pullV2Repository(eng *engine.Engine, r *registry.Session, out io.Writer, repoInfo *registry.RepositoryInfo, tag string, sf *utils.StreamFormatter, parallel bool) error { endpoint, err := r.V2RegistryEndpoint(repoInfo.Index) if err != nil { + if repoInfo.Index.Official { + log.Debugf("Unable to pull from V2 registry, falling back to v1: %s", err) + return ErrV2RegistryUnavailable + } return fmt.Errorf("error getting registry endpoint: %s", err) } auth, err := r.GetV2Authorization(endpoint, repoInfo.RemoteName, true) diff --git a/graph/push.go b/graph/push.go index 6ae2d670d6..f0a81c7662 100644 --- a/graph/push.go +++ b/graph/push.go @@ -284,7 +284,7 @@ func (s *TagStore) pushV2Repository(r *registry.Session, eng *engine.Engine, out endpoint, err := r.V2RegistryEndpoint(repoInfo.Index) if err != nil { if repoInfo.Index.Official { - log.Infof("Unable to push to V2 registry, falling back to v1: %s", err) + log.Debugf("Unable to push to V2 registry, falling back to v1: %s", err) return ErrV2RegistryUnavailable } return fmt.Errorf("error getting registry endpoint: %s", err)