ktock / container2wasm

Container to WASM converter
https://ktock.github.io/container2wasm-demo/
Apache License 2.0
2.07k stars 85 forks source link

build(deps): bump github.com/opencontainers/runc from 1.1.15 to 1.2.2 #350

Closed dependabot[bot] closed 1 week ago

dependabot[bot] commented 1 week ago

Bumps github.com/opencontainers/runc from 1.1.15 to 1.2.2.

Release notes

Sourced from github.com/opencontainers/runc's releases.

runc v1.2.0 -- "できるときにできることをやるんだ。それが今だ。"

This is the long-awaited release of runc 1.2.0! The primary changes from rc3 are general improvements and fixes for minor regressions related to the new /proc/self/exe cloning logic in runc 1.2, follow-on patches related to CVE-2024-45310, as well as some other minor changes.

  • In order to alleviate the remaining concerns around the memory usage and (arguably somewhat unimportant, but measurable) performance overhead of memfds for cloning /proc/self/exe, we have added a new protection using overlayfs that is used if you have enough privileges and the running kernel supports it. It has effectively no performance nor memory overhead (compared to no cloning at all). (#4448)
  • The original fix for CVE-2024-45310 was intentionally very limited in scope to make it easier to review, however it also did not handle all possible os.MkdirAll cases and thus could lead to regressions. We have switched to the more complete implementation in the newer versions of github.com/cyphar/filepath-securejoin. (#4393, #4400, #4421, #4430)
  • In certain situations (a system with lots of mounts or racing mounts) we could accidentally end up leaking mounts from the container into the host. This has been fixed. (#4417)
  • The fallback logic for O_TMPFILE clones of /proc/self/exe had a minor bug that would cause us to miss non-noexec directories and thus fail to start containers on some systems. (#4444)
  • Sometimes the cloned /proc/self/exe file descriptor could be placed in a way that it would get clobbered by the Go runtime. We had a fix for this already but it turns out it could still break in rare circumstances, but it has now been fixed. (#4294, #4452)
  • It is not possible for runc kill to work properly in some specific configurations (such as rootless containers with no cgroups and a shared pid namespace). We now output a warning for such configurations. (#4398)
  • memfd-bind: update the documentation and make path handling with the systemd unit more idiomatic. (#4428)
  • We now use v0.16 of Cilium's eBPF library, including fixes that quite a few downstreams asked for. (#4397, #4396)
  • Some internal runc init synchronisation that was no longer necessary (due to the /proc/self/exe cloning move to Go) was removed. (#4441)

Static Linking Notices

The runc binary distributed with this release are statically linked with the following GNU LGPL-2.1 licensed libraries, with runc acting as a "work that uses the Library":

The versions of these libraries were not modified from their upstream versions, but in order to comply with the LGPL-2.1 (§6(a)), we have attached the

... (truncated)

Changelog

Sourced from github.com/opencontainers/runc's changelog.

[1.2.2] - 2024-11-15

Specialization is for insects.

Fixed

  • Fixed the failure of runc delete on a rootless container with no dedicated cgroup on a system with read-only /sys/fs/cgroup mount. This is a regression in runc 1.2.0, causing a failure when using rootless buildkit. (#4518, #4531)
  • Using runc on a system where /run/runc and /usr/bin are on different filesystems no longer results in harmless but annoying messages ("overlayfs: "xino" feature enabled using 3 upper inode bits") appearing in the kernel log. (#4508, #4530)

Changed

  • Better memfd-bind documentation. (#4530)
  • CI: bump Fedora 40 -> 41. (#4528)

[1.2.1] - 2024-11-01

No existe una escuela que enseñe a vivir.

Fixed

  • Became root after joining an existing user namespace. Otherwise, runc won't have permissions to configure some mounts when running under SELinux and runc is not creating the user namespace. (#4466, #4477)

Removed

  • Remove dependency on golang.org/x/sys/execabs from go.mod. (#4480)
  • Remove runc-dmz, that had many limitations, and is mostly made obsolete by the new protection mechanism added in v1.2.0. Note that runc-dmz was only available only in the 1.2.0 release and required to set an environment variable to opt-in. (#4488)

Added

  • The script/check-config.sh script now checks for overlayfs support. (#4494)
  • When using cgroups v2, allow to set or update memory limit to "unlimited" and swap limit to a specific value. (#4501)

[1.2.0] - 2024-10-22

できるときにできることをやるんだ。それが今だ。

Added

  • In order to alleviate the remaining concerns around the memory usage and (arguably somewhat unimportant, but measurable) performance overhead of memfds for cloning /proc/self/exe, we have added a new protection using overlayfs that is used if you have enough privileges and the running kernel supports it. It has effectively no performance nor memory overhead (compared to no cloning at all). (#4448)

... (truncated)

Commits
  • 7cb3632 VERSION: release v1.2.2
  • 24591c0 Merge pull request #4530 from lifubang/backport-4509-4525
  • eb676de memfd-bind: elaborate kernel requirements for overlayfs protection
  • 82f3af8 readme: drop unused memfd-bind reference
  • 2421b59 memfd-bind: mention that overlayfs obviates the need for it
  • b1f733b dmz: overlay: set xino=off to disable dmesg spam
  • 1b42ebc Merge pull request #4531 from lifubang/backport-4523
  • 832faf0 libct/cg: add test for remove a non-existent dir in a ro mount point
  • 8bfc3b5 Merge pull request #4528 from lifubang/backport-4505
  • e41cc27 libct/cg: RemovePath: improve comments
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
ktock commented 1 week ago

@dependabot rebase

dependabot[bot] commented 1 week ago

Looks like this PR is already up-to-date with main! If you'd still like to recreate it from scratch, overwriting any edits, you can request @dependabot recreate.

dependabot[bot] commented 1 week ago

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.