883860da4e
This reverts commit 4c682e9c43
.
Change-Id: I18950de2f06e42c45b19f0f8d5cca058216c68f6
56 lines
2.7 KiB
Diff
56 lines
2.7 KiB
Diff
From 311301438b0366004e238cbcc2ca07d38d8a9369 Mon Sep 17 00:00:00 2001
|
|
From: Shuicheng Lin <shuicheng.lin@intel.com>
|
|
Date: Wed, 25 Sep 2019 20:02:34 +0800
|
|
Subject: [PATCH] customize containerd for StarlingX
|
|
|
|
1. disable btrfs to pass build.
|
|
2. docker registry in StarlingX 3.0 branch doesn't support POST method
|
|
for token and will return 400. Switch to GET method to get token if
|
|
StatusCode is 400.
|
|
3. hardcode version info due to miss git info in tarball.
|
|
|
|
Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com>
|
|
---
|
|
containerd/Makefile | 3 ++-
|
|
containerd/remotes/docker/authorizer.go | 3 ++-
|
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/containerd/Makefile b/containerd/Makefile
|
|
index 37012e8..7ab6a22 100644
|
|
--- a/containerd/Makefile
|
|
+++ b/containerd/Makefile
|
|
@@ -20,7 +20,7 @@ ROOTDIR=$(dir $(abspath $(lastword $(MAKEFILE_LIST))))
|
|
DESTDIR ?= /usr/local
|
|
|
|
# Used to populate variables in version package.
|
|
-VERSION=$(shell git describe --match 'v[0-9]*' --dirty='.m' --always)
|
|
+VERSION=v1.3.3
|
|
REVISION=$(shell git rev-parse HEAD)$(shell if ! git diff --no-ext-diff --quiet --exit-code; then echo .m; fi)
|
|
PACKAGE=github.com/containerd/containerd
|
|
|
|
@@ -95,6 +95,7 @@ endif
|
|
# Build tags seccomp and apparmor are needed by CRI plugin.
|
|
GO_BUILDTAGS ?= seccomp apparmor
|
|
GO_BUILDTAGS += ${DEBUG_TAGS}
|
|
+GO_BUILDTAGS += no_btrfs
|
|
GO_TAGS=$(if $(GO_BUILDTAGS),-tags "$(GO_BUILDTAGS)",)
|
|
GO_LDFLAGS=-ldflags '-X $(PKG)/version.Version=$(VERSION) -X $(PKG)/version.Revision=$(REVISION) -X $(PKG)/version.Package=$(PACKAGE) $(EXTRA_LDFLAGS)'
|
|
SHIM_GO_LDFLAGS=-ldflags '-X $(PKG)/version.Version=$(VERSION) -X $(PKG)/version.Revision=$(REVISION) -X $(PKG)/version.Package=$(PACKAGE) -extldflags "-static" $(EXTRA_LDFLAGS)'
|
|
diff --git a/containerd/remotes/docker/authorizer.go b/containerd/remotes/docker/authorizer.go
|
|
index 9652d3a..72a6f3a 100644
|
|
--- a/containerd/remotes/docker/authorizer.go
|
|
+++ b/containerd/remotes/docker/authorizer.go
|
|
@@ -366,7 +366,8 @@ func (ah *authHandler) fetchTokenWithOAuth(ctx context.Context, to tokenOptions)
|
|
// Registries without support for POST may return 404 for POST /v2/token.
|
|
// As of September 2017, GCR is known to return 404.
|
|
// As of February 2018, JFrog Artifactory is known to return 401.
|
|
- if (resp.StatusCode == 405 && to.username != "") || resp.StatusCode == 404 || resp.StatusCode == 401 {
|
|
+ // Current Registry in StarlingX returns 400 for POST /v2/token.
|
|
+ if (resp.StatusCode == 405 && to.username != "") || resp.StatusCode == 404 || resp.StatusCode == 401 || resp.StatusCode == 400 {
|
|
return ah.fetchToken(ctx, to)
|
|
} else if resp.StatusCode < 200 || resp.StatusCode >= 400 {
|
|
b, _ := ioutil.ReadAll(io.LimitReader(resp.Body, 64000)) // 64KB
|
|
--
|
|
2.16.6
|
|
|