Commit Graph

639 Commits

Author SHA1 Message Date
Sebastiaan van Stijn
0ba0664742
vendor: github.com/opencontainers/runc v1.1.7
release notes: https://github.com/opencontainers/runc/releases/tag/v1.1.7
full diff: https://github.com/opencontainers/runc/compare/v1.1.6...v1.1.7

This is the seventh patch release in the 1.1.z release of runc, and is
the last planned release of the 1.1.z series. It contains a fix for
cgroup device rules with systemd when handling device rules for devices
that don't exist (though for devices whose drivers don't correctly
register themselves in the kernel -- such as the NVIDIA devices -- the
full fix only works with systemd v240+).

- When used with systemd v240+, systemd cgroup drivers no longer skip
  DeviceAllow rules if the device does not exist (a regression introduced
  in runc 1.1.3). This fix also reverts the workaround added in runc 1.1.5,
  removing an extra warning emitted by runc run/start.
- The source code now has a new file, runc.keyring, which contains the keys
  used to sign runc releases.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-04-27 12:00:23 +02:00
Sebastiaan van Stijn
cbd10e41a6
vendor: github.com/opencontainers/runc v1.1.6
release notes: https://github.com/opencontainers/runc/releases/tag/v1.1.6
full diff: opencontainers/runc@v1.1.5...v1.1.6

This is the sixth patch release in the 1.1.z series of runc, which fixes
a series of cgroup-related issues.

Note that this release can no longer be built from sources using Go
1.16. Using a latest maintained Go 1.20.x or Go 1.19.x release is
recommended. Go 1.17 can still be used.

- systemd cgroup v1 and v2 drivers were deliberately ignoring UnitExist error
  from systemd while trying to create a systemd unit, which in some scenarios
  may result in a container not being added to the proper systemd unit and
  cgroup.
- systemd cgroup v2 driver was incorrectly translating cpuset range from spec's
  resources.cpu.cpus to systemd unit property (AllowedCPUs) in case of more
  than 8 CPUs, resulting in the wrong AllowedCPUs setting.
- systemd cgroup v1 driver was prefixing container's cgroup path with the path
  of PID 1 cgroup, resulting in inability to place PID 1 in a non-root cgroup.
- runc run/start may return "permission denied" error when starting a rootless
  container when the file to be executed does not have executable bit set for
  the user, not taking the CAP_DAC_OVERRIDE capability into account. This is
  a regression in runc 1.1.4, as well as in Go 1.20 and 1.20.1
- cgroup v1 drivers are now aware of misc controller.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-04-27 11:59:14 +02:00
Rodrigo Campos
92b93e376a cri: Vendor v0.27.1
As requested by Akihiro Suda here:
	https://github.com/containerd/containerd/pull/8211#discussion_r1171041922

This just bumps the tag name to the k8s final release. There are no
changes other than the tag name, though.

Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2023-04-24 16:11:42 +02:00
Sebastiaan van Stijn
f238167408
go.mod: add comment explaining go-fuzz-headers replace rule
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-04-15 13:03:12 +02:00
Sebastiaan van Stijn
ec9e74ed92
go.mod: remove replace for github.com/opencontainers/runtime-tools
The replace rule was actually downgrading the package by one commit;
946c877fa8...2e043c6bd6

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-04-15 13:01:24 +02:00
Sebastiaan van Stijn
6c40cf3051
go.mod: integration: use non-pre-release of containerd
The actual version is replaced, so only "optics"

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-04-15 12:50:51 +02:00
Sebastiaan van Stijn
92d1e9bee0
go.mod: integration: move indirect dependencies to the right group
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-04-15 12:45:06 +02:00
Kazuyoshi Kato
ffc70c45c4
Merge pull request #8359 from kiashok/argsEscapedTestFix
Fix argsEscaped tests
2023-04-14 13:08:51 -07:00
Rodrigo Campos
85afda6f52 cri: Vendor v0.27.0-beta.0 for mounts uid/gid mappings
We will use this in future commits to see if the kubelet requested idmap
mounts for volumes, that we don't yet support.

Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2023-04-11 17:31:27 +02:00
Kirtana Ashok
e0b817ec15 Fix argsEscaped tests
- Rename test name
- Add a tag to the container image used in the tests instead of the latest tag
- Add a 5 second delay between container start and stop to ensure that the
  container is fully initialized

Signed-off-by: Kirtana Ashok <Kirtana.Ashok@microsoft.com>
2023-04-07 13:25:03 -07:00
Gabriel Adrian Samfira
4012c1b853 Remove escalated privileges
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:17:35 -07:00
Gabriel Adrian Samfira
54f8abe553 Use DefaultSnapshotter
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:17:35 -07:00
Gabriel Adrian Samfira
47dd3dcffb use t.Fatal if we cannot enable process privileges
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:17:35 -07:00
Gabriel Adrian Samfira
e31bef15fa Update continuity
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:17:32 -07:00
Gabriel Adrian Samfira
95687a9324 Fix go.mod, simplify boolean logic, add logging
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:16:56 -07:00
Gabriel Adrian Samfira
db32798592 Update continuity, go-winio and hcsshim
Update dependencies and remove the local bindfilter files. Those have
been moved to go-winio.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:16:52 -07:00
Gabriel Adrian Samfira
dc980b14a0 Grant needed privileges for snapshotter tests
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2023-03-31 06:15:19 -07:00
Paul "TBBle" Hampson
d591bb0421 Enable TestSnapshotterClient on Windows
Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
2023-03-31 06:15:18 -07:00
Fu Wei
988ee8ffef
Merge pull request #8208 from Iceber/fix_runtime_path
fix the task setting the runtime path
2023-03-31 12:38:08 +08:00
Akihiro Suda
b55dad06aa
go.mod: github.com/opencontainers/runc v1.1.5
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-29 17:16:57 +09:00
Iceber Gu
c89438e834 integration: add container start test using abs runtime path
Signed-off-by: Iceber Gu <wei.cai-nat@daocloud.io>
2023-03-29 11:54:52 +08:00
Fu Wei
e735405c15
Merge pull request #7951 from Iceber/fix_restart_monitor 2023-03-16 08:58:20 +08:00
Maksym Pavlenko
07c2ae12e1 Remove v1 runctypes
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-03-15 09:18:16 -07:00
Maksym Pavlenko
ef516a1507 Remove runtime v1
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-03-15 09:18:14 -07:00
Iceber Gu
76778aee64 integration: add restart monitor test for paused task
Signed-off-by: Iceber Gu <wei.cai-nat@daocloud.io>
2023-03-15 14:32:17 +08:00
Kazuyoshi Kato
a570c8184a
Merge pull request #8213 from jedevc/export-skip-docker-manifest
archive: consistently respect value of WithSkipDockerManifest
2023-03-14 15:01:08 -07:00
Akihiro Suda
86fc1ccab4
Remove aufs snapshotter (deprecated since v1.5)
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-14 14:37:13 +09:00
Justin Chadwell
d3e856da7f export: add test for WithSkipDockerManifest
Signed-off-by: Justin Chadwell <me@jedevc.com>
2023-03-13 09:02:53 +00:00
Derek McGowan
56354c7de5
Update ttrpc to v1.2.1
Signed-off-by: Derek McGowan <derek@mcg.dev>
2023-03-08 10:29:44 -08:00
Paweł Gronowski
dd3eedf3c3 labels: Add LabelDistributionSource
Add a public const for "containerd.io/distribution.source" in `labels`
package and replace hardcoded usages.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2023-03-08 10:01:58 +01:00
Akihiro Suda
6d46bb410b
go.mod: go.opentelemetry.io/otel/* v1.14.0
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-08 02:06:41 +09:00
Akihiro Suda
535ef5054d
go.mod: github.com/stretchr/testify v1.8.2
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:39 +09:00
Akihiro Suda
2b4f830ede
go.mod: github.com/opencontainers/selinux v1.11.0
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:39 +09:00
Akihiro Suda
6bfc82dafe
go.mod: github.com/opencontainers/runtime-spec v1.1.0-rc.1
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:39 +09:00
Akihiro Suda
7c70185ae9
go.mod: github.com/klauspost/compress v1.16.0
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:39 +09:00
Akihiro Suda
8e67b27315
go.mod: github.com/imdario/mergo v0.3.13
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:38 +09:00
Akihiro Suda
6afec55581
go.mod: github.com/emicklei/go-restful/v3 v3.10.1
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:38 +09:00
Akihiro Suda
c4f928f88c
go.mod: github.com/containerd/ttrpc v1.2.0
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:38 +09:00
Akihiro Suda
5630d6a840
go.mod: github.com/containerd/fifo v1.1.0
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:38 +09:00
Akihiro Suda
6d95132313
go.mod: github.com/containerd/cgroups/v3 v3.0.1
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 22:06:38 +09:00
Akihiro Suda
da1ffdd757
go.mod: github.com/Microsoft/hcsshim v0.10.0-rc.7
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-03-07 21:48:06 +09:00
Akihiro Suda
c77ddf5381
Merge pull request #8131 from lucacome/bump-k8s.io-deps
Bump k8s.io deps
2023-03-07 21:44:13 +09:00
Akihiro Suda
56f629fd9c
Merge pull request #8217 from dmcgowan/update-imgcrypt
Update imgcrypt to v1.1.7
2023-03-07 21:40:10 +09:00
Fu Wei
5ae3a7f417
Merge pull request #8198 from kiashok/argsEscapedSupportInCri
Add ArgsEscaped support for CRI
2023-03-07 16:12:24 +08:00
Derek McGowan
60738e31d2
Update imgcrypt to v1.1.7
Signed-off-by: Derek McGowan <derek@mcg.dev>
2023-03-06 22:22:26 -08:00
Kirtana Ashok
8137e41c48 Add ArgsEscaped support for CRI
This commit adds supports for the ArgsEscaped
value for the image got from the dockerfile.
It is used to evaluate and process the image
entrypoint/cmd and container entrypoint/cmd
options got from the podspec.

Signed-off-by: Kirtana Ashok <Kirtana.Ashok@microsoft.com>
2023-03-03 13:38:06 -08:00
Wei Fu
55e25f1644 integration: add testcase to drain exec IO in time
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2023-03-03 11:59:07 +08:00
Wei Fu
a9cbddd65d *: fix typo and skip exec-io-drain-testcase in win
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2023-03-02 21:57:43 +08:00
Luca Comellini
8145b15f08
Bump k8s.io deps
Signed-off-by: Luca Comellini <luca.com@gmail.com>
2023-03-01 21:37:21 -08:00
Wei Fu
82c0f4ff86 pkg/cri/server: add timeout to drain exec io
By default, the child processes spawned by exec process will inherit standard
io file descriptors. The shim server creates a pipe as data channel. Both exec
process and its children write data into the write end of the pipe. And the
shim server will read data from the pipe. If the write end is still open, the
shim server will continue to wait for data from pipe.

So, if the exec command is like `bash -c "sleep 365d &"`, the exec process is
bash and quit after create `sleep 365d`. But the `sleep 365d` will hold the
write end of the pipe for a year! It doesn't make senses that CRI plugin
should wait for it.

For this case, we should use timeout to drain exec process's io instead of
waiting for it.

Fixes: #7802

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2023-03-02 13:06:45 +08:00