Commit Graph

37 Commits

Author SHA1 Message Date
Stephen J Day
50532f231a api: use weak imports for plugin protobufs
Because of a side-effect import, we have the possibility of pulling in
several unnecessary packages that are used by the plugin and not at
runtime to implement protobuf structures. Setting these imports to
`weak` prevents this from happening, reducing the total import set,
reducing memory usage and binary size.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-11-16 20:18:15 -08:00
Kenfe-Mickael Laventure
7c9be56930 Update containerd/cgroups to f7dd103d3e4e696aa67152f6b4ddd1779a3455a9
This fixes a leak of the oom_control eventfd to child processes.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-10-19 07:55:16 -07:00
Kenfe-Mickael Laventure
90c535521a Vendor go-runc ed1cbe1fc31f5fb2359d3a54b6330d1a097858b7
This fixes possible panics in Run & Restore when done without IOs

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-10-18 13:24:12 -07:00
Michael Crosby
d805f77f50 Bump cgroups dep to 38a61430f7ceb01581fba6dd7ead48
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-10-12 14:24:16 -04:00
Kenfe-Mickael Laventure
c807ba8379 Allow setting the uid & gid of the io pipes
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-10-10 13:24:12 -07:00
Lantao Liu
28ca8f05d3 Fix task load.
Signed-off-by: Lantao Liu <lantaol@google.com>
2017-10-05 21:03:24 +00:00
Michael Crosby
ed811896ed Update console dep to 84eeaae905fa414d03e07bcd6c8d
This change removes the ClearONLCR from the console package providing
a console with the default settings from the console package.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-09-26 10:17:23 -04:00
Michael Crosby
781ce658c8 Update console dep to b28c739c79ce69d017e3691ad366
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-09-20 11:16:56 -04:00
Michael Crosby
d22160c28e Vendor typeurl package
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-09-19 09:43:55 -04:00
Kenfe-Mickaël Laventure
e66d1a7961 Merge pull request #1468 from crosbymichael/stats
Add Metrics endpoint to tasks
2017-09-06 14:59:55 -07:00
Michael Crosby
2ed3c62e27 Update cgroups to 5933ab4dc4f7caa3a73a1dc141bd11f4
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-09-06 16:20:19 -04:00
Kenfe-Mickael Laventure
f766801a99 Update go-runc to b3c048c028ddd789c6f9510c597f8b9c62f25359
This fixes an issue with Exec not returning a proper error

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-09-06 08:09:09 -07:00
Michael Crosby
f45269be6b Update cgroups to 4be134fe43b9e207558365ad2675546b
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-09-05 17:26:26 -04:00
Michael Crosby
0973a084cf Update cgroups to e364e5d4183340acdf51f943ba033543
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-09-05 17:26:26 -04:00
Kenfe-Mickael Laventure
939ad32117 Update go-runc to ba22f6a82e52be3be4eb4a00000fe816f4b41c2e
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-09-01 14:50:56 -07:00
Michael Crosby
6b4c4a2937 Update reaper for multipe subscribers
Depends on https://github.com/containerd/go-runc/pull/24

The is currently a race with the reaper where you could miss some exit
events from processes.

The problem before and why the reaper was so complex was because
processes could fork, getting a pid, and then fail on an execve before
we would have time to register the process with the reaper.  This could
cause pids to fill up in a map as a way to reduce the race.

This changes makes the reaper handle multiple subscribers so that the
caller can handle locking, for when they want to wait for a specific
pid, without affecting other callers using the reaper code.

Exit events are broadcast to multiple subscribers, in the case, the runc
commands and container pids that we get from a pid-file.  Locking while
the entire container stats no longs affects runc commands where you want
to call `runc create` and wait until that has been completed.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-08-31 14:29:47 -04:00
Michael Crosby
77836a6c27 Update cgroups to e6d1aa8c71c6103624b2c6e6f4be0863
This bumps the cgroups package with various fixes to logging and net_cls
changes.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-08-21 16:17:18 -04:00
Derek McGowan
0e28f2c76e Update mount creation to only use btrfs subvolume id
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2017-08-16 13:00:54 -07:00
Michael Crosby
fa3454e54d Update go-runc to b85ac701de5065a66918203dd18f05
This includes fixes for pipe ownership and NullIO options.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-08-11 17:15:25 -04:00
Edward Pilatowicz
534a137ed3 vendor: update github.com/containerd/console
Signed-off-by: Edward Pilatowicz <edward.pilatowicz@oracle.com>
2017-08-02 17:25:29 -07:00
Edward Pilatowicz
47637f2aa2 vendor: update github.com/containerd/continuity
Signed-off-by: Edward Pilatowicz <edward.pilatowicz@oracle.com>
2017-08-02 17:22:33 -07:00
Daniel Dao
de2671b7f5 bump vendor for containerd/console update
Signed-off-by: Daniel Dao <dqminh89@gmail.com>
2017-07-28 12:23:49 +01:00
Phil Estes
5e594d035d Update containerd/fifo for race fix
Re-vendor containerd/fifo to pick up PR #13 to fix data race.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2017-07-14 15:42:44 -04:00
Michael Crosby
83a38c2cec Update runtime spec to 96de01bbb42c7af89bff100e10a
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-07-12 16:29:23 -07:00
Ian Campbell
412d455374 Rerun vndr with newest version
This excludes things marked with "// +build ignore".

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-07-12 11:01:45 +01:00
Michael Crosby
d46b562043 Update containerd dependencies
sys/unix
cgroups
go-runc
console

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-07-10 11:05:51 -07:00
Michael Crosby
49f9dc494f Update runc and runtime-spec dependencies
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-06-27 11:44:38 -07:00
Derek McGowan
a4b2e580f2 Update continuity
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2017-05-31 13:35:03 -07:00
Justin Cormack
a413d3ed0d Update go-runc and console
This removes need for cgo in both of these, and updates licenses.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-24 17:38:24 +01:00
Evan Hazlett
617a2270f6 bump fifo dependency to 69b995
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2017-05-23 14:14:54 -04:00
Michael Crosby
7cc1b64bd8 Add checkpoint and restore
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Update go-runc to 49b2a02ec1ed3e4ae52d30b54a291b75

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add shim to restore creation

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Keep checkpoint path in service

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Add C/R to non-shim build

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Checkpoint rw and image

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Pause container on bind checkpoints

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Return dump.log in error on checkpoint failure

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Pause container for checkpoint

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Update runc to 639454475cb9c8b861cc599f8bcd5c8c790ae402

For checkpoint into to work you need runc version
639454475cb9c8b861cc599f8bcd5c8c790ae402 + and criu 3.0 as this is what
I have been testing with.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Move restore behind create calls

This remove the restore RPCs in favor of providing the checkpoint
information to the `Create` calls of a container.  If provided, the
container will be created/restored from the checkpoint instead of an
existing container.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Regen protos after rebase

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-05-22 15:34:45 -07:00
Justin Cormack
6a571ecd40 Portability fixes for containerd shim
Update go-runc to master with portability fixes.

Subreaper only exists on Linux, and only Linux runs the shim in a
mount namespace.

With these changes the shim compiles on Darwin, which means the
whole build compiles without errors now.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-16 17:13:32 +01:00
Justin Cormack
699f846813 Further fixes for FreeBSD
This fixes a lot more issues for FreeBSD, including update for continuity vendor.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-11 10:45:59 +01:00
Michael Crosby
23b2b09d13 Update deps after move to containerd org
This updates containerd to use the latest versions of cgroups, fifo,
console, and go-runc from the containerd org.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-05-10 16:51:48 -07:00
Derek McGowan
98be9f4b4e Merge pull request #800 from stevvooe/revendor-continuity
vendor: move to new continuity import paths
2017-05-04 09:47:25 -07:00
Stephen J Day
1eb515c038 vendor: move to use containerd/btrfs
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-05-03 18:53:57 -07:00
Stephen J Day
b4c6e5f9d3 vendor: move to new continuity import paths
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-05-03 18:51:41 -07:00