Commit Graph

14575 Commits

Author SHA1 Message Date
Austin Vazquez
697c59c635 Update runc binary to v1.2.5
This is the fifth patch release in the 1.2.z series of runc. It
primarily fixes an issue caused by an upstream systemd bug.

There was a regression in systemd v230 which made the way we define device
rule restrictions require a systemctl daemon-reload for our transient
units. This caused issues for workloads using NVIDIA GPUs. Workaround the
upstream regression by re-arranging how the unit properties are defined.
Dependency github.com/cyphar/filepath-securejoin is updated to v0.4.1,
to allow projects that vendor runc to bump it as well.
CI: fixed criu-dev compilation.
Dependency golang.org/x/net is updated to 0.33.0.

diff: opencontainers/runc@v1.2.4...v1.2.5

Signed-off-by: Austin Vazquez <macedonv@amazon.com>
2025-02-17 22:20:04 +00:00
Mike Brown
29be12a668
Merge pull request #11269 from MikeZappa87/bugfix/gocnirace
[release/2.0] Update go-cni version to fix Race Condition issue
2025-02-05 16:26:14 -06:00
Fu Wei
be08040e8d
Merge pull request #11329 from klihub/fixes/containerd/2.0.x/nri-plugin-sync
[release/2.0] fix initial sync race of registering NRI plugins.
2025-02-04 09:35:57 -05:00
Michael Zappa
06891f899d
fix go-cni race condition
Signed-off-by: Michael Zappa <michael.zappa@gmail.com>
2025-02-03 16:26:08 -07:00
Phil Estes
7319817149
Merge pull request #11325 from kiashok/update-imgcrypt
[release/2.0] Update github.com/containerd/imgcrypt to v2.0.0
2025-02-03 14:02:20 -05:00
Krisztian Litkey
79cdbf61b6
cri,nri: block NRI plugin sync. during event processing.
Block the synchronization of registering NRI plugins during
CRI events to avoid the plugin ending up in an inconsistent
starting state after initial sync (missing pods, containers
or missed events for some pods or containers).

Signed-off-by: Krisztian Litkey <krisztian.litkey@intel.com>
2025-02-03 10:24:20 +02:00
Kirtana Ashok
9d5cfce833 Update github.com/containerd/imgcrypt to v2.0.0
Signed-off-by: Kirtana Ashok <kiashok@microsoft.com>
2025-01-30 10:09:20 -08:00
Mike Brown
e465b45f9c
Merge pull request #11265 from dmcgowan/2.0-fix-cdi-oci-opt
[release/2.0] Move CDI device spec out of the OCI package
2025-01-23 13:19:23 -06:00
Derek McGowan
c18314700a
Merge pull request #11297 from k8s-infra-cherrypick-robot/cherry-pick-11277-to-release/2.0
[release/2.0] update to go1.23.5 / go1.22.11
2025-01-22 10:09:18 -07:00
Akhil Mohan
1f4e5688ef update to go1.23.5 / go1.22.11
- go1.23.5 (released 2025-01-16) includes security fixes to the
crypto/x509 and net/http packages, as well as bug fixes to the compiler,
the runtime, and the net package. See the Go 1.23.5 milestone on our
issue tracker for details.

- go1.22.11 (released 2025-01-16) includes security fixes to the
crypto/x509 and net/http packages, as well as bug fixes to the runtime.
See the Go 1.22.11 milestone on our issue tracker for details.

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-01-22 05:12:48 +00:00
Derek McGowan
f58939c33d
Remove deprecated WithCDIDevices in oci spec opts
This function has been moved to prevent an unintended dependency on CDI.

Signed-off-by: Derek McGowan <derek@mcg.dev>
(cherry picked from commit bdc847f1eb535a6728b6db3f2619d2a5ed0edbb9)
Signed-off-by: Derek McGowan <derek@mcg.dev>
2025-01-17 08:58:34 -08:00
Derek McGowan
3d53430fe1
Move CDI device spec out of the OCI package
The CDI device injection spec opt was mistakenly added to the OCI
package which brought in an unintended dependency on CDI and its
transitive dependencies.

Signed-off-by: Derek McGowan <derek@mcg.dev>
(cherry picked from commit e20f7f4a2425c005d85855abfd4556d7b4ccbf87)
Signed-off-by: Derek McGowan <derek@mcg.dev>
2025-01-14 14:16:18 -08:00
Derek McGowan
0fbf3c3b38
Merge pull request #11263 from thaJeztah/2.0_backport_protobuf_1.35.2
[release/2.0 backport] build(deps): bump google.golang.org/protobuf from 1.35.1 to 1.35.2
2025-01-14 10:50:48 -07:00
dependabot[bot]
3a6ab80d01
build(deps): bump google.golang.org/protobuf from 1.35.1 to 1.35.2
Bumps google.golang.org/protobuf from 1.35.1 to 1.35.2.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit dd2d891672305ab756b4b93970ac1342c952ffc8)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-01-14 09:53:24 +01:00
Derek McGowan
c507a0257e
Merge pull request #11245 from AkihiroSuda/prepare-v2.0.2
Prepare release notes for v2.0.2
2025-01-13 22:21:27 -07:00
Akihiro Suda
cdaf4dfb4d
Prepare release notes for v2.0.2
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2025-01-14 11:14:20 +09:00
Kazuyoshi Kato
0d9aa65eba
Merge pull request #11259 from k8s-infra-cherrypick-robot/cherry-pick-11257-to-release/2.0
[release/2.0] Update platforms to latest rc
2025-01-13 16:00:04 -08:00
Derek McGowan
eb125e1dd3 Update platforms to latest rc
Signed-off-by: Derek McGowan <derek@mcg.dev>
2025-01-13 22:26:42 +00:00
Derek McGowan
c334ae68b8
Merge pull request #11256 from k8s-infra-cherrypick-robot/cherry-pick-10980-to-release/2.0
[release/2.0] Remove confusing warning in cri runtime config migration
2025-01-13 09:09:32 -07:00
Jin Dong
468079c5c4 Remove confusing warning in cri runtime config migration
Signed-off-by: Jin Dong <djdongjin95@gmail.com>
2025-01-13 15:26:45 +00:00
Akihiro Suda
b48e1080c2
Merge pull request #11248 from k8s-infra-cherrypick-robot/cherry-pick-11165-to-release/2.0
[release/2.0] Fix runtime platform loading in cri image plugin init
2025-01-11 23:06:22 +09:00
Jin Dong
a2d9d4fd55 Fix runtime platform loading in cri image plugin init
The cri image service init has a bug where, after getting FSPath
for snapshotter_i, it stores it under defaultSnapshotter instead
of snapshotter_i.

Also make a few other refactor:

1. Dedup the snapshotRoot loading for defaultSnapshotter
2. Remove some unnecessary logic in RuntimePlatforms for-loop

Signed-off-by: Jin Dong <djdongjin95@gmail.com>
2025-01-10 21:12:46 +00:00
Maksym Pavlenko
e1b0bb601e
Merge pull request #11246 from k8s-infra-cherrypick-robot/cherry-pick-11161-to-release/2.0
[release/2.0] make sure console master tty is closed on task exit
2025-01-10 12:36:24 -08:00
Henry Wang
184ffad01f Add integ test to check tty leak
Signed-off-by: Henry Wang <henwang@amazon.com>
2025-01-10 16:38:20 +00:00
Henry Wang
17181ed33e fix master tty leak due to leaking init container object
Signed-off-by: Henry Wang <henwang@amazon.com>
2025-01-10 16:38:20 +00:00
Derek McGowan
1698a59589
Merge pull request #11242 from djdongjin/bump-otelttrpc-release-20
[release/2.0] Bump up otelttrpc to 0.1.0
2025-01-09 22:53:00 -07:00
Jin Dong
8666e74225 Bump up otelttrpc to 0.1.0
Signed-off-by: Jin Dong <djdongjin95@gmail.com>
2025-01-09 22:41:30 +00:00
Phil Estes
6f98bd9ed7
Merge pull request #11236 from k8s-infra-cherrypick-robot/cherry-pick-11229-to-release/2.0
[release/2.0] ctr: `ctr images import --all-platforms`: fix unpack
2025-01-09 11:51:40 -05:00
Samuel Karp
584ec48405
Merge pull request #11239 from k8s-infra-cherrypick-robot/cherry-pick-11230-to-release/2.0
[release/2.0] update runc binary to v1.2.4
2025-01-08 22:47:53 -08:00
Akhil Mohan
7373ddd70b update runc binary to v1.2.4
This is the fourth patch release of the 1.2.z release branch of runc. It
includes a fix for a regression introduced in 1.2.0 related to the
default device list.

- Re-add tun/tap devices to built-in allowed devices lists.

  In runc 1.2.0 we removed these devices from the default allow-list
(which were added seemingly by accident early in Docker's history) as
a precaution in order to try to reduce the attack surface of device
inodes available to most containers. At the time we thought
that the vast majority of users using tun/tap would already be
specifying what devices they need (such as by using --device with
Docker/Podman) as opposed to doing the mknod manually, and thus
there would've been no user-visible change.

  Unfortunately, it seems that this regressed a noticeable number of
users (and not all higher-level tools provide easy ways to specify
devices to allow) and so this change needed to be reverted. Users
that do not need these devices are recommended to explicitly disable
them by adding deny rules in their container configuration.

diff: https://github.com/opencontainers/runc/compare/v1.2.3...v1.2.4

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-01-09 02:44:11 +00:00
Akihiro Suda
c4270430db ctr: ctr images import --all-platforms: fix unpack
Fix issue 11228

`ctr images import --all-platforms` w/o `--local` was failing due to
`unable to initialize unpacker: no unpack platforms defined` error.

W/ `--local`, it unpacks the layers for the strict-default platform.

Now `ctr images import --all-platforms` w/o `--local` unpacks the layers
for the non-strict default platform.
This behavior still differs from `--local`.
i.e., on an arm64 host, arm/v{5,6,7} layers are unpacked too.

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2025-01-09 02:26:18 +00:00
Phil Estes
ce560bb249
Merge pull request #11222 from k8s-infra-cherrypick-robot/cherry-pick-11220-to-release/2.0
[release/2.0] downgrade go-difflib and go-spew to tagged releases
2025-01-06 11:27:53 -05:00
Akihiro Suda
0d91d8e5e5
Merge pull request #11213 from pgimalac/pgimalac/containerd-no-plugin-v2.0
[release/2.0] Add a build tag to disable std `plugin` import
2025-01-06 21:44:10 +09:00
Sebastiaan van Stijn
f34147772b downgrade go-difflib and go-spew to tagged releases
These dependencies were updated to "master" in some modules we depend on,
but have no code-changes since their last release. Unfortunately, this also
causes a ripple effect, forcing all users of the containerd module to also
update these dependencies to an unrelease / un-tagged version.

Both these dependencies will unlikely do a new release in the near future,
so exclude these versions so that we can downgrade to the current release.

For additional details, see [this PR][1] and links mentioned in it.

[1]: https://github.com/kubernetes-sigs/kustomize/pull/5830#issuecomment-2569960859

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-01-06 08:35:14 +00:00
Pierre Gimalac
dca769485c
chore: add a build tag to disable containerd plugin import
Signed-off-by: Pierre Gimalac <pierre.gimalac@datadoghq.com>
2024-12-31 13:39:34 +01:00
Samuel Karp
fb61c901db
Merge pull request #11187 from k8s-infra-cherrypick-robot/cherry-pick-11185-to-release/2.0
[release/2.0] Update golangci to 1.60.3
2024-12-20 13:51:17 -08:00
Derek McGowan
5942b3fcba Update golangci to 1.60.3
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-12-20 19:27:06 +00:00
Derek McGowan
88aa2f531d
Merge pull request #11158 from dmcgowan/prepare-v2.0.1
[release/2.0] Prepare release notes for v2.0.1
2024-12-13 15:36:28 -08:00
Derek McGowan
b0ece5dc55
Prepare release notes for v2.0.1
Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-12-13 13:54:03 -08:00
Maksym Pavlenko
e206c07edc
Merge pull request #11154 from k8s-infra-cherrypick-robot/cherry-pick-11122-to-release/2.0
[release/2.0] build(deps): bump actions/attest-build-provenance from 1.4.4 to 2.1.0
2024-12-13 11:41:59 -08:00
dependabot[bot]
fe69570849
build(deps): bump actions/attest-build-provenance from 1.4.4 to 2.1.0
Bumps [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance) from 1.4.4 to 2.1.0.
- [Release notes](https://github.com/actions/attest-build-provenance/releases)
- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)
- [Commits](ef244123eb...7668571508)

Signed-off-by: Derek McGowan <derek@mcg.dev>
2024-12-13 10:09:20 -08:00
Derek McGowan
eb2d0c4762
Merge pull request #11153 from k8s-infra-cherrypick-robot/cherry-pick-11130-to-release/2.0
[release/2.0] update xx to v1.6.1 for compatibility with alpine 3.21 and file 5.46+
2024-12-13 09:58:31 -08:00
Sebastiaan van Stijn
eb2ce68829 update xx to v1.6.1 for compatibility with alpine 3.21 and file 5.46+
This fixes compatibility with alpine 3.21 and file 5.46+

- Fix additional possible `xx-cc`/`xx-cargo` compatibility issue with Alpine 3.21
- Support for Alpine 3.21
- Fix `xx-verify` with `file` 5.46+
- Fix possible error taking lock in `xx-apk` in latest Alpine without `coreutils`

full diff: https://github.com/tonistiigi/xx/compare/v1.2.1...v1.6.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2024-12-12 19:12:49 +00:00
Derek McGowan
c11f124500
Merge pull request #11139 from k8s-infra-cherrypick-robot/cherry-pick-11086-to-release/2.0
[release/2.0] ctr pull should unpack for default platform when transfer service is used
2024-12-12 11:05:34 -08:00
Derek McGowan
8c6dd50d91
Merge pull request #11151 from k8s-infra-cherrypick-robot/cherry-pick-11104-to-release/2.0
[release/2.0] internal/cri: should not apply IoOwner options if it's not user namespace
2024-12-12 11:05:10 -08:00
Phil Estes
e9004f0a88
Merge pull request #11146 from k8s-infra-cherrypick-robot/cherry-pick-11135-to-release/2.0
[release/2.0] Update go-cni for CNI STATUS
2024-12-12 10:12:54 -05:00
Phil Estes
c403b64231
Merge pull request #11140 from k8s-infra-cherrypick-robot/cherry-pick-11061-to-release/2.0
[release/2.0] Fix cri grpc plugin config migration
2024-12-12 10:12:27 -05:00
Phil Estes
d5a99f073f
Merge pull request #11142 from thaJeztah/2.0_backport_bump_runc_binary
[release/2.0 backport] update runc binary to v1.2.3
2024-12-12 10:11:53 -05:00
Wei Fu
018d83650f internal/cri: should not apply IoOwner options
When kubelet enables UserNamespaceSupport feature gate, kubelet always
uses non-empty UsernsOptions to setup pods. In this case, the gVisor shim is
unable to parse runc.Option so that it will be unable to start container.

This change is to avoid adding IoOwner options if the UsernsOptions is
for node level. Since gVisor hasn't feature subcommand yet, CRI status
will report that gVisor runtime doesn't support user namespace. So it's
kind of workaround to avoid compatible issue.

REF: #11091

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2024-12-12 14:49:29 +00:00
Michael Zappa
5eb7995a9a feat: update go-cni version for CNI STATUS
Signed-off-by: Michael Zappa <michael.zappa@gmail.com>
2024-12-11 20:50:33 +00:00