diff --git a/README.md b/README.md index b61ba0a4b..fd34b7561 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ [![Build Status](https://api.travis-ci.org/containerd/cri-containerd.svg?style=flat-square)](https://travis-ci.org/containerd/cri-containerd) [![Go Report Card](https://goreportcard.com/badge/github.com/containerd/cri-containerd?style=flat-square)](https://goreportcard.com/report/github.com/containerd/cri-containerd) -`cri-containerd` is a [containerd](https://containerd.io/) based implementation of Kubernetes [container runtime interface (CRI)](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto). +`cri-containerd` is a [containerd](https://containerd.io/) based implementation of Kubernetes [container runtime interface (CRI)](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/apis/cri/runtime/v1alpha2/api.proto). With it, you could run Kubernetes using containerd as the container runtime. ![cri-containerd](./docs/cri-containerd.png) diff --git a/docs/architecture.md b/docs/architecture.md index e358968ce..2df2bb09c 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -1,7 +1,7 @@ # Architecture of CRI-Containerd This document describes the architecture of `cri-containerd`. -Cri-containerd is a containerd based implementation of Kubernetes [container runtime interface (CRI)](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto). It operates on the same node as the [Kubelet](https://kubernetes.io/docs/reference/generated/kubelet/) and [containerd](https://github.com/containerd/containerd). Layered between Kubernetes and containerd, cri-containerd handles all CRI service requests from the Kubelet and uses containerd to manage containers and container images. +Cri-containerd is a containerd based implementation of Kubernetes [container runtime interface (CRI)](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/apis/cri/runtime/v1alpha2/api.proto). It operates on the same node as the [Kubelet](https://kubernetes.io/docs/reference/generated/kubelet/) and [containerd](https://github.com/containerd/containerd). Layered between Kubernetes and containerd, cri-containerd handles all CRI service requests from the Kubelet and uses containerd to manage containers and container images. Cri-containerd uses containerd to manage the full container lifecycle and all container images. As also shown below, cri-containerd manages pod networking via [CNI](https://github.com/containernetworking/cni) (another CNCF project). diff --git a/integration/container_stats_test.go b/integration/container_stats_test.go index b486db338..7595c4d9a 100644 --- a/integration/container_stats_test.go +++ b/integration/container_stats_test.go @@ -23,7 +23,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // Test to verify for a container ID diff --git a/integration/container_update_resources_test.go b/integration/container_update_resources_test.go index 2d301feff..660f48826 100644 --- a/integration/container_update_resources_test.go +++ b/integration/container_update_resources_test.go @@ -24,7 +24,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func checkMemoryLimit(t *testing.T, spec *runtimespec.Spec, memLimit int64) { diff --git a/integration/image_load_test.go b/integration/image_load_test.go index 643aecad4..5eb8b62b0 100644 --- a/integration/image_load_test.go +++ b/integration/image_load_test.go @@ -25,7 +25,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" api "github.com/containerd/cri-containerd/pkg/api/v1" ) diff --git a/integration/imagefs_info_test.go b/integration/imagefs_info_test.go index 8ec94ffe6..0afc2ec14 100644 --- a/integration/imagefs_info_test.go +++ b/integration/imagefs_info_test.go @@ -24,7 +24,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestImageFSInfo(t *testing.T) { diff --git a/integration/restart_test.go b/integration/restart_test.go index db4497635..aaa953985 100644 --- a/integration/restart_test.go +++ b/integration/restart_test.go @@ -27,7 +27,7 @@ import ( "github.com/stretchr/testify/require" "golang.org/x/net/context" "golang.org/x/sys/unix" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // Restart test must run sequentially. diff --git a/integration/sandbox_clean_remove_test.go b/integration/sandbox_clean_remove_test.go index e1295567b..b8fb69fd6 100644 --- a/integration/sandbox_clean_remove_test.go +++ b/integration/sandbox_clean_remove_test.go @@ -24,7 +24,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestSandboxCleanRemove(t *testing.T) { diff --git a/integration/test_utils.go b/integration/test_utils.go index 1c975e4b6..b6ee1eb7d 100644 --- a/integration/test_utils.go +++ b/integration/test_utils.go @@ -26,7 +26,7 @@ import ( "github.com/containerd/containerd" "github.com/sirupsen/logrus" "k8s.io/kubernetes/pkg/kubelet/apis/cri" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" "k8s.io/kubernetes/pkg/kubelet/remote" api "github.com/containerd/cri-containerd/pkg/api/v1" diff --git a/integration/truncindex_test.go b/integration/truncindex_test.go index 679b7d217..7d4bbc56c 100644 --- a/integration/truncindex_test.go +++ b/integration/truncindex_test.go @@ -21,7 +21,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func genTruncIndex(normalName string) string { diff --git a/integration/volume_copy_up_test.go b/integration/volume_copy_up_test.go index c26bd3eb1..27bc02cbb 100644 --- a/integration/volume_copy_up_test.go +++ b/integration/volume_copy_up_test.go @@ -24,7 +24,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestVolumeCopyUp(t *testing.T) { diff --git a/pkg/server/container_attach.go b/pkg/server/container_attach.go index 901d2ecf3..116c0cf4e 100644 --- a/pkg/server/container_attach.go +++ b/pkg/server/container_attach.go @@ -24,7 +24,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/net/context" "k8s.io/client-go/tools/remotecommand" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cio "github.com/containerd/cri-containerd/pkg/server/io" ) diff --git a/pkg/server/container_exec.go b/pkg/server/container_exec.go index bcaf2a1c5..3b2374195 100644 --- a/pkg/server/container_exec.go +++ b/pkg/server/container_exec.go @@ -20,7 +20,7 @@ import ( "fmt" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // Exec prepares a streaming endpoint to execute a command in the container, and returns the address. diff --git a/pkg/server/container_execsync.go b/pkg/server/container_execsync.go index af04cdfca..e38adc19c 100644 --- a/pkg/server/container_execsync.go +++ b/pkg/server/container_execsync.go @@ -29,7 +29,7 @@ import ( "golang.org/x/net/context" "golang.org/x/sys/unix" "k8s.io/client-go/tools/remotecommand" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cioutil "github.com/containerd/cri-containerd/pkg/ioutil" cio "github.com/containerd/cri-containerd/pkg/server/io" diff --git a/pkg/server/container_list.go b/pkg/server/container_list.go index f7c39dc13..b8e1c0c46 100644 --- a/pkg/server/container_list.go +++ b/pkg/server/container_list.go @@ -19,7 +19,7 @@ package server import ( "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" ) diff --git a/pkg/server/container_list_test.go b/pkg/server/container_list_test.go index 09e2136c8..03eddbd69 100644 --- a/pkg/server/container_list_test.go +++ b/pkg/server/container_list_test.go @@ -23,7 +23,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" sandboxstore "github.com/containerd/cri-containerd/pkg/store/sandbox" diff --git a/pkg/server/container_log_reopen.go b/pkg/server/container_log_reopen.go new file mode 100644 index 000000000..3df4f3efd --- /dev/null +++ b/pkg/server/container_log_reopen.go @@ -0,0 +1,31 @@ +/* +Copyright 2018 The Containerd Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package server + +import ( + "errors" + "golang.org/x/net/context" + + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" +) + +// ReopenContainerLog asks cri-containerd to reopen the stdout/stderr log file for the container. +// This is often called after the log file has been rotated. +// TODO(random-liu): Implement this for kubelet log rotation. +func (c *criContainerdService) ReopenContainerLog(ctx context.Context, r *runtime.ReopenContainerLogRequest) (*runtime.ReopenContainerLogResponse, error) { + return nil, errors.New("not implemented") +} diff --git a/pkg/server/container_remove.go b/pkg/server/container_remove.go index 0cbbb5001..6179bf658 100644 --- a/pkg/server/container_remove.go +++ b/pkg/server/container_remove.go @@ -24,7 +24,7 @@ import ( "github.com/docker/docker/pkg/system" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" "github.com/containerd/cri-containerd/pkg/log" "github.com/containerd/cri-containerd/pkg/store" diff --git a/pkg/server/container_start.go b/pkg/server/container_start.go index 56e05459d..d16cecf86 100644 --- a/pkg/server/container_start.go +++ b/pkg/server/container_start.go @@ -26,7 +26,7 @@ import ( "github.com/containerd/containerd/errdefs" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cio "github.com/containerd/cri-containerd/pkg/server/io" containerstore "github.com/containerd/cri-containerd/pkg/store/container" diff --git a/pkg/server/container_stats.go b/pkg/server/container_stats.go index b6f4908c0..e44ce5bd0 100644 --- a/pkg/server/container_stats.go +++ b/pkg/server/container_stats.go @@ -21,7 +21,7 @@ import ( tasks "github.com/containerd/containerd/api/services/tasks/v1" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // ContainerStats returns stats of the container. If the container does not diff --git a/pkg/server/container_stats_list.go b/pkg/server/container_stats_list.go index 547ddb6d1..672edbeca 100644 --- a/pkg/server/container_stats_list.go +++ b/pkg/server/container_stats_list.go @@ -24,7 +24,7 @@ import ( "github.com/containerd/containerd/api/types" "github.com/containerd/typeurl" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" ) diff --git a/pkg/server/container_status.go b/pkg/server/container_status.go index 50e56fe2e..02a41ae1d 100644 --- a/pkg/server/container_status.go +++ b/pkg/server/container_status.go @@ -23,7 +23,7 @@ import ( runtimespec "github.com/opencontainers/runtime-spec/specs-go" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" ) diff --git a/pkg/server/container_status_test.go b/pkg/server/container_status_test.go index d70b0f395..2920a0a71 100644 --- a/pkg/server/container_status_test.go +++ b/pkg/server/container_status_test.go @@ -22,7 +22,7 @@ import ( "github.com/stretchr/testify/assert" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" imagestore "github.com/containerd/cri-containerd/pkg/store/image" diff --git a/pkg/server/container_stop.go b/pkg/server/container_stop.go index 1ee2dead7..bf892190a 100644 --- a/pkg/server/container_stop.go +++ b/pkg/server/container_stop.go @@ -26,7 +26,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/net/context" "golang.org/x/sys/unix" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" ) diff --git a/pkg/server/container_update_resources.go b/pkg/server/container_update_resources.go index fac7a1b43..261ff84f7 100644 --- a/pkg/server/container_update_resources.go +++ b/pkg/server/container_update_resources.go @@ -27,7 +27,7 @@ import ( runtimespec "github.com/opencontainers/runtime-spec/specs-go" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerstore "github.com/containerd/cri-containerd/pkg/store/container" "github.com/containerd/cri-containerd/pkg/util" diff --git a/pkg/server/container_update_resources_test.go b/pkg/server/container_update_resources_test.go index ea04e2d77..a403a8fa2 100644 --- a/pkg/server/container_update_resources_test.go +++ b/pkg/server/container_update_resources_test.go @@ -22,7 +22,7 @@ import ( "github.com/golang/protobuf/proto" runtimespec "github.com/opencontainers/runtime-spec/specs-go" "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestUpdateOCILinuxResource(t *testing.T) { diff --git a/pkg/server/helpers_selinux_test.go b/pkg/server/helpers_selinux_test.go index 259b65fd7..235dcff9d 100644 --- a/pkg/server/helpers_selinux_test.go +++ b/pkg/server/helpers_selinux_test.go @@ -23,7 +23,7 @@ import ( "github.com/opencontainers/selinux/go-selinux" "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestInitSelinuxOpts(t *testing.T) { diff --git a/pkg/server/image_list.go b/pkg/server/image_list.go index a5356f9d8..6e19e341e 100644 --- a/pkg/server/image_list.go +++ b/pkg/server/image_list.go @@ -18,7 +18,7 @@ package server import ( "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" imagestore "github.com/containerd/cri-containerd/pkg/store/image" ) diff --git a/pkg/server/image_list_test.go b/pkg/server/image_list_test.go index dc1c7a231..892a27118 100644 --- a/pkg/server/image_list_test.go +++ b/pkg/server/image_list_test.go @@ -23,7 +23,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" imagestore "github.com/containerd/cri-containerd/pkg/store/image" ) diff --git a/pkg/server/image_pull.go b/pkg/server/image_pull.go index 884f0dd7c..02bcfb902 100644 --- a/pkg/server/image_pull.go +++ b/pkg/server/image_pull.go @@ -28,7 +28,7 @@ import ( imagespec "github.com/opencontainers/image-spec/specs-go/v1" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" containerdresolver "github.com/containerd/cri-containerd/pkg/containerd/resolver" imagestore "github.com/containerd/cri-containerd/pkg/store/image" diff --git a/pkg/server/image_pull_test.go b/pkg/server/image_pull_test.go index 55aefa420..1fa9d7703 100644 --- a/pkg/server/image_pull_test.go +++ b/pkg/server/image_pull_test.go @@ -21,7 +21,7 @@ import ( "testing" "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestParseAuth(t *testing.T) { diff --git a/pkg/server/image_remove.go b/pkg/server/image_remove.go index 3ff6c006b..d0f7db548 100644 --- a/pkg/server/image_remove.go +++ b/pkg/server/image_remove.go @@ -23,7 +23,7 @@ import ( "github.com/containerd/containerd/images" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // RemoveImage removes the image. diff --git a/pkg/server/image_status.go b/pkg/server/image_status.go index 7159ea448..d2f78158f 100644 --- a/pkg/server/image_status.go +++ b/pkg/server/image_status.go @@ -22,7 +22,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" imagestore "github.com/containerd/cri-containerd/pkg/store/image" imagespec "github.com/opencontainers/image-spec/specs-go/v1" diff --git a/pkg/server/image_status_test.go b/pkg/server/image_status_test.go index 750fa9700..b76e7c0a4 100644 --- a/pkg/server/image_status_test.go +++ b/pkg/server/image_status_test.go @@ -23,7 +23,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" imagestore "github.com/containerd/cri-containerd/pkg/store/image" ) diff --git a/pkg/server/imagefs_info.go b/pkg/server/imagefs_info.go index 90af8deb4..c4fdb760d 100644 --- a/pkg/server/imagefs_info.go +++ b/pkg/server/imagefs_info.go @@ -21,7 +21,7 @@ import ( "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // ImageFsInfo returns information of the filesystem that is used to store images. diff --git a/pkg/server/imagefs_info_test.go b/pkg/server/imagefs_info_test.go index 158a24cff..e07ed0896 100644 --- a/pkg/server/imagefs_info_test.go +++ b/pkg/server/imagefs_info_test.go @@ -23,7 +23,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" snapshotstore "github.com/containerd/cri-containerd/pkg/store/snapshot" ) diff --git a/pkg/server/instrumented_service.go b/pkg/server/instrumented_service.go index c9b8a5323..37f57221d 100644 --- a/pkg/server/instrumented_service.go +++ b/pkg/server/instrumented_service.go @@ -21,7 +21,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" api "github.com/containerd/cri-containerd/pkg/api/v1" "github.com/containerd/cri-containerd/pkg/log" @@ -461,3 +461,18 @@ func (in *instrumentedService) LoadImage(ctx context.Context, r *api.LoadImageRe }() return in.c.LoadImage(ctx, r) } + +func (in *instrumentedService) ReopenContainerLog(ctx context.Context, r *runtime.ReopenContainerLogRequest) (res *runtime.ReopenContainerLogResponse, err error) { + if err := in.checkInitialized(); err != nil { + return nil, err + } + logrus.Debugf("ReopenContainerLog for %q", r.GetContainerId()) + defer func() { + if err != nil { + logrus.WithError(err).Errorf("ReopenContainerLog for %q failed", r.GetContainerId()) + } else { + logrus.Debugf("ReopenContainerLog for %q returns successfully", r.GetContainerId()) + } + }() + return in.c.ReopenContainerLog(ctx, r) +} diff --git a/pkg/server/io/helpers.go b/pkg/server/io/helpers.go index 221b96e38..612a1f39e 100644 --- a/pkg/server/io/helpers.go +++ b/pkg/server/io/helpers.go @@ -26,7 +26,7 @@ import ( "github.com/containerd/containerd/cio" "github.com/containerd/fifo" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // AttachOptions specifies how to attach to a container. diff --git a/pkg/server/io/logger.go b/pkg/server/io/logger.go index 68ef5db22..6022f7294 100644 --- a/pkg/server/io/logger.go +++ b/pkg/server/io/logger.go @@ -26,7 +26,7 @@ import ( "time" "github.com/sirupsen/logrus" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cioutil "github.com/containerd/cri-containerd/pkg/ioutil" ) diff --git a/pkg/server/io/logger_test.go b/pkg/server/io/logger_test.go index 01e0e1c5f..4e03c48eb 100644 --- a/pkg/server/io/logger_test.go +++ b/pkg/server/io/logger_test.go @@ -25,7 +25,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cioutil "github.com/containerd/cri-containerd/pkg/ioutil" ) diff --git a/pkg/server/sandbox_list.go b/pkg/server/sandbox_list.go index 6f182e806..482b78b3e 100644 --- a/pkg/server/sandbox_list.go +++ b/pkg/server/sandbox_list.go @@ -18,7 +18,7 @@ package server import ( "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" sandboxstore "github.com/containerd/cri-containerd/pkg/store/sandbox" ) diff --git a/pkg/server/sandbox_list_test.go b/pkg/server/sandbox_list_test.go index 988ed289c..15b2c496c 100644 --- a/pkg/server/sandbox_list_test.go +++ b/pkg/server/sandbox_list_test.go @@ -21,7 +21,7 @@ import ( "time" "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" sandboxstore "github.com/containerd/cri-containerd/pkg/store/sandbox" ) diff --git a/pkg/server/sandbox_portforward.go b/pkg/server/sandbox_portforward.go index 900ffa81f..23ed9ecc0 100644 --- a/pkg/server/sandbox_portforward.go +++ b/pkg/server/sandbox_portforward.go @@ -26,7 +26,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" sandboxstore "github.com/containerd/cri-containerd/pkg/store/sandbox" ) diff --git a/pkg/server/sandbox_remove.go b/pkg/server/sandbox_remove.go index 6136cd989..73f914c98 100644 --- a/pkg/server/sandbox_remove.go +++ b/pkg/server/sandbox_remove.go @@ -23,7 +23,7 @@ import ( "github.com/containerd/containerd/errdefs" "github.com/docker/docker/pkg/system" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" "github.com/containerd/cri-containerd/pkg/log" "github.com/containerd/cri-containerd/pkg/store" diff --git a/pkg/server/sandbox_stop.go b/pkg/server/sandbox_stop.go index dd4860ad6..fe169d0b6 100644 --- a/pkg/server/sandbox_stop.go +++ b/pkg/server/sandbox_stop.go @@ -26,7 +26,7 @@ import ( "github.com/cri-o/ocicni/pkg/ocicni" "github.com/sirupsen/logrus" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" sandboxstore "github.com/containerd/cri-containerd/pkg/store/sandbox" ) diff --git a/pkg/server/service.go b/pkg/server/service.go index 3ea8247d6..bc0362fa7 100644 --- a/pkg/server/service.go +++ b/pkg/server/service.go @@ -35,7 +35,7 @@ import ( "golang.org/x/net/context" "golang.org/x/sys/unix" "google.golang.org/grpc" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" "k8s.io/kubernetes/pkg/kubelet/server/streaming" "github.com/containerd/cri-containerd/cmd/cri-containerd/options" diff --git a/pkg/server/status.go b/pkg/server/status.go index 21dc447db..018c92b12 100644 --- a/pkg/server/status.go +++ b/pkg/server/status.go @@ -22,7 +22,7 @@ import ( goruntime "runtime" "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) const ( diff --git a/pkg/server/update_runtime_config.go b/pkg/server/update_runtime_config.go index 434e0fcfb..05002ac16 100644 --- a/pkg/server/update_runtime_config.go +++ b/pkg/server/update_runtime_config.go @@ -19,7 +19,7 @@ package server import ( "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // UpdateRuntimeConfig updates the runtime config. Currently only handles podCIDR updates. diff --git a/pkg/server/version.go b/pkg/server/version.go index b07bfeef7..88b8a1387 100644 --- a/pkg/server/version.go +++ b/pkg/server/version.go @@ -18,7 +18,7 @@ package server import ( "golang.org/x/net/context" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" "github.com/containerd/cri-containerd/pkg/version" ) diff --git a/pkg/store/container/container.go b/pkg/store/container/container.go index 0c274fc52..cbac43257 100644 --- a/pkg/store/container/container.go +++ b/pkg/store/container/container.go @@ -21,7 +21,7 @@ import ( "github.com/containerd/containerd" "github.com/docker/docker/pkg/truncindex" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cio "github.com/containerd/cri-containerd/pkg/server/io" "github.com/containerd/cri-containerd/pkg/store" diff --git a/pkg/store/container/container_test.go b/pkg/store/container/container_test.go index 710846b71..bc4bfc4c6 100644 --- a/pkg/store/container/container_test.go +++ b/pkg/store/container/container_test.go @@ -21,7 +21,7 @@ import ( "time" assertlib "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" cio "github.com/containerd/cri-containerd/pkg/server/io" "github.com/containerd/cri-containerd/pkg/store" diff --git a/pkg/store/container/metadata.go b/pkg/store/container/metadata.go index 5f684123b..c1d0c64ec 100644 --- a/pkg/store/container/metadata.go +++ b/pkg/store/container/metadata.go @@ -20,7 +20,7 @@ import ( "encoding/json" "fmt" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // NOTE(random-liu): diff --git a/pkg/store/container/metadata_test.go b/pkg/store/container/metadata_test.go index f6451a719..9e405b776 100644 --- a/pkg/store/container/metadata_test.go +++ b/pkg/store/container/metadata_test.go @@ -21,7 +21,7 @@ import ( "testing" assertlib "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestMetadataMarshalUnmarshal(t *testing.T) { diff --git a/pkg/store/container/status.go b/pkg/store/container/status.go index d0573a721..b7c342806 100644 --- a/pkg/store/container/status.go +++ b/pkg/store/container/status.go @@ -25,7 +25,7 @@ import ( "sync" "github.com/docker/docker/pkg/ioutils" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // statusVersion is current version of container status. diff --git a/pkg/store/container/status_test.go b/pkg/store/container/status_test.go index 8be47fb31..ea36e5247 100644 --- a/pkg/store/container/status_test.go +++ b/pkg/store/container/status_test.go @@ -27,7 +27,7 @@ import ( assertlib "github.com/stretchr/testify/assert" requirelib "github.com/stretchr/testify/require" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestContainerState(t *testing.T) { diff --git a/pkg/store/sandbox/metadata.go b/pkg/store/sandbox/metadata.go index 5e9847498..199a3289d 100644 --- a/pkg/store/sandbox/metadata.go +++ b/pkg/store/sandbox/metadata.go @@ -20,7 +20,7 @@ import ( "encoding/json" "fmt" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) // NOTE(random-liu): diff --git a/pkg/store/sandbox/metadata_test.go b/pkg/store/sandbox/metadata_test.go index e986df3f0..c8aa0d1f6 100644 --- a/pkg/store/sandbox/metadata_test.go +++ b/pkg/store/sandbox/metadata_test.go @@ -21,7 +21,7 @@ import ( "testing" assertlib "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" ) func TestMetadataMarshalUnmarshal(t *testing.T) { diff --git a/pkg/store/sandbox/sandbox_test.go b/pkg/store/sandbox/sandbox_test.go index 12472878f..f615680d6 100644 --- a/pkg/store/sandbox/sandbox_test.go +++ b/pkg/store/sandbox/sandbox_test.go @@ -20,7 +20,7 @@ import ( "testing" assertlib "github.com/stretchr/testify/assert" - "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" + runtime "k8s.io/kubernetes/pkg/kubelet/apis/cri/runtime/v1alpha2" "github.com/containerd/cri-containerd/pkg/store" )