Update containerd to 1.4.6 (with fixed paths)
This updates containerd from 1.3.3 to 1.4.6, runc from 1.0.0-rc10 to 1.0.0-rc95 and crictl from 1.18 to 1.21 to align with what was used upstream for Kubernetes 1.21 testing. We could also remove the "no_btrfs" build flag by adding the btrfs-progs-devel RPM to the CentOS mirror. But we don't use btrfs anyway, so this way we make the package a bit smaller. Story: 2008972 Task: 42640 Change-Id: I3dc5465a80209eab34224e9e6e2d5aee49a8266e Signed-off-by: Chris Friesen <chris.friesen@windriver.com> Signed-off-by: Mihnea Saracin <Mihnea.Saracin@windriver.com>
This commit is contained in:
parent
145e0d5756
commit
5935f2a65f
@ -6,8 +6,8 @@ ceph-object-corpus-e32bf8ca3dc6151ebe7f205ba187815bc18e1cef.tar.gz#ceph-object-c
|
|||||||
chartmuseum-0.12.0.tar.gz#chartmuseum#https://github.com/helm/chartmuseum/archive/v0.12.0.tar.gz#https##
|
chartmuseum-0.12.0.tar.gz#chartmuseum#https://github.com/helm/chartmuseum/archive/v0.12.0.tar.gz#https##
|
||||||
!chartmuseum-v0.12.0-amd64#chartmuseum-bin#https://s3.amazonaws.com/chartmuseum/release/v0.12.0/bin/linux/amd64/chartmuseum#https##
|
!chartmuseum-v0.12.0-amd64#chartmuseum-bin#https://s3.amazonaws.com/chartmuseum/release/v0.12.0/bin/linux/amd64/chartmuseum#https##
|
||||||
civetweb-ff2881e2cd5869a71ca91083bad5d12cccd22136.tar.gz#civetweb#https://api.github.com/repos/ceph/civetweb/tarball/ff2881e2cd5869a71ca91083bad5d12cccd22136#https##
|
civetweb-ff2881e2cd5869a71ca91083bad5d12cccd22136.tar.gz#civetweb#https://api.github.com/repos/ceph/civetweb/tarball/ff2881e2cd5869a71ca91083bad5d12cccd22136#https##
|
||||||
containerd-v1.3.3.tar.gz#containerd#https://github.com/containerd/containerd/archive/v1.3.3.tar.gz#https##
|
containerd-1.4.6.tar.gz#containerd#https://github.com/containerd/containerd/archive/refs/tags/v1.4.6.tar.gz#https##
|
||||||
crictl-v1.18.0-linux-amd64.tar.gz#crictl#https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.18.0/crictl-v1.18.0-linux-amd64.tar.gz#https##
|
crictl-v1.21.0-linux-amd64.tar.gz#crictl#https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.21.0/crictl-v1.21.0-linux-amd64.tar.gz#https##
|
||||||
docker-distribution-v2.7.1.tar.gz#docker-distribution-2.7.1#https://github.com/docker/distribution/archive/v2.7.1.tar.gz#http##
|
docker-distribution-v2.7.1.tar.gz#docker-distribution-2.7.1#https://github.com/docker/distribution/archive/v2.7.1.tar.gz#http##
|
||||||
# docker-libtrust-fa567046d9b14f6aa788882a950d69651d230b21.tar.gz#docker-libtrust#https://github.com/docker/libtrust/archive/fa567046d9b14f6aa788882a950d69651d230b21.tar.gz#http##
|
# docker-libtrust-fa567046d9b14f6aa788882a950d69651d230b21.tar.gz#docker-libtrust#https://github.com/docker/libtrust/archive/fa567046d9b14f6aa788882a950d69651d230b21.tar.gz#http##
|
||||||
dpdk-18.11.tar.xz#dpdk-18.11#http://fast.dpdk.org/rel/dpdk-18.11.tar.xz#http##
|
dpdk-18.11.tar.xz#dpdk-18.11#http://fast.dpdk.org/rel/dpdk-18.11.tar.xz#http##
|
||||||
@ -60,7 +60,7 @@ rapidjson-f54b0e47a08782a6131cc3d60f94d038fa6e0a51.tar.gz#rapidjson#https://api.
|
|||||||
Redfishtool-1.1.0.tar.gz#Redfishtool-1.1.0#https://github.com/DMTF/Redfishtool/archive/1.1.0.tar.gz#http##
|
Redfishtool-1.1.0.tar.gz#Redfishtool-1.1.0#https://github.com/DMTF/Redfishtool/archive/1.1.0.tar.gz#http##
|
||||||
requests-toolbelt-0.9.1.tar.gz#requests-toolbelt-0.9.1#https://github.com/requests/toolbelt/archive/0.9.1.tar.gz#http##
|
requests-toolbelt-0.9.1.tar.gz#requests-toolbelt-0.9.1#https://github.com/requests/toolbelt/archive/0.9.1.tar.gz#http##
|
||||||
rocksdb-f4a857da0b720691effc524469f6db895ad00d8e.tar.gz#rocksdb#https://api.github.com/repos/ceph/rocksdb/tarball/f4a857da0b720691effc524469f6db895ad00d8e#https##
|
rocksdb-f4a857da0b720691effc524469f6db895ad00d8e.tar.gz#rocksdb#https://api.github.com/repos/ceph/rocksdb/tarball/f4a857da0b720691effc524469f6db895ad00d8e#https##
|
||||||
runc-1.0.0-rc10.tar.gz#runc#https://github.com/opencontainers/runc/archive/v1.0.0-rc10.tar.gz#https##
|
runc-1.0.0-rc95.tar.gz#runc#https://github.com/opencontainers/runc/archive/v1.0.0-rc95.tar.gz#https##
|
||||||
!rt-setup-2.1-2.el8.src.rpm#rt-setup#https://git.centos.org/rpms/rt-setup#http_script#201aeb6d3d06c556cee369b9833539ecb67ce943#post-dl-script/rt-setup.sh
|
!rt-setup-2.1-2.el8.src.rpm#rt-setup#https://git.centos.org/rpms/rt-setup#http_script#201aeb6d3d06c556cee369b9833539ecb67ce943#post-dl-script/rt-setup.sh
|
||||||
# Sirupsen-logrus-55eb11d21d2a31a3cc93838241d04800f52e823d.tar.gz#Sirupsen-logrus#github.com/Sirupsen/logrus/archive/55eb11d21d2a31a3cc93838241d04800f52e823d.tar.gz#http##
|
# Sirupsen-logrus-55eb11d21d2a31a3cc93838241d04800f52e823d.tar.gz#Sirupsen-logrus#github.com/Sirupsen/logrus/archive/55eb11d21d2a31a3cc93838241d04800f52e823d.tar.gz#http##
|
||||||
spdk-f474ce6930f0a44360e1cc4ecd606d2348481c4c.tar.gz#spdk#https://api.github.com/repos/ceph/spdk/tarball/f474ce6930f0a44360e1cc4ecd606d2348481c4c#https##
|
spdk-f474ce6930f0a44360e1cc4ecd606d2348481c4c.tar.gz#spdk#https://api.github.com/repos/ceph/spdk/tarball/f474ce6930f0a44360e1cc4ecd606d2348481c4c#https##
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
COPY_LIST="${STX_BASE}/downloads/containerd-v1.3.3.tar.gz
|
COPY_LIST="${STX_BASE}/downloads/containerd-1.4.6.tar.gz
|
||||||
${STX_BASE}/downloads/runc-1.0.0-rc10.tar.gz
|
${STX_BASE}/downloads/runc-1.0.0-rc95.tar.gz
|
||||||
${STX_BASE}/downloads/crictl-v1.18.0-linux-amd64.tar.gz
|
${STX_BASE}/downloads/crictl-v1.21.0-linux-amd64.tar.gz
|
||||||
${FILES_BASE}/*"
|
${FILES_BASE}/*"
|
||||||
|
|
||||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||||
|
@ -3,17 +3,16 @@
|
|||||||
# Copyright (C) 2019 Intel Corporation
|
# Copyright (C) 2019 Intel Corporation
|
||||||
#
|
#
|
||||||
Name: containerd
|
Name: containerd
|
||||||
Version: 1.3.3
|
Version: 1.4.6
|
||||||
Release: %{tis_patch_ver}%{?_tis_dist}
|
Release: %{tis_patch_ver}%{?_tis_dist}
|
||||||
Summary: Open and reliable container runtime
|
Summary: Open and reliable container runtime
|
||||||
Group: Kubernetes
|
Group: Kubernetes
|
||||||
License: ASL 2.0
|
License: ASL 2.0
|
||||||
Source0: containerd-v%{version}.tar.gz
|
Source0: containerd-%{version}.tar.gz
|
||||||
Source1: runc-1.0.0-rc10.tar.gz
|
Source1: runc-1.0.0-rc95.tar.gz
|
||||||
Source2: crictl-v1.18.0-linux-amd64.tar.gz
|
Source2: crictl-v1.21.0-linux-amd64.tar.gz
|
||||||
Source3: crictl.yaml
|
Source3: crictl.yaml
|
||||||
Patch5: 0001-customize-containerd-for-StarlingX.patch
|
Patch1: 0001-customize-containerd-for-StarlingX.patch
|
||||||
Patch6: 0002-archive-skip-chmod-IsNotExist-error.patch
|
|
||||||
URL: https://www.starlingx.io
|
URL: https://www.starlingx.io
|
||||||
Vendor: StarlingX
|
Vendor: StarlingX
|
||||||
Packager: StarlingX
|
Packager: StarlingX
|
||||||
@ -53,20 +52,21 @@ low-level storage and network attachments, etc.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q -c -n src -a 1
|
%setup -q -c -n src -a 1
|
||||||
%setup -q -c -T -D -n src -a 2
|
%setup -q -c -T -D -n src -a 2
|
||||||
%patch5 -p1
|
%patch1 -p1
|
||||||
%patch6 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# build containerd
|
# build containerd
|
||||||
|
rm -rf %{CONTAINERD_DIR}
|
||||||
mkdir -p %{CONTAINERD_DIR}
|
mkdir -p %{CONTAINERD_DIR}
|
||||||
mv %{_builddir}/src/containerd/* %{CONTAINERD_DIR}/
|
cp -a %{_builddir}/src/containerd/* %{CONTAINERD_DIR}/
|
||||||
pushd %{CONTAINERD_DIR}
|
pushd %{CONTAINERD_DIR}
|
||||||
make
|
make
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# build runc
|
# build runc
|
||||||
|
rm -rf %{RUNC_DIR}
|
||||||
mkdir -p %{RUNC_DIR}
|
mkdir -p %{RUNC_DIR}
|
||||||
mv %{_builddir}/src/runc/* %{RUNC_DIR}/
|
cp -a %{_builddir}/src/runc/* %{RUNC_DIR}/
|
||||||
pushd %{RUNC_DIR}
|
pushd %{RUNC_DIR}
|
||||||
make
|
make
|
||||||
popd
|
popd
|
||||||
|
@ -1,22 +1,20 @@
|
|||||||
From 311301438b0366004e238cbcc2ca07d38d8a9369 Mon Sep 17 00:00:00 2001
|
From a8466190118c114d5ddeec381bbafa8441d7e638 Mon Sep 17 00:00:00 2001
|
||||||
From: Shuicheng Lin <shuicheng.lin@intel.com>
|
From: Chris Friesen <chris.friesen@windriver.com>
|
||||||
Date: Wed, 25 Sep 2019 20:02:34 +0800
|
Date: Thu, 17 Jun 2021 10:27:09 -0400
|
||||||
Subject: [PATCH] customize containerd for StarlingX
|
Subject: [PATCH] customize containerd for StarlingX
|
||||||
|
|
||||||
1. disable btrfs to pass build.
|
1. disable btrfs to avoid needing to pull in the devel package
|
||||||
2. docker registry in StarlingX 3.0 branch doesn't support POST method
|
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
|
for token and will return 400. Switch to GET method to get token if
|
||||||
StatusCode is 400.
|
StatusCode is 400.
|
||||||
3. hardcode version info due to miss git info in tarball.
|
3. hardcode version info due to miss git info in tarball.
|
||||||
|
|
||||||
Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com>
|
|
||||||
---
|
---
|
||||||
containerd/Makefile | 3 ++-
|
containerd/Makefile | 3 ++-
|
||||||
containerd/remotes/docker/authorizer.go | 3 ++-
|
containerd/remotes/docker/authorizer.go | 3 ++-
|
||||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/containerd/Makefile b/containerd/Makefile
|
diff --git a/containerd/Makefile b/containerd/Makefile
|
||||||
index 37012e8..7ab6a22 100644
|
index c0fecb9..44dd5ad 100644
|
||||||
--- a/containerd/Makefile
|
--- a/containerd/Makefile
|
||||||
+++ b/containerd/Makefile
|
+++ b/containerd/Makefile
|
||||||
@@ -20,7 +20,7 @@ ROOTDIR=$(dir $(abspath $(lastword $(MAKEFILE_LIST))))
|
@@ -20,7 +20,7 @@ ROOTDIR=$(dir $(abspath $(lastword $(MAKEFILE_LIST))))
|
||||||
@ -24,20 +22,20 @@ index 37012e8..7ab6a22 100644
|
|||||||
|
|
||||||
# Used to populate variables in version package.
|
# Used to populate variables in version package.
|
||||||
-VERSION=$(shell git describe --match 'v[0-9]*' --dirty='.m' --always)
|
-VERSION=$(shell git describe --match 'v[0-9]*' --dirty='.m' --always)
|
||||||
+VERSION=v1.3.3
|
+VERSION=v1.4.6
|
||||||
REVISION=$(shell git rev-parse HEAD)$(shell if ! git diff --no-ext-diff --quiet --exit-code; then echo .m; fi)
|
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
|
PACKAGE=github.com/containerd/containerd
|
||||||
|
SHIM_CGO_ENABLED ?= 0
|
||||||
@@ -95,6 +95,7 @@ endif
|
@@ -78,6 +78,7 @@ endif
|
||||||
# Build tags seccomp and apparmor are needed by CRI plugin.
|
# Build tags apparmor and selinux are needed by CRI plugin.
|
||||||
GO_BUILDTAGS ?= seccomp apparmor
|
GO_BUILDTAGS ?= apparmor selinux
|
||||||
GO_BUILDTAGS += ${DEBUG_TAGS}
|
GO_BUILDTAGS += ${DEBUG_TAGS}
|
||||||
+GO_BUILDTAGS += no_btrfs
|
+GO_BUILDTAGS += no_btrfs
|
||||||
GO_TAGS=$(if $(GO_BUILDTAGS),-tags "$(GO_BUILDTAGS)",)
|
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)'
|
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)'
|
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
|
diff --git a/containerd/remotes/docker/authorizer.go b/containerd/remotes/docker/authorizer.go
|
||||||
index 9652d3a..72a6f3a 100644
|
index 001423a..2db8d60 100644
|
||||||
--- a/containerd/remotes/docker/authorizer.go
|
--- a/containerd/remotes/docker/authorizer.go
|
||||||
+++ b/containerd/remotes/docker/authorizer.go
|
+++ b/containerd/remotes/docker/authorizer.go
|
||||||
@@ -366,7 +366,8 @@ func (ah *authHandler) fetchTokenWithOAuth(ctx context.Context, to tokenOptions)
|
@@ -366,7 +366,8 @@ func (ah *authHandler) fetchTokenWithOAuth(ctx context.Context, to tokenOptions)
|
||||||
@ -45,11 +43,11 @@ index 9652d3a..72a6f3a 100644
|
|||||||
// As of September 2017, GCR is known to return 404.
|
// As of September 2017, GCR is known to return 404.
|
||||||
// As of February 2018, JFrog Artifactory is known to return 401.
|
// As of February 2018, JFrog Artifactory is known to return 401.
|
||||||
- if (resp.StatusCode == 405 && to.username != "") || resp.StatusCode == 404 || resp.StatusCode == 401 {
|
- if (resp.StatusCode == 405 && to.username != "") || resp.StatusCode == 404 || resp.StatusCode == 401 {
|
||||||
+ // Current Registry in StarlingX returns 400 for POST /v2/token.
|
+ // Registry in StarlingX 3.0 returns 400 for POST /v2/token. Should check if still applicable.
|
||||||
+ if (resp.StatusCode == 405 && to.username != "") || resp.StatusCode == 404 || resp.StatusCode == 401 || resp.StatusCode == 400 {
|
+ if (resp.StatusCode == 405 && to.username != "") || resp.StatusCode == 404 || resp.StatusCode == 401 || resp.StatusCode == 400 {
|
||||||
return ah.fetchToken(ctx, to)
|
return ah.fetchToken(ctx, to)
|
||||||
} else if resp.StatusCode < 200 || resp.StatusCode >= 400 {
|
} else if resp.StatusCode < 200 || resp.StatusCode >= 400 {
|
||||||
b, _ := ioutil.ReadAll(io.LimitReader(resp.Body, 64000)) // 64KB
|
b, _ := ioutil.ReadAll(io.LimitReader(resp.Body, 64000)) // 64KB
|
||||||
--
|
--
|
||||||
2.16.6
|
2.29.2
|
||||||
|
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
From e2269f2ae0a8bb996b13d98ed6ffbdad7cdafd0f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Mikko Ylinen <mikko.ylinen@intel.com>
|
|
||||||
Date: Mon, 23 Mar 2020 20:52:14 +0200
|
|
||||||
Subject: [PATCH] archive: skip chmod IsNotExist error
|
|
||||||
|
|
||||||
handleLChmod() does not properly check that files behind the handlinks exist
|
|
||||||
before calling os.Chmod(). We've seen base images where this results in
|
|
||||||
"no such file or directory" error from os.Chmod() when unpacking the image.
|
|
||||||
|
|
||||||
To keep the existing logic but fix the problem, this commit simply skips
|
|
||||||
IsNotExist error.
|
|
||||||
|
|
||||||
Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com>
|
|
||||||
---
|
|
||||||
containerd/archive/tar_unix.go | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/containerd/archive/tar_unix.go b/containerd/archive/tar_unix.go
|
|
||||||
index d081351..2134083 100644
|
|
||||||
--- a/containerd/archive/tar_unix.go
|
|
||||||
+++ b/containerd/archive/tar_unix.go
|
|
||||||
@@ -125,7 +125,7 @@ func handleTarTypeBlockCharFifo(hdr *tar.Header, path string) error {
|
|
||||||
func handleLChmod(hdr *tar.Header, path string, hdrInfo os.FileInfo) error {
|
|
||||||
if hdr.Typeflag == tar.TypeLink {
|
|
||||||
if fi, err := os.Lstat(hdr.Linkname); err == nil && (fi.Mode()&os.ModeSymlink == 0) {
|
|
||||||
- if err := os.Chmod(path, hdrInfo.Mode()); err != nil {
|
|
||||||
+ if err := os.Chmod(path, hdrInfo.Mode()); err != nil && !os.IsNotExist(err) {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
--
|
|
||||||
1.8.3.1
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user