From 23b2b09d13d38d2308db4d54b489eade67f57bbc Mon Sep 17 00:00:00 2001 From: Michael Crosby Date: Wed, 10 May 2017 16:35:32 -0700 Subject: [PATCH] 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 --- cmd/containerd-shim/main_unix.go | 2 +- cmd/ctr/exec.go | 2 +- cmd/ctr/run.go | 2 +- cmd/ctr/run_unix.go | 2 +- cmd/ctr/run_windows.go | 2 +- cmd/ctr/shim.go | 2 +- cmd/ctr/utils_unix.go | 2 +- cmd/dist/common.go | 2 +- linux/runtime.go | 2 +- linux/shim/client.go | 2 +- linux/shim/exec.go | 6 +- linux/shim/init.go | 6 +- linux/shim/io.go | 6 +- linux/shim/process.go | 2 +- linux/shim/service.go | 2 +- metrics/cgroups/cgroups.go | 4 +- vendor.conf | 8 +- .../cgroups/LICENSE | 0 .../cgroups/README.md | 4 +- .../cgroups/blkio.go | 0 .../cgroups/cgroup.go | 0 .../cgroups/control.go | 0 .../cgroups/cpu.go | 0 .../cgroups/cpuacct.go | 0 .../cgroups/cpuset.go | 0 .../cgroups/devices.go | 0 .../cgroups/errors.go | 0 .../cgroups/freezer.go | 0 .../cgroups/hierarchy.go | 0 .../cgroups/hugetlb.go | 0 .../cgroups/memory.go | 0 .../cgroups/named.go | 0 .../cgroups/net_cls.go | 0 .../cgroups/net_prio.go | 0 .../cgroups/paths.go | 0 .../cgroups/perf_event.go | 0 .../cgroups/pids.go | 0 .../cgroups/prometheus/blkio.go | 2 +- .../cgroups/prometheus/cpu.go | 2 +- .../cgroups/prometheus/hugetlb.go | 2 +- .../cgroups/prometheus/memory.go | 2 +- .../cgroups/prometheus/metric.go | 2 +- .../cgroups/prometheus/metrics.go | 2 +- .../cgroups/prometheus/oom.go | 2 +- .../cgroups/prometheus/pids.go | 2 +- .../cgroups/state.go | 0 .../cgroups/stats.go | 0 .../cgroups/subsystem.go | 0 .../cgroups/systemd.go | 8 +- .../cgroups/ticks.go | 0 .../cgroups/utils.go | 0 .../cgroups/v1.go | 0 .../console/LICENSE | 0 .../console/README.md | 2 +- .../console/console.go | 8 +- .../console/console_unix.go | 0 .../console/console_windows.go | 0 .../console/tc_darwin.go | 0 .../console/tc_freebsd.go | 0 .../console/tc_linux.go | 0 .../{tonistiigi => containerd}/fifo/LICENSE | 0 .../{tonistiigi => containerd}/fifo/fifo.go | 0 .../fifo/handle_linux.go | 0 .../fifo/handle_nolinux.go | 0 .../fifo/mkfifo_nosolaris.go | 0 .../fifo/mkfifo_solaris.go | 0 .../{tonistiigi => containerd}/fifo/readme.md | 4 +- .../go-runc/LICENSE | 0 .../go-runc/README.md | 4 +- .../go-runc/console.go | 39 ++++- .../go-runc/container.go | 0 .../go-runc/events.go | 0 .../go-runc/io.go | 0 .../go-runc/monitor.go | 0 .../go-runc/runc.go | 159 ++++++++++++++++++ .../go-runc/utils.go | 0 76 files changed, 244 insertions(+), 54 deletions(-) rename vendor/github.com/{crosbymichael => containerd}/cgroups/LICENSE (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/README.md (92%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/blkio.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/cgroup.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/control.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/cpu.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/cpuacct.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/cpuset.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/devices.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/errors.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/freezer.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/hierarchy.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/hugetlb.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/memory.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/named.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/net_cls.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/net_prio.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/paths.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/perf_event.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/pids.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/blkio.go (98%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/cpu.go (98%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/hugetlb.go (97%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/memory.go (99%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/metric.go (95%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/metrics.go (98%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/oom.go (98%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/prometheus/pids.go (95%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/state.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/stats.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/subsystem.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/systemd.go (93%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/ticks.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/utils.go (100%) rename vendor/github.com/{crosbymichael => containerd}/cgroups/v1.go (100%) rename vendor/github.com/{crosbymichael => containerd}/console/LICENSE (100%) rename vendor/github.com/{crosbymichael => containerd}/console/README.md (91%) rename vendor/github.com/{crosbymichael => containerd}/console/console.go (97%) rename vendor/github.com/{crosbymichael => containerd}/console/console_unix.go (100%) rename vendor/github.com/{crosbymichael => containerd}/console/console_windows.go (100%) rename vendor/github.com/{crosbymichael => containerd}/console/tc_darwin.go (100%) rename vendor/github.com/{crosbymichael => containerd}/console/tc_freebsd.go (100%) rename vendor/github.com/{crosbymichael => containerd}/console/tc_linux.go (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/LICENSE (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/fifo.go (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/handle_linux.go (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/handle_nolinux.go (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/mkfifo_nosolaris.go (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/mkfifo_solaris.go (100%) rename vendor/github.com/{tonistiigi => containerd}/fifo/readme.md (90%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/LICENSE (100%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/README.md (87%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/console.go (64%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/container.go (100%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/events.go (100%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/io.go (100%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/monitor.go (100%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/runc.go (68%) rename vendor/github.com/{crosbymichael => containerd}/go-runc/utils.go (100%) diff --git a/cmd/containerd-shim/main_unix.go b/cmd/containerd-shim/main_unix.go index 264f3ce55..db17a6e91 100644 --- a/cmd/containerd-shim/main_unix.go +++ b/cmd/containerd-shim/main_unix.go @@ -19,7 +19,7 @@ import ( "github.com/containerd/containerd/linux/shim" "github.com/containerd/containerd/reaper" "github.com/containerd/containerd/sys" - runc "github.com/crosbymichael/go-runc" + runc "github.com/containerd/go-runc" "github.com/urfave/cli" ) diff --git a/cmd/ctr/exec.go b/cmd/ctr/exec.go index 67f440e55..fc26f1727 100644 --- a/cmd/ctr/exec.go +++ b/cmd/ctr/exec.go @@ -5,8 +5,8 @@ import ( "os" "github.com/Sirupsen/logrus" + "github.com/containerd/console" "github.com/containerd/containerd/api/services/execution" - "github.com/crosbymichael/console" "github.com/pkg/errors" "github.com/urfave/cli" ) diff --git a/cmd/ctr/run.go b/cmd/ctr/run.go index 1b38b8a57..37a1d6d2a 100644 --- a/cmd/ctr/run.go +++ b/cmd/ctr/run.go @@ -11,10 +11,10 @@ import ( "google.golang.org/grpc/codes" "github.com/Sirupsen/logrus" + "github.com/containerd/console" "github.com/containerd/containerd/api/services/execution" rootfsapi "github.com/containerd/containerd/api/services/rootfs" "github.com/containerd/containerd/images" - "github.com/crosbymichael/console" "github.com/opencontainers/image-spec/identity" ocispec "github.com/opencontainers/image-spec/specs-go/v1" "github.com/pkg/errors" diff --git a/cmd/ctr/run_unix.go b/cmd/ctr/run_unix.go index 51fea5f1d..64d765d0c 100644 --- a/cmd/ctr/run_unix.go +++ b/cmd/ctr/run_unix.go @@ -17,8 +17,8 @@ import ( "golang.org/x/sys/unix" "github.com/Sirupsen/logrus" + "github.com/containerd/console" "github.com/containerd/containerd/api/services/execution" - "github.com/crosbymichael/console" protobuf "github.com/gogo/protobuf/types" ocispec "github.com/opencontainers/image-spec/specs-go/v1" specs "github.com/opencontainers/runtime-spec/specs-go" diff --git a/cmd/ctr/run_windows.go b/cmd/ctr/run_windows.go index 27025f4a3..6782a1df8 100644 --- a/cmd/ctr/run_windows.go +++ b/cmd/ctr/run_windows.go @@ -9,11 +9,11 @@ import ( "time" "github.com/Sirupsen/logrus" + "github.com/containerd/console" "github.com/containerd/containerd/api/services/execution" "github.com/containerd/containerd/log" "github.com/containerd/containerd/windows" "github.com/containerd/containerd/windows/hcs" - "github.com/crosbymichael/console" protobuf "github.com/gogo/protobuf/types" ocispec "github.com/opencontainers/image-spec/specs-go/v1" specs "github.com/opencontainers/runtime-spec/specs-go" diff --git a/cmd/ctr/shim.go b/cmd/ctr/shim.go index 0fe528720..2582882d5 100644 --- a/cmd/ctr/shim.go +++ b/cmd/ctr/shim.go @@ -19,8 +19,8 @@ import ( "google.golang.org/grpc/grpclog" "github.com/Sirupsen/logrus" + "github.com/containerd/console" "github.com/containerd/containerd/api/services/shim" - "github.com/crosbymichael/console" protobuf "github.com/gogo/protobuf/types" "github.com/opencontainers/runtime-spec/specs-go" "github.com/pkg/errors" diff --git a/cmd/ctr/utils_unix.go b/cmd/ctr/utils_unix.go index 9ef2fcd37..e3d98a57e 100644 --- a/cmd/ctr/utils_unix.go +++ b/cmd/ctr/utils_unix.go @@ -14,8 +14,8 @@ import ( "syscall" "time" + "github.com/containerd/fifo" "github.com/pkg/errors" - "github.com/tonistiigi/fifo" "github.com/urfave/cli" "google.golang.org/grpc" "google.golang.org/grpc/grpclog" diff --git a/cmd/dist/common.go b/cmd/dist/common.go index 0f3190ae4..d54459239 100644 --- a/cmd/dist/common.go +++ b/cmd/dist/common.go @@ -11,13 +11,13 @@ import ( "strings" "time" + "github.com/containerd/console" imagesapi "github.com/containerd/containerd/api/services/images" "github.com/containerd/containerd/content" "github.com/containerd/containerd/images" "github.com/containerd/containerd/remotes" "github.com/containerd/containerd/remotes/docker" imagesservice "github.com/containerd/containerd/services/images" - "github.com/crosbymichael/console" "github.com/pkg/errors" "github.com/urfave/cli" "google.golang.org/grpc" diff --git a/linux/runtime.go b/linux/runtime.go index a9fc9b8f9..88f6aa9bf 100644 --- a/linux/runtime.go +++ b/linux/runtime.go @@ -17,7 +17,7 @@ import ( "github.com/containerd/containerd/api/types/mount" "github.com/containerd/containerd/log" "github.com/containerd/containerd/plugin" - runc "github.com/crosbymichael/go-runc" + runc "github.com/containerd/go-runc" "golang.org/x/net/context" "golang.org/x/sys/unix" diff --git a/linux/shim/client.go b/linux/shim/client.go index b44456e88..c614cf5e4 100644 --- a/linux/shim/client.go +++ b/linux/shim/client.go @@ -5,7 +5,7 @@ import ( shimapi "github.com/containerd/containerd/api/services/shim" "github.com/containerd/containerd/api/types/container" - runc "github.com/crosbymichael/go-runc" + runc "github.com/containerd/go-runc" google_protobuf "github.com/golang/protobuf/ptypes/empty" "golang.org/x/net/context" "golang.org/x/sys/unix" diff --git a/linux/shim/exec.go b/linux/shim/exec.go index 68c769504..f92ea31e5 100644 --- a/linux/shim/exec.go +++ b/linux/shim/exec.go @@ -15,11 +15,11 @@ import ( "golang.org/x/sys/unix" + "github.com/containerd/console" shimapi "github.com/containerd/containerd/api/services/shim" - "github.com/crosbymichael/console" - runc "github.com/crosbymichael/go-runc" + "github.com/containerd/fifo" + runc "github.com/containerd/go-runc" specs "github.com/opencontainers/runtime-spec/specs-go" - "github.com/tonistiigi/fifo" ) type execProcess struct { diff --git a/linux/shim/init.go b/linux/shim/init.go index 0429e6aac..039ccb606 100644 --- a/linux/shim/init.go +++ b/linux/shim/init.go @@ -13,11 +13,11 @@ import ( "golang.org/x/sys/unix" + "github.com/containerd/console" "github.com/containerd/containerd" shimapi "github.com/containerd/containerd/api/services/shim" - "github.com/crosbymichael/console" - runc "github.com/crosbymichael/go-runc" - "github.com/tonistiigi/fifo" + "github.com/containerd/fifo" + runc "github.com/containerd/go-runc" ) type initProcess struct { diff --git a/linux/shim/io.go b/linux/shim/io.go index 2360491fe..71c54daaf 100644 --- a/linux/shim/io.go +++ b/linux/shim/io.go @@ -9,9 +9,9 @@ import ( "sync" "syscall" - "github.com/crosbymichael/console" - runc "github.com/crosbymichael/go-runc" - "github.com/tonistiigi/fifo" + "github.com/containerd/console" + "github.com/containerd/fifo" + runc "github.com/containerd/go-runc" ) func copyConsole(ctx context.Context, console console.Console, stdin, stdout, stderr string, wg, cwg *sync.WaitGroup) error { diff --git a/linux/shim/process.go b/linux/shim/process.go index 07c8fd73e..69efea679 100644 --- a/linux/shim/process.go +++ b/linux/shim/process.go @@ -7,7 +7,7 @@ import ( "io" "time" - "github.com/crosbymichael/console" + "github.com/containerd/console" ) type process interface { diff --git a/linux/shim/service.go b/linux/shim/service.go index 01149120c..568ccaa05 100644 --- a/linux/shim/service.go +++ b/linux/shim/service.go @@ -8,10 +8,10 @@ import ( "sync" "syscall" + "github.com/containerd/console" shimapi "github.com/containerd/containerd/api/services/shim" "github.com/containerd/containerd/api/types/container" "github.com/containerd/containerd/reaper" - "github.com/crosbymichael/console" google_protobuf "github.com/golang/protobuf/ptypes/empty" "github.com/pkg/errors" "golang.org/x/net/context" diff --git a/metrics/cgroups/cgroups.go b/metrics/cgroups/cgroups.go index f020123f8..90245630b 100644 --- a/metrics/cgroups/cgroups.go +++ b/metrics/cgroups/cgroups.go @@ -3,10 +3,10 @@ package cgroups import ( "time" + "github.com/containerd/cgroups" + "github.com/containerd/cgroups/prometheus" "github.com/containerd/containerd" "github.com/containerd/containerd/plugin" - "github.com/crosbymichael/cgroups" - "github.com/crosbymichael/cgroups/prometheus" metrics "github.com/docker/go-metrics" "golang.org/x/net/context" ) diff --git a/vendor.conf b/vendor.conf index c3725b635..1ac5628f9 100644 --- a/vendor.conf +++ b/vendor.conf @@ -1,7 +1,7 @@ github.com/coreos/go-systemd 48702e0da86bd25e76cfef347e2adeb434a0d0a6 -github.com/crosbymichael/go-runc 65847bfc51952703ca24b564d10de50d3f2db6e7 -github.com/crosbymichael/console 2a5cbd32a84cd1268c20c69bd090ec49e37009f8 -github.com/crosbymichael/cgroups e950a27f3faf567abbf995bfbec90eaddc766d25 +github.com/containerd/go-runc 5fe4d8cb7fdc0fae5f5a7f4f1d65a565032401b2 +github.com/containerd/console a3863895279f5104533fd999c1babf80faffd98c +github.com/containerd/cgroups 7b2d1a0f50963678d5799e29d17a4d611f5a5dee github.com/docker/go-metrics 8fd5772bf1584597834c6f7961a530f06cbfbb87 github.com/godbus/dbus c7fdd8b5cd55e87b4e1f4e372cdb1db61dd6c66f github.com/prometheus/client_golang v0.8.0 @@ -20,7 +20,7 @@ github.com/containerd/btrfs e9c546f46bccffefe71a6bc137e4c21b5503cc18 github.com/stretchr/testify v1.1.4 github.com/davecgh/go-spew v1.1.0 github.com/pmezard/go-difflib v1.0.0 -github.com/tonistiigi/fifo f071cd4a2739654fec4e768a14efd9332b3e8af1 +github.com/containerd/fifo 1c36a62ed52ac0235d524d6371b746db4e4eef72 github.com/urfave/cli 8ba6f23b6e36d03666a14bd9421f5e3efcb59aca golang.org/x/net 8b4af36cd21a1f85a7484b49feb7c79363106d8e google.golang.org/grpc v1.0.5 diff --git a/vendor/github.com/crosbymichael/cgroups/LICENSE b/vendor/github.com/containerd/cgroups/LICENSE similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/LICENSE rename to vendor/github.com/containerd/cgroups/LICENSE diff --git a/vendor/github.com/crosbymichael/cgroups/README.md b/vendor/github.com/containerd/cgroups/README.md similarity index 92% rename from vendor/github.com/crosbymichael/cgroups/README.md rename to vendor/github.com/containerd/cgroups/README.md index e39bbf2d5..22cee048c 100644 --- a/vendor/github.com/crosbymichael/cgroups/README.md +++ b/vendor/github.com/containerd/cgroups/README.md @@ -1,8 +1,8 @@ # cgroups -[![Build Status](https://travis-ci.org/crosbymichael/cgroups.svg?branch=master)](https://travis-ci.org/crosbymichael/cgroups) +[![Build Status](https://travis-ci.org/containerd/cgroups.svg?branch=master)](https://travis-ci.org/containerd/cgroups) -[![codecov](https://codecov.io/gh/crosbymichael/cgroups/branch/master/graph/badge.svg)](https://codecov.io/gh/crosbymichael/cgroups) +[![codecov](https://codecov.io/gh/containerd/cgroups/branch/master/graph/badge.svg)](https://codecov.io/gh/containerd/cgroups) Go package for creating, managing, inspecting, and destroying cgroups. The resources format for settings on the cgroup uses the OCI runtime-spec found diff --git a/vendor/github.com/crosbymichael/cgroups/blkio.go b/vendor/github.com/containerd/cgroups/blkio.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/blkio.go rename to vendor/github.com/containerd/cgroups/blkio.go diff --git a/vendor/github.com/crosbymichael/cgroups/cgroup.go b/vendor/github.com/containerd/cgroups/cgroup.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/cgroup.go rename to vendor/github.com/containerd/cgroups/cgroup.go diff --git a/vendor/github.com/crosbymichael/cgroups/control.go b/vendor/github.com/containerd/cgroups/control.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/control.go rename to vendor/github.com/containerd/cgroups/control.go diff --git a/vendor/github.com/crosbymichael/cgroups/cpu.go b/vendor/github.com/containerd/cgroups/cpu.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/cpu.go rename to vendor/github.com/containerd/cgroups/cpu.go diff --git a/vendor/github.com/crosbymichael/cgroups/cpuacct.go b/vendor/github.com/containerd/cgroups/cpuacct.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/cpuacct.go rename to vendor/github.com/containerd/cgroups/cpuacct.go diff --git a/vendor/github.com/crosbymichael/cgroups/cpuset.go b/vendor/github.com/containerd/cgroups/cpuset.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/cpuset.go rename to vendor/github.com/containerd/cgroups/cpuset.go diff --git a/vendor/github.com/crosbymichael/cgroups/devices.go b/vendor/github.com/containerd/cgroups/devices.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/devices.go rename to vendor/github.com/containerd/cgroups/devices.go diff --git a/vendor/github.com/crosbymichael/cgroups/errors.go b/vendor/github.com/containerd/cgroups/errors.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/errors.go rename to vendor/github.com/containerd/cgroups/errors.go diff --git a/vendor/github.com/crosbymichael/cgroups/freezer.go b/vendor/github.com/containerd/cgroups/freezer.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/freezer.go rename to vendor/github.com/containerd/cgroups/freezer.go diff --git a/vendor/github.com/crosbymichael/cgroups/hierarchy.go b/vendor/github.com/containerd/cgroups/hierarchy.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/hierarchy.go rename to vendor/github.com/containerd/cgroups/hierarchy.go diff --git a/vendor/github.com/crosbymichael/cgroups/hugetlb.go b/vendor/github.com/containerd/cgroups/hugetlb.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/hugetlb.go rename to vendor/github.com/containerd/cgroups/hugetlb.go diff --git a/vendor/github.com/crosbymichael/cgroups/memory.go b/vendor/github.com/containerd/cgroups/memory.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/memory.go rename to vendor/github.com/containerd/cgroups/memory.go diff --git a/vendor/github.com/crosbymichael/cgroups/named.go b/vendor/github.com/containerd/cgroups/named.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/named.go rename to vendor/github.com/containerd/cgroups/named.go diff --git a/vendor/github.com/crosbymichael/cgroups/net_cls.go b/vendor/github.com/containerd/cgroups/net_cls.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/net_cls.go rename to vendor/github.com/containerd/cgroups/net_cls.go diff --git a/vendor/github.com/crosbymichael/cgroups/net_prio.go b/vendor/github.com/containerd/cgroups/net_prio.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/net_prio.go rename to vendor/github.com/containerd/cgroups/net_prio.go diff --git a/vendor/github.com/crosbymichael/cgroups/paths.go b/vendor/github.com/containerd/cgroups/paths.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/paths.go rename to vendor/github.com/containerd/cgroups/paths.go diff --git a/vendor/github.com/crosbymichael/cgroups/perf_event.go b/vendor/github.com/containerd/cgroups/perf_event.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/perf_event.go rename to vendor/github.com/containerd/cgroups/perf_event.go diff --git a/vendor/github.com/crosbymichael/cgroups/pids.go b/vendor/github.com/containerd/cgroups/pids.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/pids.go rename to vendor/github.com/containerd/cgroups/pids.go diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/blkio.go b/vendor/github.com/containerd/cgroups/prometheus/blkio.go similarity index 98% rename from vendor/github.com/crosbymichael/cgroups/prometheus/blkio.go rename to vendor/github.com/containerd/cgroups/prometheus/blkio.go index def66c6ef..485ab6094 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/blkio.go +++ b/vendor/github.com/containerd/cgroups/prometheus/blkio.go @@ -1,7 +1,7 @@ package prometheus import ( - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/cpu.go b/vendor/github.com/containerd/cgroups/prometheus/cpu.go similarity index 98% rename from vendor/github.com/crosbymichael/cgroups/prometheus/cpu.go rename to vendor/github.com/containerd/cgroups/prometheus/cpu.go index efa967253..9ad97febe 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/cpu.go +++ b/vendor/github.com/containerd/cgroups/prometheus/cpu.go @@ -3,7 +3,7 @@ package prometheus import ( "strconv" - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/hugetlb.go b/vendor/github.com/containerd/cgroups/prometheus/hugetlb.go similarity index 97% rename from vendor/github.com/crosbymichael/cgroups/prometheus/hugetlb.go rename to vendor/github.com/containerd/cgroups/prometheus/hugetlb.go index d17004fde..836034deb 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/hugetlb.go +++ b/vendor/github.com/containerd/cgroups/prometheus/hugetlb.go @@ -1,7 +1,7 @@ package prometheus import ( - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/memory.go b/vendor/github.com/containerd/cgroups/prometheus/memory.go similarity index 99% rename from vendor/github.com/crosbymichael/cgroups/prometheus/memory.go rename to vendor/github.com/containerd/cgroups/prometheus/memory.go index a6490f192..f1bbc37ad 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/memory.go +++ b/vendor/github.com/containerd/cgroups/prometheus/memory.go @@ -1,7 +1,7 @@ package prometheus import ( - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/metric.go b/vendor/github.com/containerd/cgroups/prometheus/metric.go similarity index 95% rename from vendor/github.com/crosbymichael/cgroups/prometheus/metric.go rename to vendor/github.com/containerd/cgroups/prometheus/metric.go index 44552069b..01ef132b2 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/metric.go +++ b/vendor/github.com/containerd/cgroups/prometheus/metric.go @@ -1,7 +1,7 @@ package prometheus import ( - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/metrics.go b/vendor/github.com/containerd/cgroups/prometheus/metrics.go similarity index 98% rename from vendor/github.com/crosbymichael/cgroups/prometheus/metrics.go rename to vendor/github.com/containerd/cgroups/prometheus/metrics.go index 13a4a191e..d94c4571a 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/metrics.go +++ b/vendor/github.com/containerd/cgroups/prometheus/metrics.go @@ -6,7 +6,7 @@ import ( "sync" "github.com/Sirupsen/logrus" - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/oom.go b/vendor/github.com/containerd/cgroups/prometheus/oom.go similarity index 98% rename from vendor/github.com/crosbymichael/cgroups/prometheus/oom.go rename to vendor/github.com/containerd/cgroups/prometheus/oom.go index a1a90880e..02df30d3a 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/oom.go +++ b/vendor/github.com/containerd/cgroups/prometheus/oom.go @@ -6,7 +6,7 @@ import ( "golang.org/x/sys/unix" "github.com/Sirupsen/logrus" - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" ) diff --git a/vendor/github.com/crosbymichael/cgroups/prometheus/pids.go b/vendor/github.com/containerd/cgroups/prometheus/pids.go similarity index 95% rename from vendor/github.com/crosbymichael/cgroups/prometheus/pids.go rename to vendor/github.com/containerd/cgroups/prometheus/pids.go index efc43f4f3..fa3708eb8 100644 --- a/vendor/github.com/crosbymichael/cgroups/prometheus/pids.go +++ b/vendor/github.com/containerd/cgroups/prometheus/pids.go @@ -1,7 +1,7 @@ package prometheus import ( - "github.com/crosbymichael/cgroups" + "github.com/containerd/cgroups" metrics "github.com/docker/go-metrics" "github.com/prometheus/client_golang/prometheus" ) diff --git a/vendor/github.com/crosbymichael/cgroups/state.go b/vendor/github.com/containerd/cgroups/state.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/state.go rename to vendor/github.com/containerd/cgroups/state.go diff --git a/vendor/github.com/crosbymichael/cgroups/stats.go b/vendor/github.com/containerd/cgroups/stats.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/stats.go rename to vendor/github.com/containerd/cgroups/stats.go diff --git a/vendor/github.com/crosbymichael/cgroups/subsystem.go b/vendor/github.com/containerd/cgroups/subsystem.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/subsystem.go rename to vendor/github.com/containerd/cgroups/subsystem.go diff --git a/vendor/github.com/crosbymichael/cgroups/systemd.go b/vendor/github.com/containerd/cgroups/systemd.go similarity index 93% rename from vendor/github.com/crosbymichael/cgroups/systemd.go rename to vendor/github.com/containerd/cgroups/systemd.go index aae65037d..5e052a821 100644 --- a/vendor/github.com/crosbymichael/cgroups/systemd.go +++ b/vendor/github.com/containerd/cgroups/systemd.go @@ -1,5 +1,3 @@ -// +build systemd - package cgroups import ( @@ -19,7 +17,7 @@ const ( ) func Systemd() ([]Subsystem, error) { - root, err := unifiedMountPoint() + root, err := v1MountPoint() if err != nil { return nil, err } @@ -39,8 +37,8 @@ func Slice(slice, name string) Path { if slice == "" { slice = defaultSlice } - return func(subsystem Name) string { - return filepath.Join(slice, unitName(name)) + return func(subsystem Name) (string, error) { + return filepath.Join(slice, unitName(name)), nil } } diff --git a/vendor/github.com/crosbymichael/cgroups/ticks.go b/vendor/github.com/containerd/cgroups/ticks.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/ticks.go rename to vendor/github.com/containerd/cgroups/ticks.go diff --git a/vendor/github.com/crosbymichael/cgroups/utils.go b/vendor/github.com/containerd/cgroups/utils.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/utils.go rename to vendor/github.com/containerd/cgroups/utils.go diff --git a/vendor/github.com/crosbymichael/cgroups/v1.go b/vendor/github.com/containerd/cgroups/v1.go similarity index 100% rename from vendor/github.com/crosbymichael/cgroups/v1.go rename to vendor/github.com/containerd/cgroups/v1.go diff --git a/vendor/github.com/crosbymichael/console/LICENSE b/vendor/github.com/containerd/console/LICENSE similarity index 100% rename from vendor/github.com/crosbymichael/console/LICENSE rename to vendor/github.com/containerd/console/LICENSE diff --git a/vendor/github.com/crosbymichael/console/README.md b/vendor/github.com/containerd/console/README.md similarity index 91% rename from vendor/github.com/crosbymichael/console/README.md rename to vendor/github.com/containerd/console/README.md index b2e38bba4..3881cd4eb 100644 --- a/vendor/github.com/crosbymichael/console/README.md +++ b/vendor/github.com/containerd/console/README.md @@ -1,6 +1,6 @@ # console -[![Build Status](https://travis-ci.org/crosbymichael/console.svg?branch=master)](https://travis-ci.org/crosbymichael/console) +[![Build Status](https://travis-ci.org/containerd/console.svg?branch=master)](https://travis-ci.org/containerd/console) Golang package for dealing with consoles. Light on deps and a simple API. diff --git a/vendor/github.com/crosbymichael/console/console.go b/vendor/github.com/containerd/console/console.go similarity index 97% rename from vendor/github.com/crosbymichael/console/console.go rename to vendor/github.com/containerd/console/console.go index 8be788b35..08d255dd0 100644 --- a/vendor/github.com/crosbymichael/console/console.go +++ b/vendor/github.com/containerd/console/console.go @@ -30,12 +30,12 @@ type Console interface { // WinSize specifies the window size of the console type WinSize struct { - // Width of the console - Width uint16 // Height of the console Height uint16 - x uint16 - y uint16 + // Width of the console + Width uint16 + x uint16 + y uint16 } // Current returns the current processes console diff --git a/vendor/github.com/crosbymichael/console/console_unix.go b/vendor/github.com/containerd/console/console_unix.go similarity index 100% rename from vendor/github.com/crosbymichael/console/console_unix.go rename to vendor/github.com/containerd/console/console_unix.go diff --git a/vendor/github.com/crosbymichael/console/console_windows.go b/vendor/github.com/containerd/console/console_windows.go similarity index 100% rename from vendor/github.com/crosbymichael/console/console_windows.go rename to vendor/github.com/containerd/console/console_windows.go diff --git a/vendor/github.com/crosbymichael/console/tc_darwin.go b/vendor/github.com/containerd/console/tc_darwin.go similarity index 100% rename from vendor/github.com/crosbymichael/console/tc_darwin.go rename to vendor/github.com/containerd/console/tc_darwin.go diff --git a/vendor/github.com/crosbymichael/console/tc_freebsd.go b/vendor/github.com/containerd/console/tc_freebsd.go similarity index 100% rename from vendor/github.com/crosbymichael/console/tc_freebsd.go rename to vendor/github.com/containerd/console/tc_freebsd.go diff --git a/vendor/github.com/crosbymichael/console/tc_linux.go b/vendor/github.com/containerd/console/tc_linux.go similarity index 100% rename from vendor/github.com/crosbymichael/console/tc_linux.go rename to vendor/github.com/containerd/console/tc_linux.go diff --git a/vendor/github.com/tonistiigi/fifo/LICENSE b/vendor/github.com/containerd/fifo/LICENSE similarity index 100% rename from vendor/github.com/tonistiigi/fifo/LICENSE rename to vendor/github.com/containerd/fifo/LICENSE diff --git a/vendor/github.com/tonistiigi/fifo/fifo.go b/vendor/github.com/containerd/fifo/fifo.go similarity index 100% rename from vendor/github.com/tonistiigi/fifo/fifo.go rename to vendor/github.com/containerd/fifo/fifo.go diff --git a/vendor/github.com/tonistiigi/fifo/handle_linux.go b/vendor/github.com/containerd/fifo/handle_linux.go similarity index 100% rename from vendor/github.com/tonistiigi/fifo/handle_linux.go rename to vendor/github.com/containerd/fifo/handle_linux.go diff --git a/vendor/github.com/tonistiigi/fifo/handle_nolinux.go b/vendor/github.com/containerd/fifo/handle_nolinux.go similarity index 100% rename from vendor/github.com/tonistiigi/fifo/handle_nolinux.go rename to vendor/github.com/containerd/fifo/handle_nolinux.go diff --git a/vendor/github.com/tonistiigi/fifo/mkfifo_nosolaris.go b/vendor/github.com/containerd/fifo/mkfifo_nosolaris.go similarity index 100% rename from vendor/github.com/tonistiigi/fifo/mkfifo_nosolaris.go rename to vendor/github.com/containerd/fifo/mkfifo_nosolaris.go diff --git a/vendor/github.com/tonistiigi/fifo/mkfifo_solaris.go b/vendor/github.com/containerd/fifo/mkfifo_solaris.go similarity index 100% rename from vendor/github.com/tonistiigi/fifo/mkfifo_solaris.go rename to vendor/github.com/containerd/fifo/mkfifo_solaris.go diff --git a/vendor/github.com/tonistiigi/fifo/readme.md b/vendor/github.com/containerd/fifo/readme.md similarity index 90% rename from vendor/github.com/tonistiigi/fifo/readme.md rename to vendor/github.com/containerd/fifo/readme.md index 1c8266906..2b41b3b1c 100644 --- a/vendor/github.com/tonistiigi/fifo/readme.md +++ b/vendor/github.com/containerd/fifo/readme.md @@ -1,5 +1,7 @@ ### fifo +[![Build Status](https://travis-ci.org/containerd/fifo.svg?branch=master)](https://travis-ci.org/containerd/fifo) + Go package for handling fifos in a sane way. ``` @@ -27,4 +29,4 @@ func (f *fifo) Write(b []byte) (int, error) // Close the fifo. Next reads/writes will error. This method can also be used // before open(2) has returned and fifo was never opened. func (f *fifo) Close() error -``` \ No newline at end of file +``` diff --git a/vendor/github.com/crosbymichael/go-runc/LICENSE b/vendor/github.com/containerd/go-runc/LICENSE similarity index 100% rename from vendor/github.com/crosbymichael/go-runc/LICENSE rename to vendor/github.com/containerd/go-runc/LICENSE diff --git a/vendor/github.com/crosbymichael/go-runc/README.md b/vendor/github.com/containerd/go-runc/README.md similarity index 87% rename from vendor/github.com/crosbymichael/go-runc/README.md rename to vendor/github.com/containerd/go-runc/README.md index bf57843cd..262977349 100644 --- a/vendor/github.com/crosbymichael/go-runc/README.md +++ b/vendor/github.com/containerd/go-runc/README.md @@ -1,6 +1,6 @@ # go-runc -[![Build Status](https://travis-ci.org/crosbymichael/go-runc.svg?branch=master)](https://travis-ci.org/crosbymichael/go-runc) +[![Build Status](https://travis-ci.org/containerd/go-runc.svg?branch=master)](https://travis-ci.org/containerd/go-runc) This is a package for consuming the [runc](https://github.com/opencontainers/runc) binary in your Go applications. @@ -11,7 +11,7 @@ or greater. ## Docs -Docs can be found at [godoc.org](https://godoc.org/github.com/crosbymichael/go-runc). +Docs can be found at [godoc.org](https://godoc.org/github.com/containerd/go-runc). ## LICENSE - MIT diff --git a/vendor/github.com/crosbymichael/go-runc/console.go b/vendor/github.com/containerd/go-runc/console.go similarity index 64% rename from vendor/github.com/crosbymichael/go-runc/console.go rename to vendor/github.com/containerd/go-runc/console.go index 631b9e9fb..d84bd9f0f 100644 --- a/vendor/github.com/crosbymichael/go-runc/console.go +++ b/vendor/github.com/containerd/go-runc/console.go @@ -4,10 +4,12 @@ package runc import ( "fmt" + "io/ioutil" "net" + "os" "path/filepath" - "github.com/crosbymichael/console" + "github.com/containerd/console" "github.com/opencontainers/runc/libcontainer/utils" ) @@ -28,10 +30,33 @@ func NewConsoleSocket(path string) (*Socket, error) { }, nil } +// NewTempConsoleSocket returns a temp console socket for use with a container +// On Close(), the socket is deleted +func NewTempConsoleSocket() (*Socket, error) { + dir, err := ioutil.TempDir("", "pty") + if err != nil { + return nil, err + } + abs, err := filepath.Abs(filepath.Join(dir, "pty.sock")) + if err != nil { + return nil, err + } + l, err := net.Listen("unix", abs) + if err != nil { + return nil, err + } + return &Socket{ + l: l, + rmdir: true, + path: abs, + }, nil +} + // Socket is a unix socket that accepts the pty master created by runc type Socket struct { - path string - l net.Listener + path string + rmdir bool + l net.Listener } // Path returns the path to the unix socket on disk @@ -63,5 +88,11 @@ func (c *Socket) ReceiveMaster() (console.Console, error) { // Close closes the unix socket func (c *Socket) Close() error { - return c.l.Close() + err := c.l.Close() + if c.rmdir { + if rerr := os.RemoveAll(filepath.Dir(c.path)); err == nil { + err = rerr + } + } + return err } diff --git a/vendor/github.com/crosbymichael/go-runc/container.go b/vendor/github.com/containerd/go-runc/container.go similarity index 100% rename from vendor/github.com/crosbymichael/go-runc/container.go rename to vendor/github.com/containerd/go-runc/container.go diff --git a/vendor/github.com/crosbymichael/go-runc/events.go b/vendor/github.com/containerd/go-runc/events.go similarity index 100% rename from vendor/github.com/crosbymichael/go-runc/events.go rename to vendor/github.com/containerd/go-runc/events.go diff --git a/vendor/github.com/crosbymichael/go-runc/io.go b/vendor/github.com/containerd/go-runc/io.go similarity index 100% rename from vendor/github.com/crosbymichael/go-runc/io.go rename to vendor/github.com/containerd/go-runc/io.go diff --git a/vendor/github.com/crosbymichael/go-runc/monitor.go b/vendor/github.com/containerd/go-runc/monitor.go similarity index 100% rename from vendor/github.com/crosbymichael/go-runc/monitor.go rename to vendor/github.com/containerd/go-runc/monitor.go diff --git a/vendor/github.com/crosbymichael/go-runc/runc.go b/vendor/github.com/containerd/go-runc/runc.go similarity index 68% rename from vendor/github.com/crosbymichael/go-runc/runc.go rename to vendor/github.com/containerd/go-runc/runc.go index 331d0b462..9515deb7f 100644 --- a/vendor/github.com/crosbymichael/go-runc/runc.go +++ b/vendor/github.com/containerd/go-runc/runc.go @@ -1,6 +1,7 @@ package runc import ( + "bytes" "context" "encoding/json" "fmt" @@ -36,6 +37,7 @@ type Runc struct { Log string LogFormat Format PdeathSignal syscall.Signal + Criu string } // List returns all containers created inside the provided runc root directory @@ -348,6 +350,160 @@ func (r *Runc) Ps(context context.Context, id string) ([]int, error) { return pids, nil } +type CheckpointOpts struct { + // ImagePath is the path for saving the criu image file + ImagePath string + // WorkDir is the working directory for criu + WorkDir string + // ParentPath is the path for previous image files from a pre-dump + ParentPath string + // AllowOpenTCP allows open tcp connections to be checkpointed + AllowOpenTCP bool + // AllowExternalUnixSockets allows external unix sockets to be checkpointed + AllowExternalUnixSockets bool + // AllowTerminal allows the terminal(pty) to be checkpointed with a container + AllowTerminal bool + // CriuPageServer is the address:port for the criu page server + CriuPageServer string + // FileLocks handle file locks held by the container + FileLocks bool + // Cgroups is the cgroup mode for how to handle the checkpoint of a container's cgroups + Cgroups CgroupMode + // EmptyNamespaces creates a namespace for the container but does not save its properties + // Provide the namespaces you wish to be checkpointed without their settings on restore + EmptyNamespaces []string +} + +type CgroupMode string + +const ( + Soft CgroupMode = "soft" + Full CgroupMode = "full" + Strict CgroupMode = "strict" +) + +func (o *CheckpointOpts) args() (out []string) { + if o.ImagePath != "" { + out = append(out, "--image-path", o.ImagePath) + } + if o.WorkDir != "" { + out = append(out, "--work-path", o.WorkDir) + } + if o.ParentPath != "" { + out = append(out, "--parent-path", o.ParentPath) + } + if o.AllowOpenTCP { + out = append(out, "--tcp-established") + } + if o.AllowExternalUnixSockets { + out = append(out, "--ext-unix-sk") + } + if o.AllowTerminal { + out = append(out, "--shell-job") + } + if o.CriuPageServer != "" { + out = append(out, "--page-server", o.CriuPageServer) + } + if o.FileLocks { + out = append(out, "--file-locks") + } + if string(o.Cgroups) != "" { + out = append(out, "--manage-cgroups-mode", string(o.Cgroups)) + } + for _, ns := range o.EmptyNamespaces { + out = append(out, "--empty-ns", ns) + } + return out +} + +type CheckpointAction func([]string) []string + +// LeaveRunning keeps the container running after the checkpoint has been completed +func LeaveRunning(args []string) []string { + return append(args, "--leave-running") +} + +// PreDump allows a pre-dump of the checkpoint to be made and completed later +func PreDump(args []string) []string { + return append(args, "--pre-dump") +} + +// Checkpoint allows you to checkpoint a container using criu +func (r *Runc) Checkpoint(context context.Context, id string, opts *CheckpointOpts, actions ...CheckpointAction) error { + args := []string{"checkpoint"} + if opts != nil { + args = append(args, opts.args()...) + } + for _, a := range actions { + args = a(args) + } + return r.runOrError(r.command(context, append(args, id)...)) +} + +type RestoreOpts struct { + CheckpointOpts + IO + + Detach bool + PidFile string + NoSubreaper bool + NoPivot bool +} + +func (o *RestoreOpts) args() ([]string, error) { + out := o.CheckpointOpts.args() + if o.Detach { + out = append(out, "--detach") + } + if o.PidFile != "" { + abs, err := filepath.Abs(o.PidFile) + if err != nil { + return nil, err + } + out = append(out, "--pid-file", abs) + } + if o.NoPivot { + out = append(out, "--no-pivot") + } + if o.NoSubreaper { + out = append(out, "-no-subreaper") + } + return out, nil +} + +// Restore restores a container with the provide id from an existing checkpoint +func (r *Runc) Restore(context context.Context, id, bundle string, opts *RestoreOpts) (int, error) { + args := []string{"restore"} + if opts != nil { + oargs, err := opts.args() + if err != nil { + return -1, err + } + args = append(args, oargs...) + } + args = append(args, "--bundle", bundle) + cmd := r.command(context, append(args, id)...) + if opts != nil { + opts.Set(cmd) + } + if err := Monitor.Start(cmd); err != nil { + return -1, err + } + return Monitor.Wait(cmd) +} + +// Update updates the current container with the provided resource spec +func (r *Runc) Update(context context.Context, id string, resources *specs.LinuxResources) error { + buf := bytes.NewBuffer(nil) + if err := json.NewEncoder(buf).Encode(resources); err != nil { + return err + } + args := []string{"update", "--resources", "-", id} + cmd := r.command(context, args...) + cmd.Stdin = buf + return r.runOrError(cmd) +} + func (r *Runc) args() (out []string) { if r.Root != "" { out = append(out, "--root", r.Root) @@ -361,6 +517,9 @@ func (r *Runc) args() (out []string) { if r.LogFormat != none { out = append(out, "--log-format", string(r.LogFormat)) } + if r.Criu != "" { + out = append(out, "--criu", r.Criu) + } return out } diff --git a/vendor/github.com/crosbymichael/go-runc/utils.go b/vendor/github.com/containerd/go-runc/utils.go similarity index 100% rename from vendor/github.com/crosbymichael/go-runc/utils.go rename to vendor/github.com/containerd/go-runc/utils.go