Use typeurl package for spec types

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
Michael Crosby
2017-07-05 15:11:59 -07:00
parent f8720382b3
commit a60511d5aa
22 changed files with 163 additions and 264 deletions

View File

@@ -2,13 +2,12 @@ package containerd
import (
"context"
"encoding/json"
"syscall"
eventsapi "github.com/containerd/containerd/api/services/events/v1"
"github.com/containerd/containerd/api/services/tasks/v1"
"github.com/containerd/containerd/events"
protobuf "github.com/gogo/protobuf/types"
"github.com/containerd/containerd/typeurl"
specs "github.com/opencontainers/runtime-spec/specs-go"
)
@@ -35,7 +34,7 @@ func (p *process) Pid() uint32 {
// Start starts the exec process
func (p *process) Start(ctx context.Context) error {
data, err := json.Marshal(p.spec)
any, err := typeurl.MarshalAny(p.spec)
if err != nil {
return err
}
@@ -45,10 +44,7 @@ func (p *process) Start(ctx context.Context) error {
Stdin: p.io.Stdin,
Stdout: p.io.Stdout,
Stderr: p.io.Stderr,
Spec: &protobuf.Any{
TypeUrl: specs.Version,
Value: data,
},
Spec: any,
}
response, err := p.task.client.TaskService().Exec(ctx, request)
if err != nil {