Add remote streaming implementation.
This commit is contained in:
		| @@ -21,6 +21,7 @@ go_library( | ||||
|         "//pkg/kubelet/api:go_default_library", | ||||
|         "//pkg/kubelet/api/v1alpha1/runtime:go_default_library", | ||||
|         "//pkg/kubelet/dockershim:go_default_library", | ||||
|         "//pkg/util/exec:go_default_library", | ||||
|         "//pkg/util/interrupt:go_default_library", | ||||
|         "//vendor:github.com/golang/glog", | ||||
|         "//vendor:golang.org/x/net/context", | ||||
|   | ||||
| @@ -18,12 +18,14 @@ package remote | ||||
|  | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"time" | ||||
|  | ||||
| 	"golang.org/x/net/context" | ||||
|  | ||||
| 	internalApi "k8s.io/kubernetes/pkg/kubelet/api" | ||||
| 	runtimeApi "k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/runtime" | ||||
| 	"k8s.io/kubernetes/pkg/kubelet/dockershim" | ||||
| 	utilexec "k8s.io/kubernetes/pkg/util/exec" | ||||
| ) | ||||
|  | ||||
| // DockerService is the interface implement CRI remote service server. | ||||
| @@ -138,7 +140,20 @@ func (d *dockerService) ContainerStatus(ctx context.Context, r *runtimeApi.Conta | ||||
| } | ||||
|  | ||||
| func (d *dockerService) ExecSync(ctx context.Context, r *runtimeApi.ExecSyncRequest) (*runtimeApi.ExecSyncResponse, error) { | ||||
| 	return nil, fmt.Errorf("not implemented") | ||||
| 	stdout, stderr, err := d.runtimeService.ExecSync(r.GetContainerId(), r.GetCmd(), time.Duration(r.GetTimeout())*time.Second) | ||||
| 	var exitCode int32 | ||||
| 	if err != nil { | ||||
| 		exitError, ok := err.(utilexec.ExitError) | ||||
| 		if !ok { | ||||
| 			return nil, err | ||||
| 		} | ||||
| 		exitCode = int32(exitError.ExitStatus()) | ||||
| 	} | ||||
| 	return &runtimeApi.ExecSyncResponse{ | ||||
| 		Stdout:   stdout, | ||||
| 		Stderr:   stderr, | ||||
| 		ExitCode: &exitCode, | ||||
| 	}, nil | ||||
| } | ||||
|  | ||||
| func (d *dockerService) Exec(ctx context.Context, r *runtimeApi.ExecRequest) (*runtimeApi.ExecResponse, error) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Random-Liu
					Random-Liu