From 770e9b6b819b495a933b2f467bf768a1b785d5ad Mon Sep 17 00:00:00 2001 From: Derek McGowan Date: Tue, 3 Mar 2015 10:59:50 -0800 Subject: [PATCH] Enable v2 default push When pushing to the official registry, v2 push will be attempted first. If the v2 endpoint is unavailable, a push to v1 will occur. If a v2 push is started and failed, the push operation will fail. Pulling non-official images the official v2 registry is also enabled to pull the newly push images. When a pull of a v2 image fails, v1 will always be attempted. Signed-off-by: Derek McGowan (github: dmcgowan) --- graph/pull.go | 2 +- graph/push.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/graph/pull.go b/graph/pull.go index c01152a248..adad6f3239 100644 --- a/graph/pull.go +++ b/graph/pull.go @@ -74,7 +74,7 @@ func (s *TagStore) CmdPull(job *engine.Job) engine.Status { logName = utils.ImageReference(logName, tag) } - if len(repoInfo.Index.Mirrors) == 0 && ((repoInfo.Official && repoInfo.Index.Official) || endpoint.Version == registry.APIVersion2) { + if len(repoInfo.Index.Mirrors) == 0 && (repoInfo.Index.Official || endpoint.Version == registry.APIVersion2) { if repoInfo.Official { j := job.Eng.Job("trust_update_base") if err = j.Run(); err != nil { diff --git a/graph/push.go b/graph/push.go index 5a4f0d1de9..f86df6d0b3 100644 --- a/graph/push.go +++ b/graph/push.go @@ -539,7 +539,7 @@ func (s *TagStore) CmdPush(job *engine.Job) engine.Status { return job.Errorf("Repository does not exist: %s", repoInfo.LocalName) } - if endpoint.Version == registry.APIVersion2 { + if repoInfo.Index.Official || endpoint.Version == registry.APIVersion2 { err := s.pushV2Repository(r, localRepo, job.Stdout, repoInfo, tag, sf) if err == nil { return engine.StatusOK