Commit Graph

227 Commits

Author SHA1 Message Date
Daniel Canter
920b24793d go.mod: Bump ttrpc to 1.1.0
This tag contains a fix for a deadlock observed when there are multiple
simultaneous requests from the same client connection.

Signed-off-by: Daniel Canter <dcanter@microsoft.com>
2021-11-10 10:20:14 -08:00
Claudiu Belu
96018b7db9 vendor: Updates go-cni
This update will allow us to forcefully delete a Windows sandbox if its
endpoint cannot be found anymore.

Fixes: #6135

Signed-off-by: Claudiu Belu <cbelu@cloudbasesolutions.com>
2021-10-06 05:35:53 -07:00
zounengren
a217b5ac8f bump CNI to spec v1.0.0
Signed-off-by: zounengren <zouyee1989@gmail.com>
2021-10-22 10:58:40 +08:00
Derek McGowan
18d483b236 Update cgroups to v1.0.2
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-10-08 17:48:33 -07:00
zounengren
7854e0bffe bump continuity and console version that remove pkg/errors
Signed-off-by: Zou Nengren <zouyee1989@gmail.com>
2021-09-21 21:56:18 +08:00
Hajime Tazaki
8ff8b1b823 vendor: update continuity for darwin support
This picks a fix to properly handle images containing symlinks
inside which point to an unexisting file.

Signed-off-by: Hajime Tazaki <thehajime@gmail.com>
2021-09-11 08:32:37 +09:00
Davanum Srinivas
494b940f14 Introduce a new go module - containerd/api for use in standalone clients
In containerd 1.5.x, we introduced support for go modules by adding a
go.mod file in the root directory. This go.mod lists all the things
needed across the whole code base (with the exception of
integration/client which has its own go.mod). So when projects that
need to make calls to containerd API will pull in some code from
containerd/containerd, the `go mod` commands will add all the things
listed in the root go.mod to the projects go.mod file. This causes
some problems as the list of things needed to make a simple API call
is enormous. in effect, making a API call will pull everything that a
typical server needs as well as the root go.mod is all encompassing.
In general if we had smaller things folks could use, that will make it
easier by reducing the number of things that will end up in a consumers
go.mod file.

Now coming to a specific problem, the root containerd go.mod has various
k8s.io/* modules listed. Also kubernetes depends on containerd indirectly
via both moby/moby (working with docker maintainers seperately) and via
google/cadvisor. So when the kubernetes maintainers try to use latest
1.5.x containerd, they will see the kubernetes go.mod ending up depending
on the older version of kubernetes!

So if we can expose just the minimum things needed to make a client API
call then projects like cadvisor can adopt that instead of pulling in
the entire go.mod from containerd. Looking at the existing code in
cadvisor the minimum things needed would be the api/ directory from
containerd. Please see proof of concept here:
github.com/google/cadvisor/pull/2908

To enable that, in this PR, we add a go.mod file in api/ directory. we
split the Protobuild.yaml into two, one for just the things in api/
directory and the rest in the root directory. We adjust various targets
to build things correctly using `protobuild` and also ensure that we
end up with the same generated code as before as well. To ensure we
better take care of the various go.mod/go.sum files, we update the
existing `make vendor` and also add a new `make verify-vendor` that one
can run locally as well in the CI.

Ideally, we would have a `containerd/client` either as a standalone repo
or within `containerd/containerd` as a separate go module. but we will
start here to experiment with a standalone api go module first.

Also there are various follow ups we can do, for example @thaJeztah has
identified two tasks we could do after this PR lands:

github.com/containerd/containerd/pull/5716#discussion_r668821396

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-07-27 07:34:59 -04:00
Derek McGowan
0f332dadd1 Update cgroups for regenerated protos
The proto version was updated with cgroup in v1.0.0 but
the protos were not regenerated. The v1.0.1 tag fixes this.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-04-20 15:46:27 -07:00
Derek McGowan
3ef337ae3a Update containerd vendors to tags
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-04-19 10:59:29 -07:00
Sebastiaan van Stijn
1c03c377e5 go.mod: github.com/containerd/fifo v1.0.0
full diff: https://github.com/containerd/fifo/compare/115abcc95a1d...v1.0.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-04-19 09:27:45 +02:00
Samuel Karp
6dd29c25f4 go.mod: github.com/containerd/aufs
Signed-off-by: Samuel Karp <me@samuelkarp.com>
2021-04-16 15:09:31 -07:00
Samuel Karp
330a2a8092 go.mod: github.com/containerd/zfs
Signed-off-by: Samuel Karp <me@samuelkarp.com>
2021-04-16 15:08:25 -07:00
Sebastiaan van Stijn
864a3322b3 go.mod: github.com/containerd/go-cni v1.0.2
full diff: https://github.com/containerd/go-cni/compare/v1.0.1...v1.0.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-04-14 09:09:18 +02:00
Derek McGowan
c381ea27bd Merge pull request #5213 from thaJeztah/bump_typeurl
go.mod: github.com/containerd/typeurl v1.0.2
2021-04-13 20:31:25 -07:00
Sebastiaan van Stijn
d478676d35 go.mod: github.com/containerd/imgcrypt v1.1.1
No code changes other than an updated changelog, and updating to
the tagged v1.1.1:

diff: https://github.com/containerd/imgcrypt/compare/0bed51b9522c...v1.1.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-04-13 23:41:44 +02:00
Sebastiaan van Stijn
1dd45d51c7 go.mod: github.com/containerd/typeurl v1.0.2
full diff: https://github.com/containerd/typeurl/compare/v1.0.1...v1.0.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-04-13 23:21:21 +02:00
Sebastiaan van Stijn
ce116d4c59 go.mod: github.com/containerd/imgcrypt v1.1.1-0.20210412181126-0bed51b9522c
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-04-13 01:06:38 +02:00
Akihiro Suda
2943310602 go.mod: github.com/containerd/console v1.0.2
Contains fix for s390x and support for FreeBSD

https://github.com/containerd/console/compare/v1.0.1...v1.0.2

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-04-12 15:58:08 +09:00
Brian Goff
1a9c6f557b Revendor zfs to to fix integer overflow
This currently breaks armhf builds.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2021-03-24 21:37:17 +00:00
Akihiro Suda
8cdc1f13b6 go.mod: github.com/containerd/zfs v0.0.0-20210322090317-0e92c2247fb7
Contains "Implements zfs usage by returning the USED field from the zfs snapshot"
(https://github.com/containerd/zfs/pull/38)

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-03-22 16:58:00 +09:00
Sebastiaan van Stijn
569023fd51 go.mod: github.com/containerd/nri v0.0.0-20210316161719-dbaa18c31c14
full diff: eb1350a751...dbaa18c31c

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-16 17:56:01 +01:00
Sebastiaan van Stijn
0e1f59e896 go.mod: github.com/containerd/zfs v0.0.0-20210315114300-dde8f0fda960
no significant changes; removes the vendor directory in the repo

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-16 16:49:06 +01:00
Sebastiaan van Stijn
88d3881e1d go.mod: github.com/containerd/fifo v0.0.0-20210316144830-115abcc95a1d
full diff: 0724c46b32...115abcc95a

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-16 16:01:16 +01:00
Sebastiaan van Stijn
a22c43fa44 go.mod: github.com/containerd/aufs v0.0.0-20210316121734-20793ff83c97
full diff: ffdde14902...20793ff83c

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-16 15:36:29 +01:00
Sebastiaan van Stijn
f6f8617367 go.mod: github.com/containerd/btrfs v0.0.0-20210316141732-918d888fb676
full diff: 404b914980...918d888fb6

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-16 15:33:23 +01:00
Sebastiaan van Stijn
bd2c0898aa go.mod: github.com/containerd/go-runc v0.0.0-20201020171139-16b287bc67d0
full diff: 7016d3ce23...16b287bc67

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-13 20:12:12 +01:00
Sebastiaan van Stijn
24a8b460e7 go.mod: github.com/containerd/zfs v0.0.0-20210313052028-2233970b74b1
full diff: 11e8f1707f...2233970b74

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-13 10:45:23 +01:00
Sebastiaan van Stijn
f0b6bcb775 go.mod: github.com/containerd/aufs v0.0.0-20210313051948-ffdde1490233
full diff: 76a6863f29...ffdde14902

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-13 10:41:46 +01:00
Sebastiaan van Stijn
fcab1fe537 go.mod: github.com/containerd/imgcrypt 7ed62a527887
full diff: 0ae5c75f59...7ed62a5278

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-12 19:16:37 +01:00
Davanum Srinivas
c3eecf4f75 Update to newest imgcrypt, aufs and zfs
Older versions transitively dragged in k8s.io/kubernetes, the newer
versions do not.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-03-01 12:23:03 -05:00
Sebastiaan van Stijn
6be7c9f4e2 go.mod: containerd/cgroups 8a68de567b68b30602948417a7a8e99ccf00ee9b
full diff: 0b889c03f1...8a68de567b

- utils: export RunningInUserNS()
- Support updates for net_cls (adds netclsController.Update())
- Only append Hugetlb in Subsystems list when available
- dependency updates (for compatibility with recent Go versions):
    - go.mod: github.com/cilium/ebpf v0.2.0
    - go.mod: github.com/coreos/go-systemd v22.1.0
    - go.mod: sirupsen/logrus v1.7.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-02-06 13:10:35 +01:00
Samuel Karp
51f9eafd10 vendor: update continuity for FreeBSD support
Signed-off-by: Samuel Karp <me@samuelkarp.com>
2020-12-09 00:30:27 -08:00
Derek McGowan
41da96d670 Update continuity
Pickup usage calculation fix

Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-12-04 11:49:26 -08:00
Shengjing Zhu
7e46676e7c Go mod vendor
Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2020-12-01 01:41:25 +08:00
Phil Estes
6fb56aa58b Update btrfs vendor for chkptr fix for Go >= 1.14
Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-11-11 14:13:26 -05:00
Benjamin Elder
502d6adc22 Revender latest containerd/fifo
fixes build on arm64

Signed-off-by: Benjamin Elder <bentheelder@google.com>
2020-10-26 14:53:35 -07:00
Maksym Pavlenko
5afc4b4d8b Revendor latest containerd/fifo
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2020-10-26 09:04:21 -07:00
Akihiro Suda
f44b072781 Merge pull request #4593 from dmcgowan/merge-cri
Merge cri master
2020-10-08 03:41:03 +09:00
Derek McGowan
1c60ae7f87 Use local version of cri packages
Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-10-07 10:59:40 -07:00
Maksym Pavlenko
d0f6895d8d Revendor NRI
Signed-off-by: Maksym Pavlenko <mxpv@apple.com>
2020-10-07 10:34:48 -07:00
Sebastiaan van Stijn
8b5cc2e1dc vendor: containerd/console v1.0.1
full diff: https://github.com/containerd/consolve/compare/v1.0.0...v1.0.1

vendor golang.org/x/sys 2334cc1a136f0a5b4384f1a27e3634457be08553

full diff: ed371f2e16...2334cc1a13

- unix: add Darwin support for clonefile syscalls
- Adds openat2 for linux
  openat2 is a new syscall added to Linux 5.6. It provides a superset of
  openat(2) functionality, extending it with flags telling the kernel how
  to resolve the paths.

  For more info, see https://lwn.net/Articles/803237/

  NOTE that this is a second attempt to add the call; the previous one
  (https://golang.org/cl/227280) was reverted
  (https://golang.org/cl/227846) due to the test case failure on ARM
  (https://golang.org/issue/38357).

  This CL has the test case reworked to be less assumptive to the testing
  environment. In particular, it first tries if the most simplistic
  openat2() call succeeds, and skips the test otherwise. It is done that
  way because CI can be under under different kernels and in various
  envrionments -- in particular, Docker+seccomp can result in EPERM from a
  system call (which is not expected otherwise).

  For previous discussions about the test case, see
  https://golang.org/cl/227865.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-09-24 23:34:18 +02:00
Phil Estes
68d97331be Merge pull request #4538 from fuweid/update-shim-cleanup
runtime/v2: cleanup dead shim before delete bundle
2020-09-21 13:32:40 -04:00
Wei Fu
4b05d03903 runtime/v2: cleanup dead shim before delete bundle
The shim delete action needs bundle information to cleanup resources
created by shim. If the cleanup dead shim is called after delete bundle,
the part of resources maybe leaky.

The ttrpc client UserOnCloseWait() can make sure that resources are
cleanup before delete bundle, which synchronizes task deletion and
cleanup deadshim. It might slow down the task deletion, but it can make
sure that resources can be cleanup and avoid EBUSY umount case. For
example, the sandbox container like Kata/Firecracker might have mount
points over the rootfs. If containerd handles task deletion and cleanup
deadshim parallelly, the task deletion will meet EBUSY during umount and
fail to cleanup bundle, which makes case worse.

And also update cleanupAfterDeadshim, which makes sure that
cleanupAfterDeadshim must be called after shim disconnected. In some
case, shim fails to call runc-create for some reason, but the runc-create
already makes runc-init into ready state. If containerd doesn't call shim
deletion, the runc-init process will be leaky and hold the cgroup, which
makes pod terminating :(.

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2020-09-20 11:24:31 +08:00
Derek McGowan
438c87b8e0 Merge pull request #4534 from sedflix/zfs-root-path
zfs: seperate implementation pkg from plugin pkg
2020-09-18 10:28:23 -07:00
Phil Estes
1484593ee9 Merge pull request #4533 from sedflix/aufs-seperate-plugin
feat(snapshot::aufs): config root_path
2020-09-18 10:18:31 -04:00
Siddharth Yadav
96f4ce4a5c zfs: seperate implementation pkg from plugin pkg and revendor
Signed-off-by: Siddharth Yadav <sedflix@gmail.com>
2020-09-18 18:49:12 +05:30
Siddharth Yadav
2354e187c3 aufs: seperate implementation pkg from plugin pkg and revendor
Signed-off-by: Siddharth Yadav <sedflix@gmail.com>
2020-09-18 18:37:23 +05:30
ktock
309b5e623c vendor: update containerd/cri 210a86ca5b
This includes the fix for additional labels passed to snapshotter.

Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2020-09-17 14:32:01 +09:00
Sebastiaan van Stijn
d44673eb28 vendor: containerd/cgroups 0b889c03f102012f1d93a97ddd3ef71cd6f4f510
full diff: 318312a373...0b889c03f1

Relevant changes:

- v1/stats: add all fields of memory.oom_control
- memory: remove wrong memory.kmem.limit_in_bytes check

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-09-10 12:33:43 +02:00
Michael Crosby
a2b4745f7d update cri to 35e623e6bf
This includes changes for kata or other kvm based runtimes with selinux support.

Signed-off-by: Michael Crosby <michael@thepasture.io>
2020-09-02 09:46:35 -05:00