Skip to content

Commit

Permalink
Merge tag 'v1.6.22' into release-4.13
Browse files Browse the repository at this point in the history
containerd 1.6.22

Welcome to the v1.6.22 release of containerd!

The twenty-second patch release for containerd 1.6 contains various fixes and updates.

* **RunC: Update runc binary to v1.1.8** ([containerd#8842](containerd#8842))
* **CRI: Fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty** ([containerd#8823](containerd#8823))
* **CRI: Write generated CNI config atomically** ([containerd#8826](containerd#8826))
* **Fix concurrent writes for `UpdateContainerStats`** ([containerd#8819](containerd#8819))
* **Make checkContainerTimestamps less strict on Windows** ([containerd#8827](containerd#8827))
* **Port-Forward: Correctly handle known errors** ([containerd#8805](containerd#8805))
* **Resolve docker.NewResolver race condition** ([containerd#8800](containerd#8800))
* **SecComp: Always allow `name_to_handle_at`** ([containerd#8754](containerd#8754))
* **Adding support to run hcsshim from local clone** ([containerd#8713](containerd#8713))
* **Pinned image support** ([containerd#8720](containerd#8720))
* **Runtime/V2/RunC: Handle early exits w/o big locks** ([containerd#8695](containerd#8695))
* **CRITool: Move up to CRI-TOOLS v1.27.0** ([containerd#7997](containerd#7997))
* **Fix cpu architecture detection issue on emulated ARM platform** ([containerd#8533](containerd#8533))
* **Task: Don't `close()` io before `cancel()`** ([containerd#8659](containerd#8659))
* **Fix panic when remote differ returns empty result** ([containerd#8640](containerd#8640))
* **Plugins: Notify readiness when registered plugins are ready** ([containerd#8583](containerd#8583))
* **Unwrap io errors in server connection receive error handling** ([ttrpc#143](containerd/ttrpc#143))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Akihiro Suda
* Phil Estes
* Sebastiaan van Stijn
* Derek McGowan
* Wei Fu
* Kazuyoshi Kato
* Austin Vazquez
* Samuel Karp
* dependabot[bot]
* Jin Dong
* Maksym Pavlenko
* Mike Brown
* Shingo Omura
* Akhil Mohan
* Bjorn Neergaard
* Laura Brehm
* Tony Fang
* Aditi Sharma
* Andrey Epifanov
* Benjamin Wang
* Brian Goff
* Cory Snider
* Daniel Canter
* Daniel Lenar
* Henry Wang
* Luca Comellini
* Madhav Jivrajani
* Mahamed Ali
* Mohit Sharma
* Oliver Radwell
* Priyanka Saggu
* Qasim Sarfraz
* Takumasa Sakao
* wangxiang
* zounengren

<details><summary>95 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.22 ([containerd#8863](containerd#8863))
  * [`0770a4601`](containerd@0770a46) [release/1.6] Add release notes for v1.6.22
* [release/1.6] migrate to community owned bucket for node e2e tests ([containerd#8876](containerd#8876))
  * [`512a672af`](containerd@512a672) migrate to community owned bucket
* [release/1.6] cri: memory.memsw.limit_in_bytes: no such file or directory ([containerd#8870](containerd#8870))
  * [`b585ff155`](containerd@b585ff1) cri: memory.memsw.limit_in_bytes: no such file or directory
* [release/1.6] Update go-restful to v3.10.1  ([containerd#8412](containerd#8412))
  * [`a322077bf`](containerd@a322077) go.mod: github.com/emicklei/go-restful/v3 v3.10.1
* [release/1.6 backport] update runc binary to v1.1.8 ([containerd#8842](containerd#8842))
  * [`b3ac068eb`](containerd@b3ac068) update runc binary to v1.1.8
* [release/1.6 backport] ci: remove libseccomp-dev installation for nightly ([containerd#8773](containerd#8773))
  * [`6e2bcb6dd`](containerd@6e2bcb6) ci: remove libseccomp-dev installation for nightly
* [release/1.6 backport] [CRI] fix additionalGids: it should fallback to imageConfig.User when securityContext.RunAsUser,RunAsUsername are empty ([containerd#8823](containerd#8823))
  * [`cd06f23af`](containerd@cd06f23) capture desc variable in range variable just in case that it run in parallel mode
  * [`30f5c6a1f`](containerd@30f5c6a) Use t.TempDir instead of os.MkdirTemp
  * [`59d8363ef`](containerd@59d8363) fix userstr for dditionalGids on Linux
* [release/1.6 backport] cri: write generated CNI config atomically ([containerd#8826](containerd#8826))
  * [`d75bf78c2`](containerd@d75bf78) ctr: update WritePidFile to use atomicfile
  * [`5f70b23c1`](containerd@5f70b23) shim: WritePidFile & WriteAddress use atomicfile
  * [`505d444b0`](containerd@505d444) cri: write generated CNI config atomically on Unix
  * [`b2d2d3829`](containerd@b2d2d38) atomicfile: new package for atomic file writes
* [release/1.6 backport] Fix concurrent writes for UpdateContainerStats ([containerd#8819](containerd#8819))
  * [`9f650143f`](containerd@9f65014) Fix concurrent writes for UpdateContainerStats
* [release/1.6 backport] Make checkContainerTimestamps less strict on Windows ([containerd#8827](containerd#8827))
  * [`568ce91ca`](containerd@568ce91) Make checkContainerTimestamps less strict on Windows
* [release/1.6 backport] dependency: bump go.etcd.io/bbolt to v1.3.7 ([containerd#8817](containerd#8817))
  * [`d2f47192a`](containerd@d2f4719) dependency: bump go.etcd.io/bbolt to v1.3.7
  * [`fb56dc245`](containerd@fb56dc2) [release/1.6] vendor: github.com/stretchr/testify v1.8.1
* [release/1.6 backport] Move logrus setup code to log package ([containerd#8832](containerd#8832))
  * [`7fbd5dc89`](containerd@7fbd5dc) Move logrus setup code to log package
* [release/1.6 backport] release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles ([containerd#8820](containerd#8820))
  * [`59a143670`](containerd@59a1436) release: Add "cri-containerd.DEPRECATED.txt" in the deprecated cri-containerd-* bundles
* [release/1.6 backport] Use version 2 configuration format in docs ([containerd#8821](containerd#8821))
  * [`5b51b79e2`](containerd@5b51b79) [release/1.6] fix remaining "v1 config" plugin IDs
  * [`b7cf26d8d`](containerd@b7cf26d) docs: Fix sample config.toml syntax
  * [`fcdaf0966`](containerd@fcdaf09) docs: migrate config v1 to v2
  * [`728d5c5f0`](containerd@728d5c5) Use version 2 config and mention containerd config command
* [release/1.6] update go to go1.19.11 ([containerd#8816](containerd#8816))
  * [`81aa14718`](containerd@81aa147) [release/1.6] update go to go1.19.11
* [release/1.6] update go to go1.19.10 ([containerd#8715](containerd#8715))
  * [`17cd86629`](containerd@17cd866) [release/1.6] update go to go1.19.10
* [release/1.6 backport] bugfix(port-forward): Correctly handle known errors ([containerd#8805](containerd#8805))
  * [`fdb65f214`](containerd@fdb65f2) bugfix(port-forward): Correctly handle known errors
* [release/1.6] Resolve docker.NewResolver race condition ([containerd#8800](containerd#8800))
  * [`b5784af66`](containerd@b5784af) Change http.Header copy to builtin Clone
  * [`31c466f82`](containerd@31c466f) Resolve docker.NewResolver race condition
* [release/1.6 backport] vendor: github.com/containerd/zfs v1.1.0 ([containerd#8781](containerd#8781))
  * [`be6406ca6`](containerd@be6406c) vendor: github.com/containerd/zfs v1.1.0
  * [`9f1260074`](containerd@9f12600) [release/1.6] vendor gotest.tools/v3 v3.5.0
  * [`526e9e0ce`](containerd@526e9e0) Bump grpc to v1.50.1
  * [`0e7d2d121`](containerd@0e7d2d1) go.mod: github.com/sirupsen/logrus v1.9.0
  * [`5b153c621`](containerd@5b153c6) go.mod: github.com/moby/sys/mountinfo v0.6.2
  * [`9dee60960`](containerd@9dee609) go.mod: github.com/moby/sys/mountinfo v0.6.0
* [release/1.6 backport] seccomp: always allow name_to_handle_at ([containerd#8754](containerd#8754))
  * [`07ea7b9e7`](containerd@07ea7b9) seccomp: always allow name_to_handle_at
* [release/1.6 backport] Update ginkgo to match cri-tools' version ([containerd#8759](containerd#8759))
  * [`1dae51fed`](containerd@1dae51f) Update ginkgo to match cri-tools' version
* [release/1.6 backport] integration/client: add timeout to `TestShimOOMScore` ([containerd#8749](containerd#8749))
  * [`bd76ab978`](containerd@bd76ab9) integration/client: add timeout to `TestShimOOMScore`
* [release/1.6 backport] Adding support to run hcsshim from local clone ([containerd#8713](containerd#8713))
  * [`8e14eccb2`](containerd@8e14ecc) Adding support to run hcsshim from local clone
* [1.6] Add Fields type alias to log package ([containerd#8739](containerd#8739))
  * [`9f2cdd589`](containerd@9f2cdd5) Add Fields type alias to log package
* [release/1.6] Pinned image support ([containerd#8720](containerd#8720))
  * [`f4713aad0`](containerd@f4713aa) Pinned image support
* [release/1.6 backport] runtime/v2/runc: handle early exits w/o big locks ([containerd#8695](containerd#8695))
  * [`dbeec47b4`](containerd@dbeec47) runtime/v2/runc: handle early exits w/o big locks
* [release/1.6 backport] move up to CRI-TOOLS v1.27.0 ([containerd#7997](containerd#7997))
  * [`a8e01e40a`](containerd@a8e01e4) move to CRI-TOOLS v1.27.0
  * [`755f80698`](containerd@755f806) move up to CRI-TOOLS v1.26.0
  * [`b29cc035f`](containerd@b29cc03) bump critools into ca1571e6edd116b2c95f52e3dfa0b4779b74223a
  * [`9138999f5`](containerd@9138999) Upgrade critools from 1.24.1 to 1.25.0
* [release/1.6] cherry-pick: No more nondistributable layers in MS registry ([containerd#8691](containerd#8691))
  * [`712ff8eb3`](containerd@712ff8e) No more nondistributable layers in MS registry
* [release/1.6] Fix cpu architecture detection issue on emulated ARM platform ([containerd#8533](containerd#8533))
  * [`2b16e4bfa`](containerd@2b16e4b) Add unit test to function GetCPUVariantFromArch
  * [`106e36ec3`](containerd@106e36e) Use uname machine field to get CPU variant if fails at /proc/cpuinfo
* [release/1.6] Update lint timeout ([containerd#8679](containerd#8679))
  * [`287fdfea6`](containerd@287fdfe) Update linter timeout to match main branch
* [release/1.6 backport] task: don't `close()` io before `cancel()` ([containerd#8659](containerd#8659))
  * [`b27f7daa5`](containerd@b27f7da) task: don't `close()` io before `cancel()`
* [release/1.6] update test box to fedora 37 ([containerd#8660](containerd#8660))
  * [`8b4c69248`](containerd@8b4c692) update test box to fedora 37
* [release/1.6] Revert "Downgrade MinGW to version 10.2.0" ([containerd#8668](containerd#8668))
  * [`81d6085af`](containerd@81d6085) Revert "Downgrade MinGW to version 10.2.0"
* [release/1.6 backport] Fix panic when remote differ returns empty result ([containerd#8640](containerd#8640))
  * [`f98122378`](containerd@f981223) Fix panic when remote differ returns empty result
* [1.6] Bump x/net to 0.8 ([containerd#8642](containerd#8642))
  * [`aa53f272d`](containerd@aa53f27) Bump x/net to 0.8
* [release/1.6 backport] remotes/docker: ResolverOptions: fix deprecation comments ([containerd#8620](containerd#8620))
  * [`56ff20839`](containerd@56ff208) remotes/docker: ResolverOptions: fix deprecation comments
* [release/1.6] notify readiness when registered plugins are ready ([containerd#8583](containerd#8583))
  * [`bccaf68b7`](containerd@bccaf68) notify readiness when registered plugins are ready
* [release/1.6] Update ttrpc to 1.1.2 ([containerd#8528](containerd#8528))
  * [`1cdbbe76b`](containerd@1cdbbe7) Update ttrpc to 1.1.2
</p>
</details>

<details><summary>2 commits</summary>
<p>

* [release/1.1] Unwrap io errors in server connection receive error handling ([containerd#143](containerd/ttrpc#143))
  * [`d5f7eed`](containerd/ttrpc@d5f7eed) Unwrap io errors in server connection receive error handling
</p>
</details>

<details><summary>49 commits</summary>
<p>

* gofumpt and update status badges ([containerd#75](containerd/zfs#75))
  * [`5e3457b`](containerd/zfs@5e3457b) TestZFSUsage: use t.TempDir()
  * [`6e9c675`](containerd/zfs@6e9c675) README: update badges
  * [`ff17a79`](containerd/zfs@ff17a79) gofmt code
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1 ([containerd#73](containerd/zfs#73))
  * [`d3485b9`](containerd/zfs@d3485b9) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.1
* gha: fix golangci-lint, and upgrade to v1.52.2 ([containerd#74](containerd/zfs#74))
  * [`23c831a`](containerd/zfs@23c831a) remove pre-go1.17 build-tags, and fix missing build-tags in plugin
  * [`e5acd95`](containerd/zfs@e5acd95) gha: fix golangci-lint, upgrade to v1.52.2
* Bump github.com/containerd/containerd from 1.6.12 to 1.6.18 ([containerd#72](containerd/zfs#72))
  * [`00b96c2`](containerd/zfs@00b96c2) Bump github.com/containerd/containerd from 1.6.12 to 1.6.18
* Bump github.com/containerd/containerd from 1.6.9 to 1.6.12 ([containerd#69](containerd/zfs#69))
  * [`a099def`](containerd/zfs@a099def) Bump github.com/containerd/containerd from 1.6.9 to 1.6.12
* Add CodeQL analysis workflow ([containerd#67](containerd/zfs#67))
  * [`fee1db7`](containerd/zfs@fee1db7) Add CodeQL analysis workflow
* Update GitHub actions CI workflow ([containerd#66](containerd/zfs#66))
  * [`b8b7ab2`](containerd/zfs@b8b7ab2) Update GitHub actions CI workflow
* Upgrade compiler to Go 1.19 and update dependencies ([containerd#68](containerd/zfs#68))
  * [`3e729b3`](containerd/zfs@3e729b3) Update dependencies
  * [`3c003f8`](containerd/zfs@3c003f8) Upgrade compiler to Go 1.19
* Remove references to io/ioutil package ([containerd#65](containerd/zfs#65))
  * [`d700762`](containerd/zfs@d700762) Remove references to io/ioutil package
* Update go.mod and move to supported Go version ([containerd#62](containerd/zfs#62))
  * [`f52906e`](containerd/zfs@f52906e) Update Go version to supported version
  * [`79ca2cb`](containerd/zfs@79ca2cb) Update containerd depedency to latest
* go.mod: github.com/mistifyio/go-zfs v3.0.0 ([containerd#59](containerd/zfs#59))
  * [`2e3db29`](containerd/zfs@2e3db29) go.mod: github.com/mistifyio/go-zfs v3.0.0
* go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309 ([containerd#58](containerd/zfs#58))
  * [`d904e63`](containerd/zfs@d904e63) go.mod: github.com/mistifyio/go-zfs/v3 v3.0.0-20220217145925-d014733a5309
* Update vendoring to containerd 1.6.x ([containerd#57](containerd/zfs#57))
  * [`e021180`](containerd/zfs@e021180) Update vendoring to containerd 1.6.x
* Bump github.com/containerd/containerd from 1.5.8 to 1.5.9 ([containerd#55](containerd/zfs#55))
  * [`fc0c9a9`](containerd/zfs@fc0c9a9) Bump github.com/containerd/containerd from 1.5.8 to 1.5.9
* Bump github.com/containerd/containerd from 1.5.5 to 1.5.8 ([containerd#54](containerd/zfs#54))
  * [`5d2f28c`](containerd/zfs@5d2f28c) Bump github.com/containerd/containerd from 1.5.5 to 1.5.8
* follow-up-containerd#52: fix the order of cause in fmt.Errorf ([containerd#53](containerd/zfs#53))
  * [`b3f193d`](containerd/zfs@b3f193d) follow-up-containerd#52: fix the order of cause in fmt.Errorf
* replace pkg/errors ([containerd#52](containerd/zfs#52))
  * [`d5b0a2f`](containerd/zfs@d5b0a2f) replace pkg/errors
* Bump github.com/containerd/containerd from 1.5.2 to 1.5.4 ([containerd#51](containerd/zfs#51))
  * [`fd6afa5`](containerd/zfs@fd6afa5) Bump github.com/containerd/containerd from 1.5.2 to 1.5.4
* Bump containerd to 1.5.2 ([containerd#50](containerd/zfs#50))
  * [`aef875e`](containerd/zfs@aef875e) bump containerd to 1.5.2
* Rename branches from master to main ([containerd#49](containerd/zfs#49))
  * [`35c6af7`](containerd/zfs@35c6af7) Rename branches from master to main
* sync up with containerd 1.5 GA  ([containerd#47](containerd/zfs#47))
  * [`3d5efef`](containerd/zfs@3d5efef) vendor sync up with containerd 1.5 ga
* README.md: fix CI badge ([containerd#46](containerd/zfs#46))
  * [`0977d81`](containerd/zfs@0977d81) README.md: fix CI badge
</p>
</details>

* **github.com/containerd/ttrpc**        v1.1.1 -> v1.1.2
* **github.com/containerd/zfs**          v1.0.0 -> v1.1.0
* **github.com/emicklei/go-restful/v3**  v3.7.3 -> v3.10.1
* **github.com/google/go-cmp**           v0.5.6 -> v0.5.9
* **github.com/google/uuid**             v1.2.0 -> v1.3.0
* **github.com/mistifyio/go-zfs/v3**     v3.0.1 **_new_**
* **github.com/moby/sys/mountinfo**      v0.5.0 -> v0.6.2
* **github.com/sirupsen/logrus**         v1.8.1 -> v1.9.0
* **github.com/stretchr/testify**        v1.7.0 -> v1.8.1
* **go.etcd.io/bbolt**                   v1.3.6 -> v1.3.7
* **golang.org/x/net**                   a158d28d115b -> v0.8.0
* **golang.org/x/sys**                   8c9f86f7a55f -> v0.6.0
* **golang.org/x/term**                  03fcf44c2211 -> v0.6.0
* **golang.org/x/text**                  v0.3.7 -> v0.8.0
* **google.golang.org/grpc**             v1.47.0 -> v1.50.1
* **google.golang.org/protobuf**         v1.28.0 -> v1.28.1
* **gotest.tools/v3**                    v3.0.3 -> v3.5.0

Previous release can be found at [v1.6.21](https://github.com/containerd/containerd/releases/tag/v1.6.21)
  • Loading branch information
aravindhp committed Jul 27, 2023
2 parents bd15ee4 + 8165fea commit fc9275c
Show file tree
Hide file tree
Showing 547 changed files with 31,040 additions and 7,621 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build-test-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
steps:
- uses: actions/setup-go@v3
with:
go-version: '1.19.9'
go-version: '1.19.11'

- uses: actions/checkout@v3
with:
Expand Down
16 changes: 4 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ on:
env:
# Go version we currently use to build containerd across all CI.
# Note: don't forget to update `Binaries` step, as it contains the matrix of all supported Go versions.
GO_VERSION: '1.19.9'
GO_VERSION: '1.19.11'

permissions: # added using https://github.com/step-security/secure-workflows
contents: read
Expand Down Expand Up @@ -49,7 +49,7 @@ jobs:
with:
version: v1.50.1
skip-cache: true
args: --timeout=5m
args: --timeout=8m

#
# Project checks
Expand Down Expand Up @@ -233,7 +233,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-20.04, macos-12, windows-2019, windows-2022]
go-version: ["1.17.13", "1.19.9"]
go-version: ["1.17.13", "1.19.11"]
steps:
- name: Install dependencies
if: matrix.os == 'ubuntu-20.04'
Expand Down Expand Up @@ -304,14 +304,6 @@ jobs:
- run: script/setup/install-dev-tools

# There is currently an issue in the race detector in Go on Windows when
# used with a newer version of GCC. The issue was first reported here:
# https://github.com/golang/go/issues/46099
- name: Downgrade MinGW
shell: bash
run: |
choco install mingw --version 10.2.0 --allow-downgrade
- name: Binaries
env:
CGO_ENABLED: 1
Expand Down Expand Up @@ -521,7 +513,7 @@ jobs:
# We can enable crun again when we get a better CI infra.
runc: [runc]
# Fedora is for testing cgroup v2 functionality, Rocky Linux is for testing on an enterprise-grade environment
box: ["fedora/36-cloud-base", "rockylinux/8"]
box: ["fedora/37-cloud-base", "rockylinux/8"]
env:
GOTEST: gotestsum --
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

- uses: actions/setup-go@v3
with:
go-version: 1.19.9
go-version: 1.19.11

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
steps:
- uses: actions/setup-go@v3
with:
go-version: '1.19.9'
go-version: '1.19.11'

- uses: actions/checkout@v3
with:
Expand Down
7 changes: 1 addition & 6 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
- '.github/workflows/nightly.yml'

env:
GO_VERSION: '1.19.9'
GO_VERSION: '1.19.11'

permissions: # added using https://github.com/step-security/secure-workflows
contents: read
Expand Down Expand Up @@ -57,11 +57,6 @@ jobs:
crossbuild-essential-s390x \
crossbuild-essential-ppc64el \
crossbuild-essential-riscv64 \
libseccomp-dev:amd64 \
libseccomp-dev:arm64 \
libseccomp-dev:s390x \
libseccomp-dev:ppc64el \
libseccomp-dev:riscv64 \
libbtrfs-dev:amd64 \
libbtrfs-dev:arm64 \
libbtrfs-dev:s390x \
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
name: Containerd Release

env:
GO_VERSION: '1.19.9'
GO_VERSION: '1.19.11'

permissions: # added using https://github.com/step-security/secure-workflows
contents: read
Expand Down
2 changes: 2 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -145,3 +145,5 @@ Zhoulin Xie <[email protected]>
Zhoulin Xie <[email protected]> <[email protected]>
zounengren <[email protected]> <[email protected]>
张潇 <[email protected]>
Kazuyoshi Kato <[email protected]> <[email protected]>
Andrey Epifanov <[email protected]> <[email protected]>
16 changes: 10 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -332,22 +332,26 @@ install-cri-deps: $(BINARIES)
@$(INSTALL) $(BINARIES) $(CRIDIR)/bin
endif

$(CRIDIR)/cri-containerd.DEPRECATED.txt:
@mkdir -p $(CRIDIR)
@$(INSTALL) -m 644 releases/cri-containerd.DEPRECATED.txt $@

ifeq ($(GOOS),windows)
releases/$(CRIRELEASE).tar.gz: install-cri-deps
releases/$(CRIRELEASE).tar.gz: install-cri-deps $(CRIDIR)/cri-containerd.DEPRECATED.txt
@echo "$(WHALE) $@"
@cd $(CRIDIR) && tar -czf ../../releases/$(CRIRELEASE).tar.gz *

releases/$(CRICNIRELEASE).tar.gz: install-cri-deps
releases/$(CRICNIRELEASE).tar.gz: install-cri-deps $(CRIDIR)/cri-containerd.DEPRECATED.txt
@echo "$(WHALE) $@"
@cd $(CRIDIR) && tar -czf ../../releases/$(CRICNIRELEASE).tar.gz *
else
releases/$(CRIRELEASE).tar.gz: install-cri-deps
releases/$(CRIRELEASE).tar.gz: install-cri-deps $(CRIDIR)/cri-containerd.DEPRECATED.txt
@echo "$(WHALE) $@"
@tar -czf releases/$(CRIRELEASE).tar.gz -C $(CRIDIR) etc/crictl.yaml etc/systemd usr opt/containerd
@tar -czf releases/$(CRIRELEASE).tar.gz -C $(CRIDIR) cri-containerd.DEPRECATED.txt etc/crictl.yaml etc/systemd usr opt/containerd

releases/$(CRICNIRELEASE).tar.gz: install-cri-deps
releases/$(CRICNIRELEASE).tar.gz: install-cri-deps $(CRIDIR)/cri-containerd.DEPRECATED.txt
@echo "$(WHALE) $@"
@tar -czf releases/$(CRICNIRELEASE).tar.gz -C $(CRIDIR) etc usr opt
@tar -czf releases/$(CRICNIRELEASE).tar.gz -C $(CRIDIR) cri-containerd.DEPRECATED.txt etc usr opt
endif

cri-release: releases/$(CRIRELEASE).tar.gz
Expand Down
2 changes: 1 addition & 1 deletion Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ EOF
config.vm.provision "install-golang", type: "shell", run: "once" do |sh|
sh.upload_path = "/tmp/vagrant-install-golang"
sh.env = {
'GO_VERSION': ENV['GO_VERSION'] || "1.19.9",
'GO_VERSION': ENV['GO_VERSION'] || "1.19.11",
}
sh.inline = <<~SHELL
#!/usr/bin/env bash
Expand Down
49 changes: 20 additions & 29 deletions cmd/containerd/command/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ can be used and modified as necessary as a custom configuration.`
// Stop if we are registering or unregistering against Windows SCM.
stop, err := registerUnregisterService(config.Root)
if err != nil {
logrus.Fatal(err)
log.L.Fatal(err)
}
if stop {
return nil
Expand Down Expand Up @@ -203,7 +203,7 @@ can be used and modified as necessary as a custom configuration.`

// Launch as a Windows Service if necessary
if err := launchService(server, done); err != nil {
logrus.Fatal(err)
log.L.Fatal(err)
}
select {
case <-ctx.Done():
Expand Down Expand Up @@ -271,12 +271,21 @@ can be used and modified as necessary as a custom configuration.`
}
serve(ctx, l, server.ServeGRPC)

if err := notifyReady(ctx); err != nil {
log.G(ctx).WithError(err).Warn("notify ready failed")
}
readyC := make(chan struct{})
go func() {
server.Wait()
close(readyC)
}()

log.G(ctx).Infof("containerd successfully booted in %fs", time.Since(start).Seconds())
<-done
select {
case <-readyC:
if err := notifyReady(ctx); err != nil {
log.G(ctx).WithError(err).Warn("notify ready failed")
}
log.G(ctx).Infof("containerd successfully booted in %fs", time.Since(start).Seconds())
<-done
case <-done:
}
return nil
}
return app
Expand Down Expand Up @@ -337,11 +346,7 @@ func setLogLevel(context *cli.Context, config *srvconfig.Config) error {
l = config.Debug.Level
}
if l != "" {
lvl, err := logrus.ParseLevel(l)
if err != nil {
return err
}
logrus.SetLevel(lvl)
return log.SetLevel(l)
}
return nil
}
Expand All @@ -352,21 +357,7 @@ func setLogFormat(config *srvconfig.Config) error {
f = log.TextFormat
}

switch f {
case log.TextFormat:
logrus.SetFormatter(&logrus.TextFormatter{
TimestampFormat: log.RFC3339NanoFixed,
FullTimestamp: true,
})
case log.JSONFormat:
logrus.SetFormatter(&logrus.JSONFormatter{
TimestampFormat: log.RFC3339NanoFixed,
})
default:
return fmt.Errorf("unknown log format: %s", f)
}

return nil
return log.SetFormat(f)
}

func setLogHooks() {
Expand All @@ -385,7 +376,7 @@ func dumpStacks(writeToFile bool) {
bufferLen *= 2
}
buf = buf[:stackSize]
logrus.Infof("=== BEGIN goroutine stack dump ===\n%s\n=== END goroutine stack dump ===", buf)
log.L.Infof("=== BEGIN goroutine stack dump ===\n%s\n=== END goroutine stack dump ===", buf)

if writeToFile {
// Also write to file to aid gathering diagnostics
Expand All @@ -396,6 +387,6 @@ func dumpStacks(writeToFile bool) {
}
defer f.Close()
f.WriteString(string(buf))
logrus.Infof("goroutine stack dump written to %s", name)
log.L.Infof("goroutine stack dump written to %s", name)
}
}
9 changes: 5 additions & 4 deletions cmd/ctr/commands/commands.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ import (
"strings"

"github.com/containerd/containerd/defaults"
"github.com/containerd/containerd/pkg/atomicfile"

"github.com/urfave/cli"
)

Expand Down Expand Up @@ -259,15 +261,14 @@ func WritePidFile(path string, pid int) error {
if err != nil {
return err
}
tempPath := filepath.Join(filepath.Dir(path), fmt.Sprintf(".%s", filepath.Base(path)))
f, err := os.OpenFile(tempPath, os.O_RDWR|os.O_CREATE|os.O_EXCL|os.O_SYNC, 0666)
f, err := atomicfile.New(path, 0o666)
if err != nil {
return err
}
_, err = fmt.Fprintf(f, "%d", pid)
f.Close()
if err != nil {
f.Cancel()
return err
}
return os.Rename(tempPath, path)
return f.Close()
}
2 changes: 1 addition & 1 deletion contrib/Dockerfile.test
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#
# docker build -t containerd-test --build-arg RUNC_VERSION=v1.0.0-rc94 -f Dockerfile.test ../

ARG GOLANG_VERSION=1.19.9
ARG GOLANG_VERSION=1.19.11
ARG GOLANG_IMAGE=golang

FROM ${GOLANG_IMAGE}:${GOLANG_VERSION} AS golang
Expand Down
2 changes: 1 addition & 1 deletion contrib/gce/configure.sh
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ if [ "${CONTAINERD_TEST:-"false"}" != "true" ]; then
# CONTAINERD_VERSION is the cri-containerd version to use.
version=${CONTAINERD_VERSION:-""}
else
deploy_path=${CONTAINERD_DEPLOY_PATH:-"cri-containerd-staging"}
deploy_path=${CONTAINERD_DEPLOY_PATH:-"k8s-staging-cri-tools"}

# PULL_REFS_METADATA is the metadata key of PULL_REFS from prow.
PULL_REFS_METADATA="PULL_REFS"
Expand Down
2 changes: 1 addition & 1 deletion contrib/seccomp/seccomp_default.go
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,7 @@ func DefaultProfile(sp *specs.Spec) *specs.LinuxSeccomp {
"munlock",
"munlockall",
"munmap",
"name_to_handle_at",
"nanosleep",
"newfstatat",
"_newselect",
Expand Down Expand Up @@ -572,7 +573,6 @@ func DefaultProfile(sp *specs.Spec) *specs.LinuxSeccomp {
"mount",
"mount_setattr",
"move_mount",
"name_to_handle_at",
"open_tree",
"perf_event_open",
"quotactl",
Expand Down
3 changes: 3 additions & 0 deletions diff.go
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,9 @@ func (r *diffRemote) Compare(ctx context.Context, a, b []mount.Mount, opts ...di
}

func toDescriptor(d *types.Descriptor) ocispec.Descriptor {
if d == nil {
return ocispec.Descriptor{}
}
return ocispec.Descriptor{
MediaType: d.MediaType,
Digest: d.Digest,
Expand Down
Loading

0 comments on commit fc9275c

Please sign in to comment.