Update ttrpc for containerd repo
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
parent
ca204317ed
commit
08150bfe76
@ -39,11 +39,11 @@ import (
|
|||||||
"github.com/containerd/containerd/runtime/linux/proc"
|
"github.com/containerd/containerd/runtime/linux/proc"
|
||||||
"github.com/containerd/containerd/runtime/shim"
|
"github.com/containerd/containerd/runtime/shim"
|
||||||
shimapi "github.com/containerd/containerd/runtime/shim/v1"
|
shimapi "github.com/containerd/containerd/runtime/shim/v1"
|
||||||
|
"github.com/containerd/ttrpc"
|
||||||
"github.com/containerd/typeurl"
|
"github.com/containerd/typeurl"
|
||||||
ptypes "github.com/gogo/protobuf/types"
|
ptypes "github.com/gogo/protobuf/types"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"github.com/stevvooe/ttrpc"
|
|
||||||
"golang.org/x/sys/unix"
|
"golang.org/x/sys/unix"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ import (
|
|||||||
|
|
||||||
"github.com/containerd/containerd/runtime/shim"
|
"github.com/containerd/containerd/runtime/shim"
|
||||||
runc "github.com/containerd/go-runc"
|
runc "github.com/containerd/go-runc"
|
||||||
"github.com/stevvooe/ttrpc"
|
"github.com/containerd/ttrpc"
|
||||||
)
|
)
|
||||||
|
|
||||||
// setupSignals creates a new signal handler for all signals and sets the shim as a
|
// setupSignals creates a new signal handler for all signals and sets the shim as a
|
||||||
|
@ -22,8 +22,8 @@ import (
|
|||||||
|
|
||||||
"github.com/containerd/containerd/runtime/shim"
|
"github.com/containerd/containerd/runtime/shim"
|
||||||
runc "github.com/containerd/go-runc"
|
runc "github.com/containerd/go-runc"
|
||||||
|
"github.com/containerd/ttrpc"
|
||||||
"github.com/opencontainers/runc/libcontainer/system"
|
"github.com/opencontainers/runc/libcontainer/system"
|
||||||
"github.com/stevvooe/ttrpc"
|
|
||||||
"golang.org/x/sys/unix"
|
"golang.org/x/sys/unix"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ import (
|
|||||||
|
|
||||||
"github.com/containerd/containerd/runtime/shim"
|
"github.com/containerd/containerd/runtime/shim"
|
||||||
runc "github.com/containerd/go-runc"
|
runc "github.com/containerd/go-runc"
|
||||||
"github.com/stevvooe/ttrpc"
|
"github.com/containerd/ttrpc"
|
||||||
)
|
)
|
||||||
|
|
||||||
// setupSignals creates a new signal handler for all signals and sets the shim as a
|
// setupSignals creates a new signal handler for all signals and sets the shim as a
|
||||||
|
@ -27,12 +27,12 @@ import (
|
|||||||
"github.com/containerd/console"
|
"github.com/containerd/console"
|
||||||
"github.com/containerd/containerd/cmd/ctr/commands"
|
"github.com/containerd/containerd/cmd/ctr/commands"
|
||||||
shim "github.com/containerd/containerd/runtime/shim/v1"
|
shim "github.com/containerd/containerd/runtime/shim/v1"
|
||||||
|
"github.com/containerd/ttrpc"
|
||||||
"github.com/containerd/typeurl"
|
"github.com/containerd/typeurl"
|
||||||
ptypes "github.com/gogo/protobuf/types"
|
ptypes "github.com/gogo/protobuf/types"
|
||||||
"github.com/opencontainers/runtime-spec/specs-go"
|
"github.com/opencontainers/runtime-spec/specs-go"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"github.com/stevvooe/ttrpc"
|
|
||||||
"github.com/urfave/cli"
|
"github.com/urfave/cli"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -18,10 +18,10 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
_ "github.com/containerd/containerd/protobuf/plugin/fieldpath"
|
_ "github.com/containerd/containerd/protobuf/plugin/fieldpath"
|
||||||
|
_ "github.com/containerd/ttrpc/plugin"
|
||||||
"github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
|
"github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
|
||||||
"github.com/gogo/protobuf/vanity"
|
"github.com/gogo/protobuf/vanity"
|
||||||
"github.com/gogo/protobuf/vanity/command"
|
"github.com/gogo/protobuf/vanity/command"
|
||||||
_ "github.com/stevvooe/ttrpc/plugin"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
@ -26,8 +26,8 @@ import (
|
|||||||
"github.com/containerd/containerd/errdefs"
|
"github.com/containerd/containerd/errdefs"
|
||||||
"github.com/containerd/containerd/runtime"
|
"github.com/containerd/containerd/runtime"
|
||||||
shim "github.com/containerd/containerd/runtime/shim/v1"
|
shim "github.com/containerd/containerd/runtime/shim/v1"
|
||||||
|
"github.com/containerd/ttrpc"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/stevvooe/ttrpc"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Process implements a linux process
|
// Process implements a linux process
|
||||||
|
@ -32,9 +32,9 @@ import (
|
|||||||
"github.com/containerd/containerd/runtime/shim/client"
|
"github.com/containerd/containerd/runtime/shim/client"
|
||||||
shim "github.com/containerd/containerd/runtime/shim/v1"
|
shim "github.com/containerd/containerd/runtime/shim/v1"
|
||||||
runc "github.com/containerd/go-runc"
|
runc "github.com/containerd/go-runc"
|
||||||
|
"github.com/containerd/ttrpc"
|
||||||
"github.com/gogo/protobuf/types"
|
"github.com/gogo/protobuf/types"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/stevvooe/ttrpc"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Task on a linux based system
|
// Task on a linux based system
|
||||||
|
@ -31,9 +31,9 @@ import (
|
|||||||
|
|
||||||
"golang.org/x/sys/unix"
|
"golang.org/x/sys/unix"
|
||||||
|
|
||||||
|
"github.com/containerd/ttrpc"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"github.com/stevvooe/ttrpc"
|
|
||||||
|
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/log"
|
"github.com/containerd/containerd/log"
|
||||||
|
@ -50,7 +50,7 @@ import strings "strings"
|
|||||||
import reflect "reflect"
|
import reflect "reflect"
|
||||||
|
|
||||||
import context "context"
|
import context "context"
|
||||||
import ttrpc "github.com/stevvooe/ttrpc"
|
import ttrpc "github.com/containerd/ttrpc"
|
||||||
|
|
||||||
import io "io"
|
import io "io"
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ github.com/Microsoft/hcsshim v0.6.11
|
|||||||
github.com/boltdb/bolt e9cf4fae01b5a8ff89d0ec6b32f0d9c9f79aefdd
|
github.com/boltdb/bolt e9cf4fae01b5a8ff89d0ec6b32f0d9c9f79aefdd
|
||||||
google.golang.org/genproto d80a6e20e776b0b17a324d0ba1ab50a39c8e8944
|
google.golang.org/genproto d80a6e20e776b0b17a324d0ba1ab50a39c8e8944
|
||||||
golang.org/x/text 19e51611da83d6be54ddafce4a4af510cb3e9ea4
|
golang.org/x/text 19e51611da83d6be54ddafce4a4af510cb3e9ea4
|
||||||
github.com/stevvooe/ttrpc d4528379866b0ce7e9d71f3eb96f0582fc374577
|
github.com/containerd/ttrpc fa6c68143601db58b3636ee9948aad2fe08ed1ea
|
||||||
github.com/syndtr/gocapability db04d3cc01c8b54962a58ec7e491717d06cfcc16
|
github.com/syndtr/gocapability db04d3cc01c8b54962a58ec7e491717d06cfcc16
|
||||||
gotest.tools v2.1.0
|
gotest.tools v2.1.0
|
||||||
github.com/google/go-cmp v0.1.0
|
github.com/google/go-cmp v0.1.0
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# ttrpc
|
# ttrpc
|
||||||
|
|
||||||
[](https://travis-ci.org/stevvooe/ttrpc)
|
[](https://travis-ci.org/containerd/ttrpc)
|
||||||
|
|
||||||
GRPC for low-memory environments.
|
GRPC for low-memory environments.
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ Create a gogo vanity binary (see
|
|||||||
[`cmd/protoc-gen-gogottrpc/main.go`](cmd/protoc-gen-gogottrpc/main.go) for an
|
[`cmd/protoc-gen-gogottrpc/main.go`](cmd/protoc-gen-gogottrpc/main.go) for an
|
||||||
example with the ttrpc plugin enabled.
|
example with the ttrpc plugin enabled.
|
||||||
|
|
||||||
It's recommended to use [`protobuild`](https://github.com/stevvooe/protobuild)
|
It's recommended to use [`protobuild`](https://github.com//stevvooe/protobuild)
|
||||||
to build the protobufs for this project, but this will work with protoc
|
to build the protobufs for this project, but this will work with protoc
|
||||||
directly, if required.
|
directly, if required.
|
||||||
|
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
||||||
@ -9,9 +25,9 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"syscall"
|
"syscall"
|
||||||
|
|
||||||
"github.com/containerd/containerd/log"
|
|
||||||
"github.com/gogo/protobuf/proto"
|
"github.com/gogo/protobuf/proto"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
|
"github.com/sirupsen/logrus"
|
||||||
"google.golang.org/grpc/status"
|
"google.golang.org/grpc/status"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -180,7 +196,7 @@ func (c *Client) run() {
|
|||||||
case msg := <-incoming:
|
case msg := <-incoming:
|
||||||
call, ok := waiters[msg.StreamID]
|
call, ok := waiters[msg.StreamID]
|
||||||
if !ok {
|
if !ok {
|
||||||
log.L.Errorf("ttrpc: received message for unknown channel %v", msg.StreamID)
|
logrus.Errorf("ttrpc: received message for unknown channel %v", msg.StreamID)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
42
vendor/github.com/containerd/ttrpc/codec.go
generated
vendored
Normal file
42
vendor/github.com/containerd/ttrpc/codec.go
generated
vendored
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/gogo/protobuf/proto"
|
||||||
|
"github.com/pkg/errors"
|
||||||
|
)
|
||||||
|
|
||||||
|
type codec struct{}
|
||||||
|
|
||||||
|
func (c codec) Marshal(msg interface{}) ([]byte, error) {
|
||||||
|
switch v := msg.(type) {
|
||||||
|
case proto.Message:
|
||||||
|
return proto.Marshal(v)
|
||||||
|
default:
|
||||||
|
return nil, errors.Errorf("ttrpc: cannot marshal unknown type: %T", msg)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c codec) Unmarshal(p []byte, msg interface{}) error {
|
||||||
|
switch v := msg.(type) {
|
||||||
|
case proto.Message:
|
||||||
|
return proto.Unmarshal(p, v)
|
||||||
|
default:
|
||||||
|
return errors.Errorf("ttrpc: cannot unmarshal into unknown type: %T", msg)
|
||||||
|
}
|
||||||
|
}
|
39
vendor/github.com/containerd/ttrpc/config.go
generated
vendored
Normal file
39
vendor/github.com/containerd/ttrpc/config.go
generated
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
||||||
|
|
||||||
|
import "github.com/pkg/errors"
|
||||||
|
|
||||||
|
type serverConfig struct {
|
||||||
|
handshaker Handshaker
|
||||||
|
}
|
||||||
|
|
||||||
|
type ServerOpt func(*serverConfig) error
|
||||||
|
|
||||||
|
// WithServerHandshaker can be passed to NewServer to ensure that the
|
||||||
|
// handshaker is called before every connection attempt.
|
||||||
|
//
|
||||||
|
// Only one handshaker is allowed per server.
|
||||||
|
func WithServerHandshaker(handshaker Handshaker) ServerOpt {
|
||||||
|
return func(c *serverConfig) error {
|
||||||
|
if c.handshaker != nil {
|
||||||
|
return errors.New("only one handshaker allowed per server")
|
||||||
|
}
|
||||||
|
c.handshaker = handshaker
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 plugin
|
package plugin
|
||||||
|
|
||||||
import (
|
import (
|
||||||
@ -32,7 +48,7 @@ func (p *ttrpcGenerator) Generate(file *generator.FileDescriptor) {
|
|||||||
p.PluginImports = generator.NewPluginImports(p.Generator)
|
p.PluginImports = generator.NewPluginImports(p.Generator)
|
||||||
p.contextPkg = p.NewImport("context")
|
p.contextPkg = p.NewImport("context")
|
||||||
p.typeurlPkg = p.NewImport("github.com/containerd/typeurl")
|
p.typeurlPkg = p.NewImport("github.com/containerd/typeurl")
|
||||||
p.ttrpcPkg = p.NewImport("github.com/stevvooe/ttrpc")
|
p.ttrpcPkg = p.NewImport("github.com/containerd/ttrpc")
|
||||||
|
|
||||||
for _, service := range file.GetService() {
|
for _, service := range file.GetService() {
|
||||||
serviceName := service.GetName()
|
serviceName := service.GetName()
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
||||||
@ -9,8 +25,8 @@ import (
|
|||||||
"sync/atomic"
|
"sync/atomic"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/containerd/containerd/log"
|
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
|
"github.com/sirupsen/logrus"
|
||||||
"google.golang.org/grpc/codes"
|
"google.golang.org/grpc/codes"
|
||||||
"google.golang.org/grpc/status"
|
"google.golang.org/grpc/status"
|
||||||
)
|
)
|
||||||
@ -88,7 +104,7 @@ func (s *Server) Serve(l net.Listener) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sleep := time.Duration(rand.Int63n(int64(backoff)))
|
sleep := time.Duration(rand.Int63n(int64(backoff)))
|
||||||
log.L.WithError(err).Errorf("ttrpc: failed accept; backoff %v", sleep)
|
logrus.WithError(err).Errorf("ttrpc: failed accept; backoff %v", sleep)
|
||||||
time.Sleep(sleep)
|
time.Sleep(sleep)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
@ -100,7 +116,7 @@ func (s *Server) Serve(l net.Listener) error {
|
|||||||
|
|
||||||
approved, handshake, err := handshaker.Handshake(ctx, conn)
|
approved, handshake, err := handshaker.Handshake(ctx, conn)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.L.WithError(err).Errorf("ttrpc: refusing connection after handshake")
|
logrus.WithError(err).Errorf("ttrpc: refusing connection after handshake")
|
||||||
conn.Close()
|
conn.Close()
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
@ -416,12 +432,12 @@ func (c *serverConn) run(sctx context.Context) {
|
|||||||
case response := <-responses:
|
case response := <-responses:
|
||||||
p, err := c.server.codec.Marshal(response.resp)
|
p, err := c.server.codec.Marshal(response.resp)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.L.WithError(err).Error("failed marshaling response")
|
logrus.WithError(err).Error("failed marshaling response")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := ch.send(ctx, response.id, messageTypeResponse, p); err != nil {
|
if err := ch.send(ctx, response.id, messageTypeResponse, p); err != nil {
|
||||||
log.L.WithError(err).Error("failed sending message on channel")
|
logrus.WithError(err).Error("failed sending message on channel")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -432,7 +448,7 @@ func (c *serverConn) run(sctx context.Context) {
|
|||||||
// requests due to a terminal error.
|
// requests due to a terminal error.
|
||||||
recvErr = nil // connection is now "closing"
|
recvErr = nil // connection is now "closing"
|
||||||
if err != nil && err != io.EOF {
|
if err != nil && err != io.EOF {
|
||||||
log.L.WithError(err).Error("error receiving message")
|
logrus.WithError(err).Error("error receiving message")
|
||||||
}
|
}
|
||||||
case <-shutdown:
|
case <-shutdown:
|
||||||
return
|
return
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
16
vendor/github.com/stevvooe/ttrpc/types.go → vendor/github.com/containerd/ttrpc/types.go
generated
vendored
16
vendor/github.com/stevvooe/ttrpc/types.go → vendor/github.com/containerd/ttrpc/types.go
generated
vendored
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
@ -1,3 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 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 ttrpc
|
package ttrpc
|
||||||
|
|
||||||
import (
|
import (
|
26
vendor/github.com/stevvooe/ttrpc/codec.go
generated
vendored
26
vendor/github.com/stevvooe/ttrpc/codec.go
generated
vendored
@ -1,26 +0,0 @@
|
|||||||
package ttrpc
|
|
||||||
|
|
||||||
import (
|
|
||||||
"github.com/gogo/protobuf/proto"
|
|
||||||
"github.com/pkg/errors"
|
|
||||||
)
|
|
||||||
|
|
||||||
type codec struct{}
|
|
||||||
|
|
||||||
func (c codec) Marshal(msg interface{}) ([]byte, error) {
|
|
||||||
switch v := msg.(type) {
|
|
||||||
case proto.Message:
|
|
||||||
return proto.Marshal(v)
|
|
||||||
default:
|
|
||||||
return nil, errors.Errorf("ttrpc: cannot marshal unknown type: %T", msg)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c codec) Unmarshal(p []byte, msg interface{}) error {
|
|
||||||
switch v := msg.(type) {
|
|
||||||
case proto.Message:
|
|
||||||
return proto.Unmarshal(p, v)
|
|
||||||
default:
|
|
||||||
return errors.Errorf("ttrpc: cannot unmarshal into unknown type: %T", msg)
|
|
||||||
}
|
|
||||||
}
|
|
23
vendor/github.com/stevvooe/ttrpc/config.go
generated
vendored
23
vendor/github.com/stevvooe/ttrpc/config.go
generated
vendored
@ -1,23 +0,0 @@
|
|||||||
package ttrpc
|
|
||||||
|
|
||||||
import "github.com/pkg/errors"
|
|
||||||
|
|
||||||
type serverConfig struct {
|
|
||||||
handshaker Handshaker
|
|
||||||
}
|
|
||||||
|
|
||||||
type ServerOpt func(*serverConfig) error
|
|
||||||
|
|
||||||
// WithServerHandshaker can be passed to NewServer to ensure that the
|
|
||||||
// handshaker is called before every connection attempt.
|
|
||||||
//
|
|
||||||
// Only one handshaker is allowed per server.
|
|
||||||
func WithServerHandshaker(handshaker Handshaker) ServerOpt {
|
|
||||||
return func(c *serverConfig) error {
|
|
||||||
if c.handshaker != nil {
|
|
||||||
return errors.New("only one handshaker allowed per server")
|
|
||||||
}
|
|
||||||
c.handshaker = handshaker
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user