containerd 1.2.8
Welcome to the v1.2.8 release of containerd!
The eighth patch release for containerd 1.2 provides a series of bug fixes, many
of them backported from the master branch to correct several known issues around
manifest lists/indexes and pulling multi-arch, CVEs related to Golang/http2,
fd leakage in the Golang runtime, a shim hang, process and image environment config
handling, and finally mount cleanup related to Cloud Foundry's use of containerd
with rootless containers. A set of bug fixes/updates for the CRI plugin are also
included; details for the CRI issues and fixes are shown below.
Notable Updates
- Skip rootfs unmount when no mounts are provided. Fixed by PR #3148 {cherry-picked as PR #3402}.
- Close inherited socket file descriptor. Fixed in PR #3359 {cherry-picked as PR #3364}.
- Call CloseIO when stdin closes in ctr. Fixed by PR #3462 {cherry-picked as PR 3490}.
- Several multi-arch image fixes, including: ARM platform matching, selecting the proper manifest, and limited to best matched manifest to solve discrepancies with multi-arch image operations. Backported PR #3270 as PR #3404, PR #3484 as PR #3512, and added PR #3421.
- Override image's environment config with process config; including backport of fixes and tests for merging/replacing env variables; fix in PR #3542, backported via PR #3546 which included a backport of PR #2887. Additional fix to logic for override re: image
$PATHcherry-picked in PR #3565. - Shim hang fix in master via PR #3540 backported to
release/1.2via PR #3561. - Updated Golang version to 1.12.9 patch release:
- Resolves CVE-2019-9512 and CVE-2019-9514 from the 1.12.8 security release. Originally fixed via PR #3531 which lists the details of the Golang CVEs, backported via PR #3532 to
release/1.2. - Resolves fd leaks reported via golang/go#33405 and resolved in the 1.12.9 patch release, updated via PR #3544. This fd leak bug was initially reported in containerd issue #3481.
- Resolves CVE-2019-9512 and CVE-2019-9514 from the 1.12.8 security release. Originally fixed via PR #3531 which lists the details of the Golang CVEs, backported via PR #3532 to
- CRI: Fix a bug that if an image is deleted immediately after being pulled, the image may still exist after the deletion finishes successfully. (containerd/cri#1161)
- CRI: Fix a bug that
runcandcrictlbinaries shipped in https://storage.googleapis.com/cri-containerd-release are versioned with the containerd version. (containerd/cri#1193) - CRI: Fix a bug that the images become unusable if 2 images have the same image ID and RepoTag, but different RepoDigests. (#3401)
- CRI: Fix ProcMount support (containerd/cri#1216). NOTE: To use containerd 1.2.8+ with Kubernetes 1.11 or below, you MUST set
disable_proc_mount=truein the cri plugin config. (containerd/cri#1208) - CRI: Fix a bug that containerd tries to connect image registry with
httpseven if thehttpendpoint is configured. (containerd/cri#1201)
Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.
Contributors
- Michael Crosby
- Lantao Liu
- Sebastiaan van Stijn
- Wei Fu
- Mike Brown
- Phil Estes
- Shukui Yang
- Derek McGowan
- Akihiro Suda
- Andrey Kolomentsev
- Darren Shepherd
- Eric Ren
- Georgi Sabev
- Jaime Caamaño Ruiz
- Jintao Zhang
- Justin Terry
- Yangyang
Changes
a4bc1d432aMerge pull request #3534 from estesp/prep-v1.2.85e060c4246Merge pull request #3565 from estesp/cp-3551a9ba2e681cPrepare v1.2.8 point release1c309d804dRemove the process default ENVde8fa9b614Merge pull request #3561 from keloyang/shim-hung-1.2f1c661f787Change bufferSize back to 32d161ab6327Try to preserve exit event order7e2864b8f0Add retry and non-blocking send for exit eventsdbf9a50175Unifi reaper logic into package9b5b55b142Fix shim hungb21e4f466eMerge pull request #3546 from estesp/cp-3542c8d75ca5eddo not mutate defaults in replaceOrAppendEnvValues6c6b7e2976bugfix: override image.Env with process.Env, rather than be contrarya0526340f7Merge pull request #3544 from thaJeztah/1.2_backport_bump_golang_1.12.917690cc2feAppVeyor: update to go 1.12.9c5bca64cd1Merge pull request #3538 from thaJeztah/1.2_revert_bump_libseccomp8c0ec3c35eRevert "bump libseccomp-golang v0.9.1"eed8acd47cMerge pull request #3535 from Random-Liu/update-cri-release-1.2941dd9f2c3Update cri to d928a4dd337fd2a992dbe72380eff2063c3ec62f.e70728b659Merge pull request #3532 from thaJeztah/1.2_backport_bump_golang_1.12.84097217bbdAppVeyor: update to go 1.12.8 (CVE-2019-9512, CVE-2019-9514)bb238e05a1AppVeyor: update to go 1.12.7150468fcc7contrib: Dockerfile: bump go 1.12c675ea30c4contrib: Dockerfile: add a base stage59134eb991contrib: Dockerfile: reformat, and use --no-install-recommendsad3bfc9e32contrib: Dockerfile: use build-arg for go-version3d8ca756abMerge pull request #3527 from estesp/cp-2828-isolated11a25c8a62Move ctr run --isolation to Windows only99ba29cbd5Merge pull request #3512 from fuweid/cp-348447e5d5fd44Limit multiple platform manifests to one for size check6e4353d6a9Merge pull request #3490 from estesp/cp3462116e770a8aCall CloseIO when stdin closes in ctrbecb04a793Merge pull request #3437 from fuweid/cb-3025c8bbceb4edmetadata: merge snapshot labels with metadata's labels4579a892beMerge pull request #3428 from AkihiroSuda/fix-task-start-1.2227ebf36a9runtime/v1/linux: ignore ErrCgroupDeleted in Task.Start18100a35ebMerge pull request #3421 from fuweid/cherry-pick-manifestd528a69a42images: only fetch the best matched manifest infoef9f3a5316Merge pull request #3413 from crosbymichael/snapshot-test46920a60fatest/snapshots: umount before committing snapshote12b7078f2Merge pull request #3404 from crosbymichael/cherry-arm452e9c532bImprove ARM platform matching682f6e730fMerge pull request #3402 from masters-of-cats/release/1.2b207b33292Skip rootfs unmount when no mounts are providedfd103cb716Merge pull request #3376 from thaJeztah/1.2_backport_bump_libseccompd8f4da4fefbump libseccomp-golang v0.9.1524eb23af6Merge pull request #3364 from keloyang/close-socket-fd-1.2ed35eec321Close the inherited socket fd5ca28c1d0fMerge pull request #3342 from thaJeztah/1.2_backport_travis_and_golang4b2dc65cf2Merge pull request #3346 from crosbymichael/cherry-diff-panicb2d260c4f4Ensure labels is not nil in differ1b2230eb33AppVeyor: Bump golang 1.12.6d0b89fd57eAdd travis_wait to prevent vndr timing outaab8e9d135Update to Golang 1.12, and prepare for ppc64le56f8ef8cedUpdate travis to xenial worker
Changes from containerd/cri
d928a4ddMerge pull request #1230 from Random-Liu/fix-https-release-1.2ecd021d4Fix unnecessary https trial in release/1.2.789b26f3Merge pull request #1216 from Random-Liu/cherrypick-1209-release-1.2c54f640fAdd test for disable_proc_mount.21343bf7Fix proc mount support.106dfbdeMerge pull request #1210 from Random-Liu/cherrypick-1202-release-1.2dcdfa8f2Do not cache image handler.7fb9c17cMerge pull request #1191 from thaJeztah/1.2_backport_bump_libseccompf68a182bMerge pull request #1193 from thaJeztah/1.2_backport_fix_version0c86149eFix runc and critools version in release.8738fd62bump libseccomp-golang v0.9.10bb5f8edMerge pull request #1186 from mikebrow/revert-1179-update-containerd-release-1.2489dd6afRevert "[release/1.2] Update containerd to v1.2.7"38ab32bfMerge pull request #1179 from Random-Liu/update-containerd-release-1.230e14d9dUpdate containerd to v1.2.7ec3609dfMerge pull request #1167 from Random-Liu/cherrypick-#1162-release-1.2cb317ddfAdd cri managed image label when pulling the image.
Dependency Changes
Previous release can be found at v1.2.7
- github.com/containerd/cri 49ca74043390bc2eeea7a45a46005fbec58a3f88 -> d928a4dd337fd2a992dbe72380eff2063c3ec62f