Remove gogoproto.customtype

gogoproto.customtype is used to have go-digest.Digest instead of string.
While it is convinient, protoc-gen-go doesn't support the extension
and that blocks #6564.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
This commit is contained in:
Kazuyoshi Kato 2022-03-18 21:20:58 +00:00
parent 0c701654a1
commit 3eeeb9429a
22 changed files with 296 additions and 335 deletions

View File

@ -8,7 +8,6 @@ import (
_ "github.com/containerd/containerd/protobuf/plugin"
_ "github.com/gogo/protobuf/gogoproto"
proto "github.com/gogo/protobuf/proto"
github_com_opencontainers_go_digest "github.com/opencontainers/go-digest"
io "io"
math "math"
math_bits "math/bits"
@ -28,7 +27,7 @@ var _ = math.Inf
const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
type ContentDelete struct {
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,1,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -75,21 +74,20 @@ func init() {
}
var fileDescriptor_dfb34b8b808e2ecd = []byte{
// 224 bytes of a gzipped FileDescriptorProto
// 194 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x4c, 0xcf, 0x2c, 0xc9,
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0x83, 0x45, 0x53,
0xf3, 0x4a, 0xf4, 0x0a, 0x8a, 0xf2, 0x4b, 0xf2, 0x85, 0x04, 0x11, 0x8a, 0xf4, 0x20, 0x0a, 0xa4,
0x44, 0xd2, 0xf3, 0xd3, 0xf3, 0xc1, 0xb2, 0xfa, 0x20, 0x16, 0x44, 0xa1, 0x94, 0x03, 0x41, 0x3b,
0xc0, 0xea, 0x92, 0x4a, 0xd3, 0xf4, 0x0b, 0x72, 0x4a, 0xd3, 0x33, 0xf3, 0xf4, 0xd3, 0x32, 0x53,
0x73, 0x52, 0x0a, 0x12, 0x4b, 0x32, 0x20, 0x26, 0x28, 0x45, 0x73, 0xf1, 0x3a, 0x43, 0xec, 0x76,
0x49, 0xcd, 0x49, 0x2d, 0x49, 0x15, 0xf2, 0xe2, 0x62, 0x4b, 0xc9, 0x4c, 0x4f, 0x2d, 0x2e, 0x91,
0x60, 0x54, 0x60, 0xd4, 0xe0, 0x74, 0x32, 0x3a, 0x71, 0x4f, 0x9e, 0xe1, 0xd6, 0x3d, 0x79, 0x2d,
0x24, 0xab, 0xf2, 0x0b, 0x52, 0xf3, 0xe0, 0x76, 0x14, 0xeb, 0xa7, 0xe7, 0xeb, 0x42, 0xb4, 0xe8,
0xb9, 0x80, 0xa9, 0x20, 0xa8, 0x09, 0x4e, 0x01, 0x27, 0x1e, 0xca, 0x31, 0xdc, 0x78, 0x28, 0xc7,
0xd0, 0xf0, 0x48, 0x8e, 0xf1, 0xc4, 0x23, 0x39, 0xc6, 0x0b, 0x8f, 0xe4, 0x18, 0x1f, 0x3c, 0x92,
0x63, 0x5c, 0xf0, 0x45, 0x8e, 0x31, 0xca, 0x88, 0x84, 0x00, 0xb2, 0x86, 0x50, 0x49, 0x6c, 0x60,
0x57, 0x1b, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0xee, 0x71, 0x10, 0x4c, 0x5d, 0x01, 0x00, 0x00,
0x73, 0x52, 0x0a, 0x12, 0x4b, 0x32, 0x20, 0x26, 0x28, 0xa9, 0x73, 0xf1, 0x3a, 0x43, 0xec, 0x76,
0x49, 0xcd, 0x49, 0x2d, 0x49, 0x15, 0x12, 0xe3, 0x62, 0x4b, 0xc9, 0x4c, 0x4f, 0x2d, 0x2e, 0x91,
0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c, 0x82, 0xf2, 0x9c, 0x02, 0x4e, 0x3c, 0x94, 0x63, 0xb8, 0xf1,
0x50, 0x8e, 0xa1, 0xe1, 0x91, 0x1c, 0xe3, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, 0xc9, 0x31, 0x3e,
0x78, 0x24, 0xc7, 0xb8, 0xe0, 0x8b, 0x1c, 0x63, 0x94, 0x11, 0x09, 0x9e, 0xb5, 0x86, 0x50, 0x49,
0x6c, 0x60, 0x17, 0x18, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0x43, 0xb0, 0xdf, 0x8c, 0x29, 0x01,
0x00, 0x00,
}
// Field returns the value for the given fieldpath as a string, if defined.
@ -250,7 +248,7 @@ func (m *ContentDelete) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex

View File

@ -25,5 +25,5 @@ option go_package = "github.com/containerd/containerd/api/events;events";
option (containerd.plugin.fieldpath_all) = true;
message ContentDelete {
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 1;
}

View File

@ -178,10 +178,6 @@ file {
number: 1
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
}
@ -1178,10 +1174,6 @@ file {
number: 1
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
field {
@ -1251,10 +1243,6 @@ file {
number: 1
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
}
@ -1339,10 +1327,6 @@ file {
number: 1
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
}
@ -1353,10 +1337,6 @@ file {
number: 1
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
field {
@ -1443,10 +1423,6 @@ file {
number: 6
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "expected"
}
}
@ -1524,10 +1500,6 @@ file {
number: 4
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "expected"
}
field {
@ -1626,10 +1598,6 @@ file {
number: 6
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
}
@ -1746,10 +1714,6 @@ file {
number: 2
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "digest"
}
field {
@ -4157,10 +4121,6 @@ file {
number: 2
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65003: "github.com/opencontainers/go-digest.Digest"
65001: 0
}
json_name: "parentCheckpoint"
}
field {

View File

@ -11,7 +11,6 @@ import (
github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
types "github.com/gogo/protobuf/types"
github_com_opencontainers_go_digest "github.com/opencontainers/go-digest"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
@ -81,7 +80,7 @@ func (WriteAction) EnumDescriptor() ([]byte, []int) {
type Info struct {
// Digest is the hash identity of the blob.
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,1,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"`
// Size is the total number of bytes in the blob.
Size_ int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
// CreatedAt provides the time at which the blob was committed.
@ -130,7 +129,7 @@ func (m *Info) XXX_DiscardUnknown() {
var xxx_messageInfo_Info proto.InternalMessageInfo
type InfoRequest struct {
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,1,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -382,7 +381,7 @@ var xxx_messageInfo_ListContentResponse proto.InternalMessageInfo
type DeleteContentRequest struct {
// Digest specifies which content to delete.
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,1,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -424,7 +423,7 @@ var xxx_messageInfo_DeleteContentRequest proto.InternalMessageInfo
// data from a stored object.
type ReadContentRequest struct {
// Digest is the hash identity to read.
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,1,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"`
// Offset specifies the number of bytes from the start at which to begin
// the read. If zero or less, the read will be from the start. This uses
// standard zero-indexed semantics.
@ -516,7 +515,7 @@ type Status struct {
Ref string `protobuf:"bytes,3,opt,name=ref,proto3" json:"ref,omitempty"`
Offset int64 `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`
Total int64 `protobuf:"varint,5,opt,name=total,proto3" json:"total,omitempty"`
Expected github_com_opencontainers_go_digest.Digest `protobuf:"bytes,6,opt,name=expected,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"expected"`
Expected string `protobuf:"bytes,6,opt,name=expected,proto3" json:"expected,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -745,7 +744,7 @@ type WriteContentRequest struct {
// Only the latest version will be used to check the content against the
// digest. It is only required to include it on a single message, before or
// with the commit action message.
Expected github_com_opencontainers_go_digest.Digest `protobuf:"bytes,4,opt,name=expected,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"expected"`
Expected string `protobuf:"bytes,4,opt,name=expected,proto3" json:"expected,omitempty"`
// Offset specifies the number of bytes from the start at which to begin
// the write. For most implementations, this means from the start of the
// file. This uses standard, zero-indexed semantics.
@ -829,7 +828,7 @@ type WriteContentResponse struct {
// Digest, if present, includes the digest up to the currently committed
// bytes. If action is commit, this field will be set. It is implementation
// defined if this is set for other actions.
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,6,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,6,opt,name=digest,proto3" json:"digest,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -935,75 +934,73 @@ func init() {
}
var fileDescriptor_468430ba3e400391 = []byte{
// 1079 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0xcd, 0x6f, 0x1b, 0x45,
0x14, 0xcf, 0x78, 0xed, 0x4d, 0xf2, 0x9c, 0x16, 0x33, 0x31, 0x95, 0xb5, 0x08, 0x7b, 0xbb, 0x42,
0xc8, 0x6a, 0xc9, 0x3a, 0x75, 0x7a, 0x00, 0x2a, 0x01, 0x8e, 0x9b, 0xaa, 0x41, 0x4d, 0x41, 0x5b,
0x97, 0x88, 0x5e, 0xca, 0xda, 0x1e, 0x9b, 0x55, 0x6c, 0xaf, 0xbb, 0x33, 0xb6, 0x08, 0x27, 0x2e,
0x48, 0x28, 0xea, 0x01, 0x71, 0xcf, 0x05, 0xf8, 0x2b, 0x38, 0x70, 0xce, 0x91, 0x23, 0xe2, 0xd0,
0xd2, 0xfc, 0x0f, 0xdc, 0xd1, 0xcc, 0xce, 0xda, 0xeb, 0x8f, 0xb0, 0xb6, 0xe3, 0x9e, 0xfc, 0x66,
0xf6, 0xfd, 0xde, 0xf7, 0xc7, 0x18, 0xee, 0x35, 0x1d, 0xf6, 0x4d, 0xaf, 0x6a, 0xd6, 0xdc, 0x76,
0xa1, 0xe6, 0x76, 0x98, 0xed, 0x74, 0x88, 0x57, 0x0f, 0x93, 0x76, 0xd7, 0x29, 0x50, 0xe2, 0xf5,
0x9d, 0x1a, 0xa1, 0xe2, 0x9e, 0x74, 0x58, 0xa1, 0x7f, 0x2b, 0x20, 0xcd, 0xae, 0xe7, 0x32, 0x17,
0x67, 0x87, 0x08, 0x33, 0xe0, 0x36, 0x03, 0x96, 0xfe, 0x2d, 0x2d, 0xdd, 0x74, 0x9b, 0xae, 0x60,
0x2d, 0x70, 0xca, 0x47, 0x69, 0x7a, 0xd3, 0x75, 0x9b, 0x2d, 0x52, 0x10, 0xa7, 0x6a, 0xaf, 0x51,
0x68, 0x38, 0xa4, 0x55, 0x7f, 0xda, 0xb6, 0xe9, 0x91, 0xe4, 0xc8, 0x8d, 0x73, 0x30, 0xa7, 0x4d,
0x28, 0xb3, 0xdb, 0x5d, 0xc9, 0xf0, 0xf6, 0x38, 0x03, 0x69, 0x77, 0xd9, 0xb1, 0xff, 0xd1, 0xf8,
0x37, 0x06, 0xf1, 0xfd, 0x4e, 0xc3, 0xc5, 0x9f, 0x81, 0x5a, 0x77, 0x9a, 0x84, 0xb2, 0x0c, 0xd2,
0x51, 0x7e, 0x7d, 0xb7, 0x78, 0xf6, 0x22, 0xb7, 0xf2, 0xf7, 0x8b, 0xdc, 0x8d, 0x90, 0xfb, 0x6e,
0x97, 0x74, 0x06, 0x5e, 0xd0, 0x42, 0xd3, 0xdd, 0xf2, 0x21, 0xe6, 0x5d, 0xf1, 0x63, 0x49, 0x09,
0x18, 0x43, 0x9c, 0x3a, 0xdf, 0x91, 0x4c, 0x4c, 0x47, 0x79, 0xc5, 0x12, 0x34, 0x2e, 0x03, 0xd4,
0x3c, 0x62, 0x33, 0x52, 0x7f, 0x6a, 0xb3, 0x8c, 0xa2, 0xa3, 0x7c, 0xb2, 0xa8, 0x99, 0xbe, 0x69,
0x66, 0x60, 0x9a, 0x59, 0x09, 0x6c, 0xdf, 0x5d, 0xe3, 0xfa, 0x7f, 0x7a, 0x99, 0x43, 0xd6, 0xba,
0xc4, 0x95, 0x18, 0x17, 0xd2, 0xeb, 0xd6, 0x03, 0x21, 0xf1, 0x79, 0x84, 0x48, 0x5c, 0x89, 0xe1,
0xfb, 0xa0, 0xb6, 0xec, 0x2a, 0x69, 0xd1, 0x4c, 0x42, 0x57, 0xf2, 0xc9, 0xe2, 0xb6, 0xf9, 0xff,
0x99, 0x31, 0x79, 0x7c, 0xcc, 0x07, 0x02, 0xb2, 0xd7, 0x61, 0xde, 0xb1, 0x25, 0xf1, 0xda, 0x87,
0x90, 0x0c, 0x5d, 0xe3, 0x14, 0x28, 0x47, 0xe4, 0xd8, 0x8f, 0x9f, 0xc5, 0x49, 0x9c, 0x86, 0x44,
0xdf, 0x6e, 0xf5, 0xfc, 0x48, 0xac, 0x5b, 0xfe, 0xe1, 0xa3, 0xd8, 0x07, 0xc8, 0xf8, 0x0a, 0x92,
0x5c, 0xac, 0x45, 0x9e, 0xf5, 0x78, 0xc4, 0x96, 0x18, 0x7d, 0xe3, 0x21, 0x6c, 0xf8, 0xa2, 0x69,
0xd7, 0xed, 0x50, 0x82, 0x3f, 0x86, 0xb8, 0xd3, 0x69, 0xb8, 0x42, 0x72, 0xb2, 0xf8, 0xee, 0x2c,
0xde, 0xee, 0xc6, 0xb9, 0x7e, 0x4b, 0xe0, 0x8c, 0xe7, 0x08, 0xae, 0x3c, 0x16, 0xd1, 0x0b, 0xac,
0xbd, 0xa4, 0x44, 0x7c, 0x07, 0x92, 0x7e, 0x3a, 0x44, 0x1d, 0x8b, 0xe0, 0x4c, 0xcb, 0xe3, 0x3d,
0x5e, 0xea, 0x07, 0x36, 0x3d, 0xb2, 0x64, 0xd6, 0x39, 0x6d, 0x7c, 0x01, 0x57, 0x03, 0x6b, 0x96,
0xe4, 0xa0, 0x09, 0xf8, 0x81, 0x43, 0x59, 0xd9, 0x67, 0x09, 0x9c, 0xcc, 0xc0, 0x6a, 0xc3, 0x69,
0x31, 0xe2, 0xd1, 0x0c, 0xd2, 0x95, 0xfc, 0xba, 0x15, 0x1c, 0x8d, 0xc7, 0xb0, 0x39, 0xc2, 0x3f,
0x61, 0x86, 0xb2, 0x90, 0x19, 0x55, 0x48, 0xdf, 0x25, 0x2d, 0xc2, 0xc8, 0x98, 0x21, 0xcb, 0xac,
0x8d, 0xe7, 0x08, 0xb0, 0x45, 0xec, 0xfa, 0xeb, 0x53, 0x81, 0xaf, 0x81, 0xea, 0x36, 0x1a, 0x94,
0x30, 0xd9, 0xfe, 0xf2, 0x34, 0x18, 0x0a, 0xca, 0x70, 0x28, 0x18, 0x25, 0xd8, 0x1c, 0xb1, 0x46,
0x46, 0x72, 0x28, 0x02, 0x8d, 0x8b, 0xa8, 0xdb, 0xcc, 0x16, 0x82, 0x37, 0x2c, 0x41, 0x1b, 0xbf,
0xc4, 0x40, 0x7d, 0xc4, 0x6c, 0xd6, 0xa3, 0x7c, 0x3a, 0x50, 0x66, 0x7b, 0x72, 0x3a, 0xa0, 0x79,
0xa6, 0x83, 0xc4, 0x4d, 0x8c, 0x98, 0xd8, 0x62, 0x23, 0x26, 0x05, 0x8a, 0x47, 0x1a, 0xc2, 0xd5,
0x75, 0x8b, 0x93, 0x21, 0x97, 0xe2, 0x23, 0x2e, 0xa5, 0x21, 0xc1, 0x5c, 0x66, 0xb7, 0x32, 0x09,
0x71, 0xed, 0x1f, 0xf0, 0x43, 0x58, 0x23, 0xdf, 0x76, 0x49, 0x8d, 0x91, 0x7a, 0x46, 0x5d, 0x38,
0x23, 0x03, 0x19, 0xc6, 0x75, 0xb8, 0xe2, 0xc7, 0x28, 0x48, 0xb8, 0x34, 0x10, 0x0d, 0x0c, 0xe4,
0x6d, 0x15, 0xb0, 0x0c, 0xea, 0x59, 0xa5, 0xe2, 0x46, 0x86, 0xf2, 0xbd, 0xa8, 0x8a, 0x96, 0x78,
0x89, 0x32, 0x0a, 0x7e, 0x9b, 0xf8, 0xb7, 0x84, 0x46, 0xf7, 0xd5, 0xd7, 0x90, 0x1e, 0x05, 0x48,
0x43, 0xee, 0xc3, 0x1a, 0x95, 0x77, 0xb2, 0xb9, 0x66, 0x34, 0x45, 0xb6, 0xd7, 0x00, 0x6d, 0xfc,
0xac, 0xc0, 0xe6, 0xa1, 0xe7, 0x4c, 0xb4, 0x58, 0x19, 0x54, 0xbb, 0xc6, 0x1c, 0xb7, 0x23, 0x5c,
0xbd, 0x5a, 0xbc, 0x19, 0x25, 0x5f, 0x08, 0x29, 0x09, 0x88, 0x25, 0xa1, 0x41, 0x4c, 0x63, 0xc3,
0xa4, 0x0f, 0x92, 0xab, 0x5c, 0x94, 0xdc, 0xf8, 0xe5, 0x93, 0x1b, 0x2a, 0xad, 0xc4, 0xd4, 0x6e,
0x51, 0x87, 0xdd, 0x82, 0x0f, 0x07, 0xbb, 0x6f, 0x55, 0x04, 0xf2, 0x93, 0x99, 0x1c, 0x1d, 0x8d,
0xd6, 0xb2, 0x57, 0xe1, 0xcb, 0x18, 0xa4, 0x47, 0xd5, 0xc8, 0xbc, 0x2f, 0x25, 0x2b, 0xa3, 0x43,
0x21, 0xb6, 0x8c, 0xa1, 0xa0, 0x2c, 0x36, 0x14, 0xe6, 0x1b, 0x01, 0xc3, 0x91, 0xac, 0x5e, 0x7a,
0xea, 0xeb, 0xb0, 0x51, 0xaa, 0xba, 0x1e, 0xbb, 0xb0, 0xfb, 0x6f, 0xfc, 0x80, 0x20, 0x19, 0x8a,
0x1e, 0x7e, 0x07, 0xe2, 0x8f, 0x2a, 0xa5, 0x4a, 0x6a, 0x45, 0xdb, 0x3c, 0x39, 0xd5, 0xdf, 0x08,
0x7d, 0xe2, 0x9d, 0x85, 0x73, 0x90, 0x38, 0xb4, 0xf6, 0x2b, 0x7b, 0x29, 0xa4, 0xa5, 0x4f, 0x4e,
0xf5, 0x54, 0xe8, 0xbb, 0x20, 0xf1, 0x75, 0x50, 0xcb, 0x9f, 0x1f, 0x1c, 0xec, 0x57, 0x52, 0x31,
0xed, 0xad, 0x93, 0x53, 0xfd, 0xcd, 0x10, 0x47, 0xd9, 0x6d, 0xb7, 0x1d, 0xa6, 0x6d, 0xfe, 0xf8,
0x6b, 0x76, 0xe5, 0xf7, 0xdf, 0xb2, 0x61, 0xbd, 0xc5, 0x3f, 0x56, 0x61, 0x55, 0x96, 0x01, 0xb6,
0xe5, 0xcb, 0xf4, 0xe6, 0x2c, 0x9b, 0x54, 0xba, 0xa6, 0xbd, 0x3f, 0x1b, 0xb3, 0xac, 0xb0, 0x26,
0xa8, 0xfe, 0x5b, 0x02, 0x6f, 0x45, 0xe1, 0x46, 0x5e, 0x40, 0x9a, 0x39, 0x2b, 0xbb, 0x54, 0xf4,
0x0c, 0xe2, 0x7c, 0xb4, 0xe1, 0x62, 0x14, 0x6e, 0xf2, 0x21, 0xa2, 0xed, 0xcc, 0x85, 0xf1, 0x15,
0x6e, 0x23, 0xfc, 0x25, 0xa8, 0xfe, 0x73, 0x02, 0xdf, 0x8e, 0x12, 0x30, 0xed, 0xd9, 0xa1, 0x5d,
0x9b, 0xa8, 0xef, 0x3d, 0xfe, 0xbf, 0x81, 0xbb, 0xc2, 0x77, 0x76, 0xb4, 0x2b, 0x93, 0xef, 0x8c,
0x68, 0x57, 0xa6, 0xbc, 0x06, 0xb6, 0x11, 0x4f, 0x93, 0x5c, 0xf1, 0x5b, 0x33, 0xee, 0xa0, 0x59,
0xd3, 0x34, 0xb6, 0xf2, 0x8e, 0x61, 0x23, 0xbc, 0x81, 0xf0, 0x4c, 0xa1, 0x1f, 0x5b, 0x70, 0xda,
0xed, 0xf9, 0x40, 0x52, 0x75, 0x1f, 0x12, 0x7e, 0xeb, 0xec, 0x2c, 0x30, 0x92, 0xa3, 0x75, 0x4e,
0x1b, 0xb0, 0x79, 0xb4, 0x8d, 0xf0, 0x01, 0x24, 0xc4, 0x6c, 0xc0, 0x91, 0x9d, 0x13, 0x1e, 0x21,
0x17, 0x55, 0xc7, 0xee, 0x93, 0xb3, 0x57, 0xd9, 0x95, 0xbf, 0x5e, 0x65, 0x57, 0xbe, 0x3f, 0xcf,
0xa2, 0xb3, 0xf3, 0x2c, 0xfa, 0xf3, 0x3c, 0x8b, 0xfe, 0x39, 0xcf, 0xa2, 0x27, 0x9f, 0x2e, 0xfa,
0x3f, 0xfa, 0x8e, 0x24, 0xab, 0xaa, 0xd0, 0xb5, 0xf3, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbf,
0xc1, 0xae, 0xf1, 0x92, 0x0f, 0x00, 0x00,
// 1042 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x4f, 0x8f, 0xdb, 0x44,
0x14, 0xdf, 0x89, 0x13, 0xef, 0xe6, 0x65, 0x5b, 0xc2, 0x24, 0x54, 0x91, 0x11, 0x5e, 0xd7, 0x02,
0x14, 0x51, 0xea, 0x6c, 0xb3, 0x3d, 0x00, 0x95, 0x80, 0x6c, 0xd8, 0xaa, 0x2b, 0x75, 0x01, 0xb9,
0x29, 0x8b, 0x7a, 0x29, 0x4e, 0x32, 0x09, 0xd6, 0x26, 0x71, 0x6a, 0x4f, 0x22, 0x96, 0x13, 0x17,
0x24, 0xb4, 0xe2, 0xc0, 0x17, 0xd8, 0x13, 0xdc, 0xf8, 0x06, 0x1c, 0x90, 0xb8, 0xed, 0x91, 0x23,
0xa7, 0x42, 0xf7, 0x03, 0xf0, 0x19, 0xd0, 0x8c, 0xc7, 0x89, 0x9d, 0x3f, 0xd8, 0x49, 0xf7, 0xf6,
0x66, 0xfc, 0x7e, 0xef, 0xef, 0xef, 0xcd, 0x4b, 0xe0, 0x7e, 0xd7, 0xa6, 0x5f, 0x8f, 0x9a, 0x46,
0xcb, 0xe9, 0x57, 0x5a, 0xce, 0x80, 0x5a, 0xf6, 0x80, 0xb8, 0xed, 0xb0, 0x68, 0x0d, 0xed, 0x8a,
0x47, 0xdc, 0xb1, 0xdd, 0x22, 0x1e, 0xbf, 0x27, 0x03, 0x5a, 0x19, 0xdf, 0x09, 0x44, 0x63, 0xe8,
0x3a, 0xd4, 0xc1, 0xea, 0x14, 0x61, 0x04, 0xda, 0x46, 0xa0, 0x32, 0xbe, 0xa3, 0x14, 0xbb, 0x4e,
0xd7, 0xe1, 0xaa, 0x15, 0x26, 0xf9, 0x28, 0x45, 0xeb, 0x3a, 0x4e, 0xb7, 0x47, 0x2a, 0xfc, 0xd4,
0x1c, 0x75, 0x2a, 0x1d, 0x9b, 0xf4, 0xda, 0x4f, 0xfb, 0x96, 0x77, 0x22, 0x34, 0x76, 0x66, 0x35,
0xa8, 0xdd, 0x27, 0x1e, 0xb5, 0xfa, 0x43, 0xa1, 0xf0, 0xfa, 0xac, 0x02, 0xe9, 0x0f, 0xe9, 0xa9,
0xff, 0x51, 0xff, 0x23, 0x05, 0xe9, 0xc3, 0x41, 0xc7, 0xc1, 0x37, 0x40, 0x6e, 0xdb, 0x5d, 0xe2,
0xd1, 0x12, 0xd2, 0x50, 0x39, 0x6b, 0x8a, 0x13, 0xc6, 0x90, 0xf6, 0xec, 0x6f, 0x49, 0x29, 0xa5,
0xa1, 0xb2, 0x64, 0x72, 0x19, 0xd7, 0x01, 0x5a, 0x2e, 0xb1, 0x28, 0x69, 0x3f, 0xb5, 0x68, 0x49,
0xd2, 0x50, 0x39, 0x57, 0x55, 0x0c, 0xdf, 0x8d, 0x11, 0xb8, 0x31, 0x1a, 0x41, 0x1c, 0xfb, 0x5b,
0x17, 0xcf, 0x77, 0x36, 0x7e, 0xfa, 0x7b, 0x07, 0x99, 0x59, 0x81, 0xab, 0x51, 0x66, 0x64, 0x34,
0x6c, 0x07, 0x46, 0xd2, 0xab, 0x18, 0x11, 0xb8, 0x1a, 0xc5, 0x0f, 0x40, 0xee, 0x59, 0x4d, 0xd2,
0xf3, 0x4a, 0x19, 0x4d, 0x2a, 0xe7, 0xaa, 0xbb, 0xc6, 0xff, 0x57, 0xd9, 0x60, 0xb9, 0x1a, 0x0f,
0x39, 0xe4, 0x60, 0x40, 0xdd, 0x53, 0x53, 0xe0, 0x95, 0xf7, 0x21, 0x17, 0xba, 0xc6, 0x79, 0x90,
0x4e, 0xc8, 0xa9, 0xa8, 0x05, 0x13, 0x71, 0x11, 0x32, 0x63, 0xab, 0x37, 0xf2, 0x2b, 0x91, 0x35,
0xfd, 0xc3, 0x07, 0xa9, 0xf7, 0x90, 0xfe, 0x16, 0xe4, 0x98, 0x59, 0x93, 0x3c, 0x1b, 0xb1, 0x8a,
0x2d, 0xa9, 0xa4, 0xfe, 0x29, 0x6c, 0xfb, 0x6a, 0xde, 0xd0, 0x19, 0x78, 0x04, 0x7f, 0x08, 0x69,
0x7b, 0xd0, 0x71, 0xb8, 0x56, 0xae, 0xfa, 0x66, 0x92, 0xc8, 0xf7, 0xd3, 0xac, 0x08, 0x26, 0xc7,
0xe9, 0x3f, 0x22, 0xb8, 0xf6, 0x98, 0x57, 0x22, 0xf0, 0xfc, 0x92, 0x16, 0xf1, 0x3d, 0xc8, 0xf9,
0xa5, 0xe5, 0xfc, 0xe2, 0x89, 0x2e, 0xea, 0xc9, 0x7d, 0x46, 0xc1, 0x23, 0xcb, 0x3b, 0x31, 0x45,
0x07, 0x99, 0xac, 0x7f, 0x0e, 0xd7, 0x83, 0x68, 0xae, 0x28, 0x41, 0x03, 0xf0, 0x43, 0xdb, 0xa3,
0x75, 0x5f, 0x25, 0x48, 0xb2, 0x04, 0x9b, 0x1d, 0xbb, 0x47, 0x89, 0xeb, 0x95, 0x90, 0x26, 0x95,
0xb3, 0x66, 0x70, 0xd4, 0x1f, 0x43, 0x21, 0xa2, 0x3f, 0x17, 0x86, 0xb4, 0x66, 0x18, 0xc5, 0x4f,
0x48, 0x8f, 0x50, 0x32, 0x13, 0xc8, 0xb2, 0x3e, 0x7f, 0x09, 0xd8, 0x24, 0x56, 0x3b, 0x99, 0x36,
0xbb, 0x77, 0x3a, 0x1d, 0x8f, 0x50, 0x31, 0x61, 0xe2, 0x34, 0x99, 0x3b, 0x69, 0x3a, 0x77, 0x7a,
0x0d, 0x0a, 0x11, 0xcb, 0x22, 0xc1, 0xa9, 0x09, 0x34, 0x6b, 0xa2, 0x6d, 0x51, 0x8b, 0x1b, 0xde,
0x36, 0xb9, 0xac, 0xff, 0x8b, 0x40, 0x7e, 0x44, 0x2d, 0x3a, 0xf2, 0xd8, 0x00, 0x7a, 0xd4, 0x72,
0xc5, 0x00, 0xa2, 0x55, 0x06, 0x50, 0xe0, 0xe6, 0xa6, 0x38, 0xb5, 0xde, 0x14, 0xe7, 0x41, 0x72,
0x49, 0x87, 0xa7, 0x9a, 0x35, 0x99, 0x18, 0x4a, 0x29, 0x1d, 0x49, 0xa9, 0x08, 0x19, 0xea, 0x50,
0xab, 0x57, 0xca, 0xf0, 0x6b, 0xff, 0x80, 0x15, 0xd8, 0x22, 0xdf, 0x0c, 0x49, 0x8b, 0x92, 0x76,
0x49, 0xe6, 0x46, 0x26, 0x67, 0xfd, 0x26, 0x5c, 0xf3, 0xf3, 0x0d, 0x1a, 0x21, 0x9c, 0xa1, 0x89,
0x33, 0xc6, 0xdc, 0x40, 0x65, 0x42, 0x19, 0xd9, 0xe3, 0x37, 0xa2, 0x2c, 0x6f, 0xc7, 0x91, 0x46,
0xe0, 0x05, 0x4a, 0xaf, 0xf8, 0x4c, 0xf4, 0x6f, 0x89, 0x17, 0x4f, 0xdd, 0xaf, 0xa0, 0x18, 0x05,
0x88, 0x40, 0x1e, 0xc0, 0x96, 0x27, 0xee, 0x04, 0x7f, 0x13, 0x86, 0x22, 0x18, 0x3c, 0x41, 0xeb,
0xcf, 0x53, 0x50, 0x38, 0x76, 0xed, 0x39, 0x16, 0xd7, 0x41, 0xb6, 0x5a, 0xd4, 0x76, 0x06, 0x3c,
0xd5, 0xeb, 0xd5, 0x5b, 0x71, 0xf6, 0xb9, 0x91, 0x1a, 0x87, 0x98, 0x02, 0x1a, 0xd4, 0x34, 0x35,
0x6d, 0xe0, 0xa4, 0x51, 0xd2, 0xb2, 0x46, 0xa5, 0xa3, 0x8d, 0x0a, 0xb5, 0x3c, 0xb3, 0x90, 0xc5,
0xf2, 0x94, 0xc5, 0xf8, 0x78, 0xf2, 0xec, 0x6f, 0xf2, 0xa2, 0x7c, 0x94, 0x28, 0xe8, 0x68, 0xe6,
0x57, 0xbd, 0x05, 0x7e, 0x4d, 0x41, 0x31, 0xea, 0x46, 0xf4, 0xf0, 0x4a, 0x2a, 0x1c, 0x1d, 0xd6,
0xd4, 0x55, 0x0c, 0xab, 0xb4, 0xde, 0xb0, 0xae, 0x36, 0x9a, 0xd3, 0x67, 0x4f, 0x8e, 0x3c, 0x92,
0x1a, 0x6c, 0xd7, 0x9a, 0x8e, 0x4b, 0x97, 0x4e, 0xe5, 0x3b, 0xdf, 0x23, 0xc8, 0x85, 0x2a, 0x81,
0xdf, 0x80, 0xf4, 0xa3, 0x46, 0xad, 0x91, 0xdf, 0x50, 0x0a, 0x67, 0xe7, 0xda, 0x2b, 0xa1, 0x4f,
0x8c, 0xf1, 0x78, 0x07, 0x32, 0xc7, 0xe6, 0x61, 0xe3, 0x20, 0x8f, 0x94, 0xe2, 0xd9, 0xb9, 0x96,
0x0f, 0x7d, 0xe7, 0x22, 0xbe, 0x09, 0x72, 0xfd, 0xb3, 0xa3, 0xa3, 0xc3, 0x46, 0x3e, 0xa5, 0xbc,
0x76, 0x76, 0xae, 0xbd, 0x1a, 0xd2, 0xa8, 0x3b, 0xfd, 0xbe, 0x4d, 0x95, 0xc2, 0x0f, 0x3f, 0xab,
0x1b, 0xbf, 0xfd, 0xa2, 0x86, 0xfd, 0x56, 0x7f, 0xdf, 0x84, 0x4d, 0xd1, 0x52, 0x6c, 0x89, 0x1f,
0x4b, 0xb7, 0x92, 0x2c, 0x11, 0x91, 0x9a, 0xf2, 0x6e, 0x32, 0x65, 0xc1, 0x96, 0x2e, 0xc8, 0xfe,
0x1a, 0xc5, 0xb7, 0xe3, 0x70, 0x91, 0xe5, 0xaf, 0x18, 0x49, 0xd5, 0x85, 0xa3, 0x67, 0x90, 0x66,
0x4f, 0x0e, 0xae, 0xc6, 0xe1, 0xe6, 0x77, 0xb0, 0xb2, 0xb7, 0x12, 0xc6, 0x77, 0xb8, 0x8b, 0xf0,
0x17, 0x20, 0xfb, 0x9b, 0x14, 0xdf, 0x8d, 0x33, 0xb0, 0x68, 0xe3, 0x2a, 0x37, 0xe6, 0xb8, 0x7a,
0xc0, 0x7e, 0xca, 0xb2, 0x54, 0xd8, 0x5e, 0x8c, 0x4f, 0x65, 0x7e, 0x2f, 0xc7, 0xa7, 0xb2, 0x60,
0xe3, 0xee, 0x22, 0xd6, 0x26, 0xb1, 0x46, 0x6f, 0x27, 0xdc, 0x0d, 0x49, 0xdb, 0x34, 0xb3, 0x8a,
0x4e, 0x61, 0x3b, 0xbc, 0x19, 0x70, 0xa2, 0xd2, 0xcf, 0x2c, 0x1e, 0xe5, 0xee, 0x6a, 0x20, 0xe1,
0x7a, 0x0c, 0x19, 0x7f, 0x74, 0xf6, 0xd6, 0x78, 0x5e, 0xe3, 0x7d, 0x2e, 0x7a, 0x2c, 0xcb, 0x68,
0x17, 0xe1, 0x23, 0xc8, 0xf0, 0xb7, 0x01, 0xc7, 0x4e, 0x4e, 0xf8, 0x09, 0x59, 0xc6, 0x8e, 0xfd,
0x27, 0x17, 0x2f, 0xd4, 0x8d, 0xbf, 0x5e, 0xa8, 0x1b, 0xdf, 0x5d, 0xaa, 0xe8, 0xe2, 0x52, 0x45,
0x7f, 0x5e, 0xaa, 0xe8, 0x9f, 0x4b, 0x15, 0x3d, 0xf9, 0x78, 0xdd, 0xbf, 0x76, 0xf7, 0x84, 0xd8,
0x94, 0xb9, 0xaf, 0xbd, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0xec, 0xfe, 0xb2, 0x1f, 0x25, 0x0e,
0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
@ -3078,7 +3075,7 @@ func (m *Info) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 0 {
@ -3373,7 +3370,7 @@ func (m *InfoRequest) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
@ -3912,7 +3909,7 @@ func (m *DeleteContentRequest) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
@ -3995,7 +3992,7 @@ func (m *ReadContentRequest) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 0 {
@ -4356,7 +4353,7 @@ func (m *Status) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Expected = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Expected = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
@ -4847,7 +4844,7 @@ func (m *WriteContentRequest) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Expected = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Expected = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 5:
if wireType != 0 {
@ -5233,7 +5230,7 @@ func (m *WriteContentResponse) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex

View File

@ -92,7 +92,7 @@ service Content {
message Info {
// Digest is the hash identity of the blob.
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 1;
// Size is the total number of bytes in the blob.
int64 size = 2;
@ -110,7 +110,7 @@ message Info {
}
message InfoRequest {
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 1;
}
message InfoResponse {
@ -153,14 +153,14 @@ message ListContentResponse {
message DeleteContentRequest {
// Digest specifies which content to delete.
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 1;
}
// ReadContentRequest defines the fields that make up a request to read a portion of
// data from a stored object.
message ReadContentRequest {
// Digest is the hash identity to read.
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 1;
// Offset specifies the number of bytes from the start at which to begin
// the read. If zero or less, the read will be from the start. This uses
@ -184,7 +184,7 @@ message Status {
string ref = 3;
int64 offset = 4;
int64 total = 5;
string expected = 6 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string expected = 6;
}
@ -269,7 +269,7 @@ message WriteContentRequest {
// Only the latest version will be used to check the content against the
// digest. It is only required to include it on a single message, before or
// with the commit action message.
string expected = 4 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string expected = 4;
// Offset specifies the number of bytes from the start at which to begin
// the write. For most implementations, this means from the start of the
@ -326,7 +326,7 @@ message WriteContentResponse {
// Digest, if present, includes the digest up to the currently committed
// bytes. If action is commit, this field will be set. It is implementation
// defined if this is set for other actions.
string digest = 6 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 6;
}
message AbortRequest {

View File

@ -13,7 +13,6 @@ import (
github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
types1 "github.com/gogo/protobuf/types"
github_com_opencontainers_go_digest "github.com/opencontainers/go-digest"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
@ -858,7 +857,7 @@ var xxx_messageInfo_ListPidsResponse proto.InternalMessageInfo
type CheckpointTaskRequest struct {
ContainerID string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"`
ParentCheckpoint github_com_opencontainers_go_digest.Digest `protobuf:"bytes,2,opt,name=parent_checkpoint,json=parentCheckpoint,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"parent_checkpoint"`
ParentCheckpoint string `protobuf:"bytes,2,opt,name=parent_checkpoint,json=parentCheckpoint,proto3" json:"parent_checkpoint,omitempty"`
Options *types1.Any `protobuf:"bytes,3,opt,name=options,proto3" json:"options,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@ -1171,95 +1170,93 @@ func init() {
}
var fileDescriptor_310e7127b8a26f14 = []byte{
// 1399 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x5b, 0x6f, 0x13, 0xc7,
0x17, 0x67, 0x7d, 0xf7, 0x71, 0x02, 0xc9, 0xfe, 0x43, 0xfe, 0xee, 0x16, 0xc5, 0x61, 0xfb, 0xe2,
0xa6, 0x65, 0x5d, 0x4c, 0x85, 0x10, 0x20, 0xd4, 0xdc, 0x1a, 0x59, 0x2d, 0x22, 0x2c, 0xf4, 0x22,
0xa4, 0xca, 0xdd, 0x78, 0x27, 0xf6, 0x28, 0xf6, 0xce, 0xb2, 0x33, 0x0e, 0xb8, 0x2f, 0xed, 0x47,
0xe0, 0xb5, 0x2f, 0xed, 0xd7, 0xe1, 0xb1, 0x8f, 0x55, 0x85, 0xd2, 0xe2, 0xd7, 0x7e, 0x82, 0xbe,
0x55, 0x73, 0xd9, 0xf5, 0xc6, 0x8e, 0x2f, 0x49, 0x48, 0x5f, 0x60, 0x66, 0xf6, 0x9c, 0x33, 0x67,
0x7e, 0xe7, 0xf6, 0x73, 0x60, 0xa3, 0x89, 0x59, 0xab, 0xbb, 0x67, 0x35, 0x48, 0xa7, 0xd2, 0x20,
0x1e, 0x73, 0xb0, 0x87, 0x02, 0x37, 0xbe, 0x74, 0x7c, 0x5c, 0xa1, 0x28, 0x38, 0xc4, 0x0d, 0x44,
0x2b, 0xcc, 0xa1, 0x07, 0xb4, 0x72, 0x78, 0x53, 0x2e, 0x2c, 0x3f, 0x20, 0x8c, 0xe8, 0xd7, 0x06,
0xd2, 0x56, 0x28, 0x69, 0x49, 0x81, 0xc3, 0x9b, 0xc6, 0xfb, 0x4d, 0x42, 0x9a, 0x6d, 0x54, 0x11,
0xb2, 0x7b, 0xdd, 0xfd, 0x0a, 0xea, 0xf8, 0xac, 0x27, 0x55, 0x8d, 0xf7, 0x86, 0x3f, 0x3a, 0x5e,
0xf8, 0x69, 0xa9, 0x49, 0x9a, 0x44, 0x2c, 0x2b, 0x7c, 0xa5, 0x4e, 0x6f, 0xcf, 0xe4, 0x2f, 0xeb,
0xf9, 0x88, 0x56, 0x3a, 0xa4, 0xeb, 0x31, 0xa5, 0x77, 0xe7, 0x34, 0x7a, 0x88, 0x05, 0xb8, 0xa1,
0x5e, 0x67, 0xdc, 0x3b, 0x85, 0xa6, 0x8b, 0x68, 0x23, 0xc0, 0x3e, 0x23, 0x81, 0x52, 0xbe, 0x7b,
0x0a, 0x65, 0x8e, 0x98, 0xf8, 0x47, 0xe9, 0x96, 0x86, 0xb1, 0x61, 0xb8, 0x83, 0x28, 0x73, 0x3a,
0xbe, 0x14, 0x30, 0xff, 0x4e, 0xc0, 0xe2, 0x66, 0x80, 0x1c, 0x86, 0x9e, 0x3a, 0xf4, 0xc0, 0x46,
0xcf, 0xbb, 0x88, 0x32, 0xbd, 0x0a, 0x73, 0x91, 0xf9, 0x3a, 0x76, 0x8b, 0xda, 0xaa, 0x56, 0xce,
0x6f, 0x5c, 0xe9, 0x1f, 0x95, 0x0a, 0x9b, 0xe1, 0x79, 0x6d, 0xcb, 0x2e, 0x44, 0x42, 0x35, 0x57,
0xaf, 0x40, 0x26, 0x20, 0x84, 0xed, 0xd3, 0x62, 0x72, 0x35, 0x59, 0x2e, 0x54, 0xff, 0x6f, 0xc5,
0x42, 0x2a, 0xbc, 0xb3, 0x1e, 0x72, 0x30, 0x6d, 0x25, 0xa6, 0x2f, 0x41, 0x9a, 0x32, 0x17, 0x7b,
0xc5, 0x14, 0xb7, 0x6e, 0xcb, 0x8d, 0xbe, 0x0c, 0x19, 0xca, 0x5c, 0xd2, 0x65, 0xc5, 0xb4, 0x38,
0x56, 0x3b, 0x75, 0x8e, 0x82, 0xa0, 0x98, 0x89, 0xce, 0x51, 0x10, 0xe8, 0x06, 0xe4, 0x18, 0x0a,
0x3a, 0xd8, 0x73, 0xda, 0xc5, 0xec, 0xaa, 0x56, 0xce, 0xd9, 0xd1, 0x5e, 0xbf, 0x0f, 0xd0, 0x68,
0xa1, 0xc6, 0x81, 0x4f, 0xb0, 0xc7, 0x8a, 0xb9, 0x55, 0xad, 0x5c, 0xa8, 0x5e, 0x1b, 0x75, 0x6b,
0x2b, 0x42, 0xdc, 0x8e, 0xc9, 0xeb, 0x16, 0x64, 0x89, 0xcf, 0x30, 0xf1, 0x68, 0x31, 0x2f, 0x54,
0x97, 0x2c, 0x89, 0xa6, 0x15, 0xa2, 0x69, 0xad, 0x7b, 0x3d, 0x3b, 0x14, 0xd2, 0xaf, 0xc3, 0x5c,
0xd0, 0xf5, 0x38, 0xc0, 0x75, 0xdf, 0x61, 0xad, 0x22, 0x08, 0x3f, 0x0b, 0xea, 0x6c, 0xd7, 0x61,
0x2d, 0xf3, 0x19, 0xe8, 0x71, 0xb0, 0xa9, 0x4f, 0x3c, 0x8a, 0xce, 0x84, 0xf6, 0x02, 0x24, 0x7d,
0xec, 0x16, 0x13, 0xab, 0x5a, 0x79, 0xde, 0xe6, 0x4b, 0xb3, 0x09, 0x73, 0x4f, 0x98, 0x13, 0xb0,
0xf3, 0xc4, 0xf0, 0x03, 0xc8, 0xa2, 0x97, 0xa8, 0x51, 0x57, 0x96, 0xf3, 0x1b, 0xd0, 0x3f, 0x2a,
0x65, 0xb6, 0x5f, 0xa2, 0x46, 0x6d, 0xcb, 0xce, 0xf0, 0x4f, 0x35, 0xd7, 0xbc, 0x0e, 0xf3, 0xea,
0x22, 0xe5, 0xbf, 0xf2, 0x45, 0x1b, 0xf8, 0xb2, 0x03, 0x8b, 0x5b, 0xa8, 0x8d, 0xce, 0x9d, 0x54,
0xe6, 0x2f, 0x1a, 0x5c, 0x96, 0x96, 0xa2, 0xdb, 0x96, 0x21, 0x11, 0x29, 0x67, 0xfa, 0x47, 0xa5,
0x44, 0x6d, 0xcb, 0x4e, 0xe0, 0x13, 0x10, 0xd1, 0x4b, 0x50, 0x40, 0x2f, 0x31, 0xab, 0x53, 0xe6,
0xb0, 0x2e, 0x4f, 0x4b, 0xfe, 0x05, 0xf8, 0xd1, 0x13, 0x71, 0xa2, 0xaf, 0x43, 0x9e, 0xef, 0x90,
0x5b, 0x77, 0x98, 0xc8, 0xc2, 0x42, 0xd5, 0x18, 0x89, 0xf1, 0xd3, 0xb0, 0x62, 0x36, 0x72, 0xaf,
0x8f, 0x4a, 0x97, 0x5e, 0xfd, 0x59, 0xd2, 0xec, 0x9c, 0x54, 0x5b, 0x67, 0x26, 0x81, 0x25, 0xe9,
0xdf, 0x6e, 0x40, 0x1a, 0x88, 0xd2, 0x0b, 0x47, 0x1f, 0x01, 0xec, 0xa0, 0x8b, 0x0f, 0xf2, 0x36,
0x14, 0xc4, 0x35, 0x0a, 0xf4, 0xdb, 0x90, 0xf5, 0xe5, 0x03, 0xc5, 0x15, 0x43, 0x65, 0x74, 0x78,
0x53, 0x55, 0x52, 0x08, 0x42, 0x28, 0x6c, 0xae, 0xc1, 0xc2, 0x97, 0x98, 0x32, 0x9e, 0x06, 0x11,
0x34, 0xcb, 0x90, 0xd9, 0xc7, 0x6d, 0x86, 0x02, 0xe9, 0xad, 0xad, 0x76, 0x3c, 0x69, 0x62, 0xb2,
0x51, 0x6d, 0xa4, 0xc5, 0x14, 0x28, 0x6a, 0xa2, 0xa9, 0x4c, 0xbe, 0x56, 0x8a, 0x9a, 0xaf, 0x34,
0x28, 0x7c, 0x81, 0xdb, 0xed, 0x8b, 0x06, 0x49, 0xf4, 0x24, 0xdc, 0xe4, 0x9d, 0x47, 0xe6, 0x96,
0xda, 0xf1, 0x54, 0x74, 0xda, 0x6d, 0x91, 0x51, 0x39, 0x9b, 0x2f, 0xcd, 0x7f, 0x34, 0xd0, 0xb9,
0xf2, 0x3b, 0xc8, 0x92, 0xa8, 0x6d, 0x26, 0x4e, 0x6e, 0x9b, 0xc9, 0x31, 0x6d, 0x33, 0x35, 0xb6,
0x6d, 0xa6, 0x87, 0xda, 0x66, 0x19, 0x52, 0xd4, 0x47, 0x0d, 0xd1, 0x68, 0xc7, 0x75, 0x3d, 0x21,
0x11, 0x47, 0x29, 0x3b, 0x36, 0x95, 0xae, 0xc2, 0xff, 0x8e, 0x3d, 0x5d, 0x46, 0xd6, 0xfc, 0x59,
0x83, 0x05, 0x1b, 0x51, 0xfc, 0x03, 0xda, 0x65, 0xbd, 0x0b, 0x0f, 0xd5, 0x12, 0xa4, 0x5f, 0x60,
0x97, 0xb5, 0x54, 0xa4, 0xe4, 0x86, 0xa3, 0xd3, 0x42, 0xb8, 0xd9, 0x92, 0xd5, 0x3f, 0x6f, 0xab,
0x9d, 0xf9, 0x23, 0x5c, 0xde, 0x6c, 0x13, 0x8a, 0x6a, 0x8f, 0xfe, 0x0b, 0xc7, 0x64, 0x38, 0x93,
0x22, 0x0a, 0x72, 0x63, 0x7e, 0x0e, 0x0b, 0xbb, 0x4e, 0x97, 0x9e, 0xbb, 0x7f, 0xee, 0xc0, 0xa2,
0x8d, 0x68, 0xb7, 0x73, 0x6e, 0x43, 0xdb, 0x70, 0x85, 0x17, 0xe7, 0x2e, 0x76, 0xcf, 0x93, 0xbc,
0xa6, 0x2d, 0xfb, 0x81, 0x34, 0xa3, 0x4a, 0xfc, 0x01, 0xe4, 0x55, 0xbb, 0x40, 0x61, 0x99, 0xaf,
0x4e, 0x2a, 0xf3, 0x9a, 0xb7, 0x4f, 0xec, 0x81, 0x8a, 0xf9, 0x46, 0x83, 0xab, 0x9b, 0xd1, 0xd8,
0x3e, 0x2f, 0x8d, 0xa9, 0xc3, 0xa2, 0xef, 0x04, 0xc8, 0x63, 0xf5, 0x18, 0x75, 0x90, 0xe1, 0xab,
0xf2, 0xfe, 0xff, 0xc7, 0x51, 0x69, 0x2d, 0x46, 0xc8, 0x88, 0x8f, 0xbc, 0x48, 0x9d, 0x56, 0x9a,
0xe4, 0x86, 0x8b, 0x9b, 0x88, 0x32, 0x6b, 0x4b, 0xfc, 0x67, 0x2f, 0x48, 0x63, 0x9b, 0x27, 0xd2,
0x8a, 0xe4, 0x0c, 0xb4, 0xc2, 0xfc, 0x16, 0x96, 0x87, 0x5f, 0x17, 0x01, 0x57, 0x18, 0x90, 0xc5,
0x13, 0x3b, 0xe4, 0x08, 0xbf, 0x89, 0x2b, 0x98, 0xbf, 0x26, 0x60, 0xf1, 0x2b, 0xdf, 0x7d, 0x07,
0xdc, 0xaf, 0x0a, 0xf9, 0x00, 0x51, 0xd2, 0x0d, 0x1a, 0x88, 0x0a, 0xb0, 0xc6, 0xbd, 0x6a, 0x20,
0xa6, 0xef, 0x41, 0xc1, 0xf1, 0x3c, 0xc2, 0x9c, 0x10, 0x0b, 0xee, 0xfd, 0x67, 0xd6, 0xa4, 0xdf,
0x01, 0xd6, 0x88, 0xb7, 0xd6, 0xfa, 0xc0, 0xc4, 0xb6, 0xc7, 0x82, 0x9e, 0x1d, 0x37, 0x6a, 0x3c,
0x80, 0x85, 0x61, 0x01, 0xde, 0x9c, 0x0f, 0x50, 0x4f, 0xcd, 0x1e, 0xbe, 0xe4, 0x25, 0x78, 0xe8,
0xb4, 0xbb, 0x28, 0xec, 0xa8, 0x62, 0x73, 0x37, 0x71, 0x47, 0x33, 0xd7, 0xe0, 0xf2, 0x43, 0x49,
0xe4, 0x43, 0x74, 0x8a, 0x90, 0x95, 0xe3, 0x4a, 0xe2, 0x9d, 0xb7, 0xc3, 0x2d, 0xaf, 0x90, 0x48,
0x36, 0x1a, 0x5e, 0x59, 0xf5, 0x3b, 0x40, 0x05, 0xa7, 0x78, 0x02, 0x27, 0x16, 0x02, 0x76, 0x28,
0x68, 0xee, 0x43, 0xe1, 0x1b, 0x07, 0x5f, 0xfc, 0x80, 0x0f, 0x60, 0x4e, 0xde, 0xa3, 0x7c, 0x1d,
0x22, 0x4b, 0xda, 0x64, 0xb2, 0x94, 0x38, 0x0b, 0x59, 0xaa, 0xbe, 0x99, 0x83, 0xb4, 0x18, 0xef,
0xfa, 0x01, 0x64, 0x24, 0x11, 0xd6, 0x2b, 0x93, 0x23, 0x3e, 0xf2, 0xdb, 0xc4, 0xf8, 0x64, 0x76,
0x05, 0xf5, 0xb4, 0xef, 0x21, 0x2d, 0x08, 0xab, 0xbe, 0x36, 0x59, 0x35, 0x4e, 0x9f, 0x8d, 0x8f,
0x66, 0x92, 0x55, 0x37, 0x34, 0x21, 0x23, 0x59, 0xe0, 0xb4, 0xe7, 0x8c, 0xb0, 0x62, 0xe3, 0xe3,
0x59, 0x14, 0xa2, 0x8b, 0x9e, 0xc3, 0xfc, 0x31, 0xba, 0xa9, 0x57, 0x67, 0x51, 0x3f, 0xce, 0x3a,
0x4e, 0x79, 0xe5, 0x33, 0x48, 0xee, 0x20, 0xa6, 0x97, 0x27, 0x2b, 0x0d, 0x38, 0xa9, 0xf1, 0xe1,
0x0c, 0x92, 0x11, 0x6e, 0x29, 0x3e, 0x0e, 0x74, 0x6b, 0xb2, 0xca, 0x30, 0x85, 0x34, 0x2a, 0x33,
0xcb, 0xab, 0x8b, 0x6a, 0x90, 0xe2, 0x8c, 0x50, 0x9f, 0xe2, 0x5b, 0x8c, 0x35, 0x1a, 0xcb, 0x23,
0xc9, 0xbd, 0xdd, 0xf1, 0x59, 0x4f, 0xdf, 0x85, 0x14, 0x2f, 0x25, 0x7d, 0x4a, 0x1e, 0x8e, 0xb2,
0xbd, 0xb1, 0x16, 0x9f, 0x40, 0x3e, 0x22, 0x42, 0xd3, 0xa0, 0x18, 0x66, 0x4c, 0x63, 0x8d, 0x3e,
0x82, 0xac, 0xa2, 0x30, 0xfa, 0x94, 0x78, 0x1f, 0x67, 0x3a, 0x13, 0x0c, 0xa6, 0x05, 0x25, 0x99,
0xe6, 0xe1, 0x30, 0x6f, 0x19, 0x6b, 0xf0, 0x31, 0x64, 0x24, 0x37, 0x99, 0x56, 0x34, 0x23, 0x0c,
0x66, 0xac, 0x49, 0x0c, 0xb9, 0x90, 0x5e, 0xe8, 0x37, 0xa6, 0xe7, 0x48, 0x8c, 0xcd, 0x18, 0xd6,
0xac, 0xe2, 0x2a, 0xa3, 0x5e, 0x00, 0xc4, 0x86, 0xfa, 0xad, 0x29, 0x10, 0x9f, 0x44, 0x4f, 0x8c,
0x4f, 0x4f, 0xa7, 0xa4, 0x2e, 0x7e, 0x0c, 0x19, 0x39, 0x06, 0xa7, 0xc1, 0x36, 0x32, 0x2c, 0xc7,
0xc2, 0xb6, 0x0f, 0x59, 0x35, 0xba, 0xa6, 0xe5, 0xca, 0xf1, 0x69, 0x68, 0xdc, 0x98, 0x51, 0x5a,
0xb9, 0xfe, 0x1d, 0xa4, 0xf8, 0xcc, 0x99, 0x56, 0x85, 0xb1, 0xf9, 0x67, 0xac, 0xcd, 0x22, 0x2a,
0xcd, 0x6f, 0x7c, 0xfd, 0xfa, 0xed, 0xca, 0xa5, 0xdf, 0xdf, 0xae, 0x5c, 0xfa, 0xa9, 0xbf, 0xa2,
0xbd, 0xee, 0xaf, 0x68, 0xbf, 0xf5, 0x57, 0xb4, 0xbf, 0xfa, 0x2b, 0xda, 0xb3, 0xfb, 0x67, 0xfb,
0x0b, 0xe5, 0x3d, 0xb1, 0xd8, 0xcb, 0x08, 0xb8, 0x6e, 0xfd, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xe7,
0x74, 0x70, 0xb7, 0xe8, 0x14, 0x00, 0x00,
// 1372 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xcb, 0x6e, 0xdb, 0x46,
0x17, 0x0e, 0x75, 0xd7, 0x91, 0x9d, 0xd8, 0xf3, 0x3b, 0xfe, 0x59, 0x36, 0xb0, 0x1c, 0x76, 0xa3,
0x3a, 0x0d, 0xd5, 0x28, 0x45, 0x10, 0x24, 0x41, 0x50, 0xdf, 0x6a, 0x08, 0x6d, 0x10, 0x87, 0x49,
0x2f, 0x08, 0x50, 0xb8, 0xb4, 0x34, 0x96, 0x06, 0x96, 0x48, 0x86, 0x33, 0x72, 0xa2, 0x6e, 0xda,
0x47, 0xc8, 0xb6, 0x9b, 0x76, 0xdb, 0x47, 0xc9, 0xb2, 0xcb, 0x2e, 0x0a, 0xb7, 0xd1, 0xb6, 0x4f,
0xd0, 0x5d, 0x31, 0x17, 0x52, 0xb4, 0x64, 0x5d, 0x6c, 0xc5, 0xdd, 0x18, 0x33, 0xc3, 0x73, 0xce,
0x9c, 0xf9, 0xce, 0xed, 0xb3, 0x60, 0xa3, 0x41, 0x58, 0xb3, 0xb3, 0x6f, 0xd5, 0xbc, 0x76, 0xb9,
0xe6, 0xb9, 0xcc, 0x21, 0x2e, 0x0e, 0xea, 0xf1, 0xa5, 0xe3, 0x93, 0x32, 0xc5, 0xc1, 0x11, 0xa9,
0x61, 0x5a, 0x66, 0x0e, 0x3d, 0xa4, 0xe5, 0xa3, 0x5b, 0x72, 0x61, 0xf9, 0x81, 0xc7, 0x3c, 0x74,
0xad, 0x2f, 0x6d, 0x85, 0x92, 0x96, 0x14, 0x38, 0xba, 0x65, 0xbc, 0xdf, 0xf0, 0xbc, 0x46, 0x0b,
0x97, 0x85, 0xec, 0x7e, 0xe7, 0xa0, 0x8c, 0xdb, 0x3e, 0xeb, 0x4a, 0x55, 0xe3, 0xbd, 0xc1, 0x8f,
0x8e, 0x1b, 0x7e, 0x5a, 0x6a, 0x78, 0x0d, 0x4f, 0x2c, 0xcb, 0x7c, 0xa5, 0x4e, 0xef, 0x4c, 0xe5,
0x2f, 0xeb, 0xfa, 0x98, 0x96, 0xdb, 0x5e, 0xc7, 0x65, 0x4a, 0xef, 0xee, 0x59, 0xf4, 0x30, 0x0b,
0x48, 0x4d, 0xbd, 0xce, 0xb8, 0x7f, 0x06, 0xcd, 0x3a, 0xa6, 0xb5, 0x80, 0xf8, 0xcc, 0x0b, 0x94,
0xf2, 0xbd, 0x33, 0x28, 0x73, 0xc4, 0xc4, 0x1f, 0xa5, 0x5b, 0x1c, 0xc4, 0x86, 0x91, 0x36, 0xa6,
0xcc, 0x69, 0xfb, 0x52, 0xc0, 0xfc, 0x3b, 0x01, 0x8b, 0x9b, 0x01, 0x76, 0x18, 0x7e, 0xe6, 0xd0,
0x43, 0x1b, 0xbf, 0xe8, 0x60, 0xca, 0x50, 0x05, 0xe6, 0x22, 0xf3, 0x7b, 0xa4, 0xae, 0x6b, 0xab,
0x5a, 0x29, 0xbf, 0x71, 0xa5, 0x77, 0x5c, 0x2c, 0x6c, 0x86, 0xe7, 0xd5, 0x2d, 0xbb, 0x10, 0x09,
0x55, 0xeb, 0xa8, 0x0c, 0x99, 0xc0, 0xf3, 0xd8, 0x01, 0xd5, 0x93, 0xab, 0xc9, 0x52, 0xa1, 0xf2,
0x7f, 0x2b, 0x16, 0x52, 0xe1, 0x9d, 0xf5, 0x88, 0x83, 0x69, 0x2b, 0x31, 0xb4, 0x04, 0x69, 0xca,
0xea, 0xc4, 0xd5, 0x53, 0xdc, 0xba, 0x2d, 0x37, 0x68, 0x19, 0x32, 0x94, 0xd5, 0xbd, 0x0e, 0xd3,
0xd3, 0xe2, 0x58, 0xed, 0xd4, 0x39, 0x0e, 0x02, 0x3d, 0x13, 0x9d, 0xe3, 0x20, 0x40, 0x06, 0xe4,
0x18, 0x0e, 0xda, 0xc4, 0x75, 0x5a, 0x7a, 0x76, 0x55, 0x2b, 0xe5, 0xec, 0x68, 0x8f, 0x1e, 0x00,
0xd4, 0x9a, 0xb8, 0x76, 0xe8, 0x7b, 0xc4, 0x65, 0x7a, 0x6e, 0x55, 0x2b, 0x15, 0x2a, 0xd7, 0x86,
0xdd, 0xda, 0x8a, 0x10, 0xb7, 0x63, 0xf2, 0xc8, 0x82, 0xac, 0xe7, 0x33, 0xe2, 0xb9, 0x54, 0xcf,
0x0b, 0xd5, 0x25, 0x4b, 0xa2, 0x69, 0x85, 0x68, 0x5a, 0xeb, 0x6e, 0xd7, 0x0e, 0x85, 0xd0, 0x75,
0x98, 0x0b, 0x3a, 0x2e, 0x07, 0x78, 0xcf, 0x77, 0x58, 0x53, 0x07, 0xe1, 0x67, 0x41, 0x9d, 0xed,
0x3a, 0xac, 0x69, 0x3e, 0x07, 0x14, 0x07, 0x9b, 0xfa, 0x9e, 0x4b, 0xf1, 0xb9, 0xd0, 0x5e, 0x80,
0xa4, 0x4f, 0xea, 0x7a, 0x62, 0x55, 0x2b, 0xcd, 0xdb, 0x7c, 0x69, 0x36, 0x60, 0xee, 0x29, 0x73,
0x02, 0x36, 0x4b, 0x0c, 0x3f, 0x80, 0x2c, 0x7e, 0x85, 0x6b, 0x7b, 0xca, 0x72, 0x7e, 0x03, 0x7a,
0xc7, 0xc5, 0xcc, 0xf6, 0x2b, 0x5c, 0xab, 0x6e, 0xd9, 0x19, 0xfe, 0xa9, 0x5a, 0x37, 0xaf, 0xc3,
0xbc, 0xba, 0x48, 0xf9, 0xaf, 0x7c, 0xd1, 0xfa, 0xbe, 0xec, 0xc0, 0xe2, 0x16, 0x6e, 0xe1, 0x99,
0x93, 0xca, 0xfc, 0x59, 0x83, 0xcb, 0xd2, 0x52, 0x74, 0xdb, 0x32, 0x24, 0x22, 0xe5, 0x4c, 0xef,
0xb8, 0x98, 0xa8, 0x6e, 0xd9, 0x09, 0x72, 0x0a, 0x22, 0xa8, 0x08, 0x05, 0xfc, 0x8a, 0xb0, 0x3d,
0xca, 0x1c, 0xd6, 0xe1, 0x69, 0xc9, 0xbf, 0x00, 0x3f, 0x7a, 0x2a, 0x4e, 0xd0, 0x3a, 0xe4, 0xf9,
0x0e, 0xd7, 0xf7, 0x1c, 0x26, 0xb2, 0xb0, 0x50, 0x31, 0x86, 0x62, 0xfc, 0x2c, 0xac, 0x98, 0x8d,
0xdc, 0x9b, 0xe3, 0xe2, 0xa5, 0xd7, 0x7f, 0x16, 0x35, 0x3b, 0x27, 0xd5, 0xd6, 0x99, 0xe9, 0xc1,
0x92, 0xf4, 0x6f, 0x37, 0xf0, 0x6a, 0x98, 0xd2, 0x0b, 0x47, 0x1f, 0x03, 0xec, 0xe0, 0x8b, 0x0f,
0xf2, 0x36, 0x14, 0xc4, 0x35, 0x0a, 0xf4, 0x3b, 0x90, 0xf5, 0xe5, 0x03, 0xc5, 0x15, 0x03, 0x65,
0x74, 0x74, 0x4b, 0x55, 0x52, 0x08, 0x42, 0x28, 0x6c, 0xae, 0xc1, 0xc2, 0x17, 0x84, 0x32, 0x9e,
0x06, 0x11, 0x34, 0xcb, 0x90, 0x39, 0x20, 0x2d, 0x86, 0x03, 0xe9, 0xad, 0xad, 0x76, 0x3c, 0x69,
0x62, 0xb2, 0x51, 0x6d, 0xa4, 0xc5, 0x14, 0xd0, 0x35, 0xd1, 0x54, 0xc6, 0x5f, 0x2b, 0x45, 0xcd,
0xd7, 0x1a, 0x14, 0x3e, 0x27, 0xad, 0xd6, 0x45, 0x83, 0x24, 0x7a, 0x12, 0x69, 0xf0, 0xce, 0x23,
0x73, 0x4b, 0xed, 0x78, 0x2a, 0x3a, 0xad, 0x96, 0xc8, 0xa8, 0x9c, 0xcd, 0x97, 0xe6, 0x3f, 0x1a,
0x20, 0xae, 0xfc, 0x0e, 0xb2, 0x24, 0x6a, 0x9b, 0x89, 0xd3, 0xdb, 0x66, 0x72, 0x44, 0xdb, 0x4c,
0x8d, 0x6c, 0x9b, 0xe9, 0x81, 0xb6, 0x59, 0x82, 0x14, 0xf5, 0x71, 0x4d, 0x34, 0xda, 0x51, 0x5d,
0x4f, 0x48, 0xc4, 0x51, 0xca, 0x8e, 0x4c, 0xa5, 0xab, 0xf0, 0xbf, 0x13, 0x4f, 0x97, 0x91, 0x35,
0x7f, 0xd2, 0x60, 0xc1, 0xc6, 0x94, 0x7c, 0x8f, 0x77, 0x59, 0xf7, 0xc2, 0x43, 0xb5, 0x04, 0xe9,
0x97, 0xa4, 0xce, 0x9a, 0x2a, 0x52, 0x72, 0xc3, 0xd1, 0x69, 0x62, 0xd2, 0x68, 0xca, 0xea, 0x9f,
0xb7, 0xd5, 0xce, 0xfc, 0x01, 0x2e, 0x6f, 0xb6, 0x3c, 0x8a, 0xab, 0x8f, 0xff, 0x0b, 0xc7, 0x64,
0x38, 0x93, 0x22, 0x0a, 0x72, 0x63, 0x7e, 0x06, 0x0b, 0xbb, 0x4e, 0x87, 0xce, 0xdc, 0x3f, 0x77,
0x60, 0xd1, 0xc6, 0xb4, 0xd3, 0x9e, 0xd9, 0xd0, 0x36, 0x5c, 0xe1, 0xc5, 0xb9, 0x4b, 0xea, 0xb3,
0x24, 0xaf, 0x69, 0xcb, 0x7e, 0x20, 0xcd, 0xa8, 0x12, 0x7f, 0x08, 0x79, 0xd5, 0x2e, 0x70, 0x58,
0xe6, 0xab, 0xe3, 0xca, 0xbc, 0xea, 0x1e, 0x78, 0x76, 0x5f, 0xc5, 0xfc, 0x55, 0x83, 0xab, 0x9b,
0xd1, 0xd8, 0x9e, 0x95, 0xc6, 0xdc, 0x80, 0x45, 0xdf, 0x09, 0xb0, 0xcb, 0xf6, 0x62, 0xd4, 0x41,
0x96, 0xda, 0x82, 0xfc, 0xb0, 0x79, 0x2a, 0x45, 0x48, 0x4e, 0x41, 0x11, 0xcc, 0x6f, 0x60, 0x79,
0xd0, 0xd3, 0x08, 0x84, 0x42, 0x9f, 0xf8, 0x9d, 0xda, 0xed, 0x86, 0xb8, 0x4a, 0x5c, 0xc1, 0xfc,
0x25, 0x01, 0x8b, 0x5f, 0xfa, 0xf5, 0x77, 0xc0, 0xe3, 0x2a, 0x90, 0x0f, 0x30, 0xf5, 0x3a, 0x41,
0x0d, 0x53, 0xf1, 0xf0, 0x51, 0xaf, 0xea, 0x8b, 0xa1, 0x7d, 0x28, 0x38, 0xae, 0xeb, 0x31, 0x27,
0xc4, 0x82, 0x7b, 0xff, 0xa9, 0x35, 0x8e, 0xd3, 0x5b, 0x43, 0xde, 0x5a, 0xeb, 0x7d, 0x13, 0xdb,
0x2e, 0x0b, 0xba, 0x76, 0xdc, 0xa8, 0xf1, 0x10, 0x16, 0x06, 0x05, 0x78, 0xa3, 0x3d, 0xc4, 0x5d,
0x35, 0x47, 0xf8, 0x92, 0x97, 0xd3, 0x91, 0xd3, 0xea, 0xe0, 0xb0, 0x3b, 0x8a, 0xcd, 0xbd, 0xc4,
0x5d, 0xcd, 0x5c, 0x83, 0xcb, 0x8f, 0x24, 0x29, 0x0f, 0xd1, 0xd1, 0x21, 0x2b, 0x47, 0x8f, 0xc4,
0x3b, 0x6f, 0x87, 0x5b, 0x9e, 0xed, 0x91, 0x6c, 0x34, 0x88, 0xb2, 0x8a, 0xd3, 0xab, 0xe0, 0xe8,
0xa7, 0xf0, 0x5b, 0x21, 0x60, 0x87, 0x82, 0xe6, 0x01, 0x14, 0xbe, 0x76, 0xc8, 0xc5, 0x0f, 0xeb,
0x00, 0xe6, 0xe4, 0x3d, 0xca, 0xd7, 0x01, 0xe2, 0xa3, 0x8d, 0x27, 0x3e, 0x89, 0xf3, 0x10, 0x9f,
0xca, 0x1f, 0x73, 0x90, 0x16, 0xa3, 0x1a, 0x1d, 0x42, 0x46, 0x92, 0x5a, 0x54, 0x1e, 0x1f, 0xf1,
0xa1, 0xff, 0x33, 0x8c, 0x8f, 0xa7, 0x57, 0x50, 0x4f, 0xfb, 0x0e, 0xd2, 0x82, 0x7c, 0xa2, 0xb5,
0xf1, 0xaa, 0x71, 0x2a, 0x6c, 0xdc, 0x98, 0x4a, 0x56, 0xdd, 0xd0, 0x80, 0x8c, 0x64, 0x74, 0x93,
0x9e, 0x33, 0xc4, 0x70, 0x8d, 0x8f, 0xa6, 0x51, 0x88, 0x2e, 0x7a, 0x01, 0xf3, 0x27, 0xa8, 0x23,
0xaa, 0x4c, 0xa3, 0x7e, 0x92, 0x41, 0x9c, 0xf1, 0xca, 0xe7, 0x90, 0xdc, 0xc1, 0x0c, 0x95, 0xc6,
0x2b, 0xf5, 0xf9, 0xa5, 0xf1, 0xe1, 0x14, 0x92, 0x11, 0x6e, 0x29, 0xde, 0xda, 0x91, 0x35, 0x5e,
0x65, 0x90, 0x0e, 0x1a, 0xe5, 0xa9, 0xe5, 0xd5, 0x45, 0x55, 0x48, 0x71, 0x76, 0x87, 0x26, 0xf8,
0x16, 0x63, 0x80, 0xc6, 0xf2, 0x50, 0x72, 0x6f, 0xb7, 0x7d, 0xd6, 0x45, 0xbb, 0x90, 0xe2, 0xa5,
0x84, 0x26, 0xe4, 0xe1, 0x30, 0x73, 0x1b, 0x69, 0xf1, 0x29, 0xe4, 0x23, 0x52, 0x33, 0x09, 0x8a,
0x41, 0xf6, 0x33, 0xd2, 0xe8, 0x63, 0xc8, 0x2a, 0x3a, 0x82, 0x26, 0xc4, 0xfb, 0x24, 0x6b, 0x19,
0x63, 0x30, 0x2d, 0xe8, 0xc5, 0x24, 0x0f, 0x07, 0x39, 0xc8, 0x48, 0x83, 0x4f, 0x20, 0x23, 0x79,
0xc6, 0xa4, 0xa2, 0x19, 0x62, 0x23, 0x23, 0x4d, 0x12, 0xc8, 0x85, 0x54, 0x01, 0xdd, 0x9c, 0x9c,
0x23, 0x31, 0x66, 0x62, 0x58, 0xd3, 0x8a, 0xab, 0x8c, 0x7a, 0x09, 0x10, 0x1b, 0xea, 0xb7, 0x27,
0x40, 0x7c, 0x1a, 0xd5, 0x30, 0x3e, 0x39, 0x9b, 0x92, 0xba, 0xf8, 0x09, 0x64, 0xe4, 0x18, 0x9c,
0x04, 0xdb, 0xd0, 0xb0, 0x1c, 0x09, 0xdb, 0x01, 0x64, 0xd5, 0xe8, 0x9a, 0x94, 0x2b, 0x27, 0xa7,
0xa1, 0x71, 0x73, 0x4a, 0x69, 0xe5, 0xfa, 0xb7, 0x90, 0xe2, 0x33, 0x67, 0x52, 0x15, 0xc6, 0xe6,
0x9f, 0xb1, 0x36, 0x8d, 0xa8, 0x34, 0xbf, 0xf1, 0xd5, 0x9b, 0xb7, 0x2b, 0x97, 0x7e, 0x7f, 0xbb,
0x72, 0xe9, 0xc7, 0xde, 0x8a, 0xf6, 0xa6, 0xb7, 0xa2, 0xfd, 0xd6, 0x5b, 0xd1, 0xfe, 0xea, 0xad,
0x68, 0xcf, 0x1f, 0x9c, 0xef, 0xd7, 0xc6, 0xfb, 0x62, 0xb1, 0x9f, 0x11, 0x70, 0xdd, 0xfe, 0x37,
0x00, 0x00, 0xff, 0xff, 0x1c, 0xab, 0x68, 0xe1, 0xb4, 0x14, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
@ -6649,7 +6646,7 @@ func (m *CheckpointTaskRequest) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.ParentCheckpoint = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.ParentCheckpoint = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 2 {

View File

@ -195,7 +195,7 @@ message ListPidsResponse {
message CheckpointTaskRequest {
string container_id = 1;
string parent_checkpoint = 2 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string parent_checkpoint = 2;
google.protobuf.Any options = 3;
}

View File

@ -8,7 +8,6 @@ import (
_ "github.com/gogo/protobuf/gogoproto"
proto "github.com/gogo/protobuf/proto"
github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
github_com_opencontainers_go_digest "github.com/opencontainers/go-digest"
io "io"
math "math"
math_bits "math/bits"
@ -34,7 +33,7 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
// See https://godoc.org/github.com/opencontainers/image-spec/specs-go/v1#Descriptor
type Descriptor struct {
MediaType string `protobuf:"bytes,1,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
Digest github_com_opencontainers_go_digest.Digest `protobuf:"bytes,2,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
Digest string `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
Size_ int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
Annotations map[string]string `protobuf:"bytes,5,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@ -84,27 +83,25 @@ func init() {
}
var fileDescriptor_37f958df3707db9e = []byte{
// 309 bytes of a gzipped FileDescriptorProto
// 277 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x4e, 0xcf, 0x2c, 0xc9,
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x97, 0x54, 0x16, 0xa4, 0x16, 0xeb, 0xa7, 0xa4, 0x16,
0x27, 0x17, 0x65, 0x16, 0x94, 0xe4, 0x17, 0xe9, 0x15, 0x14, 0xe5, 0x97, 0xe4, 0x0b, 0x09, 0x20,
0x94, 0xe9, 0x81, 0x95, 0x48, 0x89, 0xa4, 0xe7, 0xa7, 0xe7, 0x83, 0x25, 0xf5, 0x41, 0x2c, 0x88,
0x3a, 0xa5, 0x39, 0x4c, 0x5c, 0x5c, 0x2e, 0x70, 0xcd, 0x42, 0xb2, 0x5c, 0x5c, 0xb9, 0xa9, 0x29,
0x3a, 0xa5, 0x17, 0x8c, 0x5c, 0x5c, 0x2e, 0x70, 0xcd, 0x42, 0xb2, 0x5c, 0x5c, 0xb9, 0xa9, 0x29,
0x99, 0x89, 0xf1, 0x20, 0x3d, 0x12, 0x8c, 0x0a, 0x8c, 0x1a, 0x9c, 0x41, 0x9c, 0x60, 0x91, 0x90,
0xca, 0x82, 0x54, 0x21, 0x2f, 0x2e, 0xb6, 0x94, 0xcc, 0xf4, 0xd4, 0xe2, 0x12, 0x09, 0x26, 0x90,
0x94, 0x93, 0xd1, 0x89, 0x7b, 0xf2, 0x0c, 0xb7, 0xee, 0xc9, 0x6b, 0x21, 0x39, 0x35, 0xbf, 0x20,
0x35, 0x0f, 0x6e, 0x79, 0xb1, 0x7e, 0x7a, 0xbe, 0x2e, 0x44, 0x8b, 0x9e, 0x0b, 0x98, 0x0a, 0x82,
0x9a, 0x20, 0x24, 0xc4, 0xc5, 0x52, 0x9c, 0x59, 0x95, 0x2a, 0xc1, 0xac, 0xc0, 0xa8, 0xc1, 0x1c,
0x04, 0x66, 0x0b, 0xf9, 0x73, 0x71, 0x27, 0xe6, 0xe5, 0xe5, 0x97, 0x24, 0x96, 0x64, 0xe6, 0xe7,
0x15, 0x4b, 0xb0, 0x2a, 0x30, 0x6b, 0x70, 0x1b, 0xe9, 0xea, 0xa1, 0xfb, 0x45, 0x0f, 0xe1, 0x62,
0x3d, 0x47, 0x84, 0x7a, 0xd7, 0xbc, 0x92, 0xa2, 0xca, 0x20, 0x64, 0x13, 0xa4, 0xec, 0xb8, 0x04,
0xd0, 0x15, 0x08, 0x09, 0x70, 0x31, 0x67, 0xa7, 0x56, 0x42, 0x3d, 0x07, 0x62, 0x0a, 0x89, 0x70,
0xb1, 0x96, 0x25, 0xe6, 0x94, 0xa6, 0x42, 0x7c, 0x15, 0x04, 0xe1, 0x58, 0x31, 0x59, 0x30, 0x3a,
0x79, 0x9d, 0x78, 0x28, 0xc7, 0x70, 0xe3, 0xa1, 0x1c, 0x43, 0xc3, 0x23, 0x39, 0xc6, 0x13, 0x8f,
0xe4, 0x18, 0x2f, 0x3c, 0x92, 0x63, 0x7c, 0xf0, 0x48, 0x8e, 0x31, 0xca, 0x80, 0xf8, 0xd8, 0xb1,
0x06, 0x93, 0x49, 0x6c, 0xe0, 0x10, 0x37, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, 0x81, 0x35, 0x34,
0x94, 0xd8, 0x01, 0x00, 0x00,
0xca, 0x82, 0x54, 0x21, 0x31, 0x2e, 0xb6, 0x94, 0xcc, 0xf4, 0xd4, 0xe2, 0x12, 0x09, 0x26, 0xb0,
0x14, 0x94, 0x27, 0x24, 0xc4, 0xc5, 0x52, 0x9c, 0x59, 0x95, 0x2a, 0xc1, 0xac, 0xc0, 0xa8, 0xc1,
0x1c, 0x04, 0x66, 0x0b, 0xf9, 0x73, 0x71, 0x27, 0xe6, 0xe5, 0xe5, 0x97, 0x24, 0x96, 0x64, 0xe6,
0xe7, 0x15, 0x4b, 0xb0, 0x2a, 0x30, 0x6b, 0x70, 0x1b, 0xe9, 0xea, 0xa1, 0xbb, 0x4b, 0x0f, 0x61,
0xbb, 0x9e, 0x23, 0x42, 0xbd, 0x6b, 0x5e, 0x49, 0x51, 0x65, 0x10, 0xb2, 0x09, 0x52, 0x76, 0x5c,
0x02, 0xe8, 0x0a, 0x84, 0x04, 0xb8, 0x98, 0xb3, 0x53, 0x2b, 0xa1, 0x0e, 0x05, 0x31, 0x85, 0x44,
0xb8, 0x58, 0xcb, 0x12, 0x73, 0x4a, 0x53, 0xa1, 0x2e, 0x84, 0x70, 0xac, 0x98, 0x2c, 0x18, 0x9d,
0xbc, 0x4e, 0x3c, 0x94, 0x63, 0xb8, 0xf1, 0x50, 0x8e, 0xa1, 0xe1, 0x91, 0x1c, 0xe3, 0x89, 0x47,
0x72, 0x8c, 0x17, 0x1e, 0xc9, 0x31, 0x3e, 0x78, 0x24, 0xc7, 0x18, 0x65, 0x40, 0x7c, 0x48, 0x5b,
0x83, 0xc9, 0x24, 0x36, 0x70, 0xe8, 0x19, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0xcf, 0x4e, 0xfb,
0xcb, 0xa4, 0x01, 0x00, 0x00,
}
func (m *Descriptor) Marshal() (dAtA []byte, err error) {
@ -343,7 +340,7 @@ func (m *Descriptor) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Digest = github_com_opencontainers_go_digest.Digest(dAtA[iNdEx:postIndex])
m.Digest = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 0 {

View File

@ -29,7 +29,7 @@ option go_package = "github.com/containerd/containerd/api/types;types";
// See https://godoc.org/github.com/opencontainers/image-spec/specs-go/v1#Descriptor
message Descriptor {
string media_type = 1;
string digest = 2 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
string digest = 2;
int64 size = 3;
map<string, string> annotations = 5;
}

View File

@ -31,6 +31,7 @@ import (
"github.com/containerd/containerd/rootfs"
"github.com/containerd/containerd/runtime/v2/runc/options"
"github.com/containerd/typeurl"
"github.com/opencontainers/go-digest"
imagespec "github.com/opencontainers/image-spec/specs-go/v1"
)
@ -72,7 +73,7 @@ func WithCheckpointTask(ctx context.Context, client *Client, c *containers.Conta
index.Manifests = append(index.Manifests, imagespec.Descriptor{
MediaType: d.MediaType,
Size: d.Size_,
Digest: d.Digest,
Digest: digest.Digest(d.Digest),
Platform: &platformSpec,
Annotations: d.Annotations,
})

View File

@ -36,7 +36,7 @@ func (ra *remoteReaderAt) Size() int64 {
func (ra *remoteReaderAt) ReadAt(p []byte, off int64) (n int, err error) {
rr := &contentapi.ReadContentRequest{
Digest: ra.digest,
Digest: ra.digest.String(),
Offset: off,
Size_: int64(len(p)),
}

View File

@ -42,7 +42,7 @@ func NewContentStore(client contentapi.ContentClient) content.Store {
func (pcs *proxyContentStore) Info(ctx context.Context, dgst digest.Digest) (content.Info, error) {
resp, err := pcs.client.Info(ctx, &contentapi.InfoRequest{
Digest: dgst,
Digest: dgst.String(),
})
if err != nil {
return content.Info{}, errdefs.FromGRPC(err)
@ -81,7 +81,7 @@ func (pcs *proxyContentStore) Walk(ctx context.Context, fn content.WalkFunc, fil
func (pcs *proxyContentStore) Delete(ctx context.Context, dgst digest.Digest) error {
if _, err := pcs.client.Delete(ctx, &contentapi.DeleteContentRequest{
Digest: dgst,
Digest: dgst.String(),
}); err != nil {
return errdefs.FromGRPC(err)
}
@ -119,7 +119,7 @@ func (pcs *proxyContentStore) Status(ctx context.Context, ref string) (content.S
UpdatedAt: status.UpdatedAt,
Offset: status.Offset,
Total: status.Total,
Expected: status.Expected,
Expected: digest.Digest(status.Expected),
}, nil
}
@ -152,7 +152,7 @@ func (pcs *proxyContentStore) ListStatuses(ctx context.Context, filters ...strin
UpdatedAt: status.UpdatedAt,
Offset: status.Offset,
Total: status.Total,
Expected: status.Expected,
Expected: digest.Digest(status.Expected),
})
}
@ -200,7 +200,7 @@ func (pcs *proxyContentStore) negotiate(ctx context.Context, ref string, size in
Action: contentapi.WriteActionStat,
Ref: ref,
Total: size,
Expected: expected,
Expected: expected.String(),
}); err != nil {
return nil, 0, err
}
@ -215,7 +215,7 @@ func (pcs *proxyContentStore) negotiate(ctx context.Context, ref string, size in
func infoToGRPC(info content.Info) contentapi.Info {
return contentapi.Info{
Digest: info.Digest,
Digest: info.Digest.String(),
Size_: info.Size,
CreatedAt: info.CreatedAt,
UpdatedAt: info.UpdatedAt,
@ -225,7 +225,7 @@ func infoToGRPC(info content.Info) contentapi.Info {
func infoFromGRPC(info contentapi.Info) content.Info {
return content.Info{
Digest: info.Digest,
Digest: digest.Digest(info.Digest),
Size: info.Size_,
CreatedAt: info.CreatedAt,
UpdatedAt: info.UpdatedAt,

View File

@ -45,7 +45,7 @@ func (rw *remoteWriter) send(req *contentapi.WriteContentRequest) (*contentapi.W
if err == nil {
// try to keep these in sync
if resp.Digest != "" {
rw.digest = resp.Digest
rw.digest = digest.Digest(resp.Digest)
}
}
@ -92,7 +92,7 @@ func (rw *remoteWriter) Write(p []byte) (n int, err error) {
rw.offset += int64(n)
if resp.Digest != "" {
rw.digest = resp.Digest
rw.digest = digest.Digest(resp.Digest)
}
return
}
@ -115,7 +115,7 @@ func (rw *remoteWriter) Commit(ctx context.Context, size int64, expected digest.
Action: contentapi.WriteActionCommit,
Total: size,
Offset: rw.offset,
Expected: expected,
Expected: expected.String(),
Labels: base.Labels,
})
if err != nil {
@ -126,11 +126,12 @@ func (rw *remoteWriter) Commit(ctx context.Context, size int64, expected digest.
return fmt.Errorf("unexpected size: %v != %v", resp.Offset, size)
}
if expected != "" && resp.Digest != expected {
actual := digest.Digest(resp.Digest)
if expected != "" && actual != expected {
return fmt.Errorf("unexpected digest: %v != %v", resp.Digest, expected)
}
rw.digest = resp.Digest
rw.digest = actual
rw.offset = resp.Offset
return nil
}

View File

@ -24,6 +24,7 @@ import (
"github.com/containerd/containerd/diff"
"github.com/containerd/containerd/errdefs"
"github.com/containerd/containerd/mount"
"github.com/opencontainers/go-digest"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
)
@ -88,7 +89,7 @@ func (r *diffRemote) Compare(ctx context.Context, a, b []mount.Mount, opts ...di
func toDescriptor(d *types.Descriptor) ocispec.Descriptor {
return ocispec.Descriptor{
MediaType: d.MediaType,
Digest: d.Digest,
Digest: digest.Digest(d.Digest),
Size: d.Size_,
Annotations: d.Annotations,
}
@ -97,7 +98,7 @@ func toDescriptor(d *types.Descriptor) ocispec.Descriptor {
func fromDescriptor(d ocispec.Descriptor) *types.Descriptor {
return &types.Descriptor{
MediaType: d.MediaType,
Digest: d.Digest,
Digest: d.Digest.String(),
Size_: d.Size,
Annotations: d.Annotations,
}

View File

@ -24,6 +24,7 @@ import (
"github.com/containerd/containerd/errdefs"
"github.com/containerd/containerd/images"
ptypes "github.com/gogo/protobuf/types"
"github.com/opencontainers/go-digest"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
)
@ -140,7 +141,7 @@ func descFromProto(desc *types.Descriptor) ocispec.Descriptor {
return ocispec.Descriptor{
MediaType: desc.MediaType,
Size: desc.Size_,
Digest: desc.Digest,
Digest: digest.Digest(desc.Digest),
Annotations: desc.Annotations,
}
}
@ -149,7 +150,7 @@ func descToProto(desc *ocispec.Descriptor) types.Descriptor {
return types.Descriptor{
MediaType: desc.MediaType,
Size_: desc.Size,
Digest: desc.Digest,
Digest: desc.Digest.String(),
Annotations: desc.Annotations,
}
}

View File

@ -57,11 +57,12 @@ func (s *service) Register(server *grpc.Server) error {
}
func (s *service) Info(ctx context.Context, req *api.InfoRequest) (*api.InfoResponse, error) {
if err := req.Digest.Validate(); err != nil {
dg, err := digest.Parse(req.Digest)
if err != nil {
return nil, status.Errorf(codes.InvalidArgument, "%q failed validation", req.Digest)
}
bi, err := s.store.Info(ctx, req.Digest)
bi, err := s.store.Info(ctx, dg)
if err != nil {
return nil, errdefs.ToGRPC(err)
}
@ -72,7 +73,8 @@ func (s *service) Info(ctx context.Context, req *api.InfoRequest) (*api.InfoResp
}
func (s *service) Update(ctx context.Context, req *api.UpdateRequest) (*api.UpdateResponse, error) {
if err := req.Info.Digest.Validate(); err != nil {
_, err := digest.Parse(req.Info.Digest)
if err != nil {
return nil, status.Errorf(codes.InvalidArgument, "%q failed validation", req.Info.Digest)
}
@ -99,7 +101,7 @@ func (s *service) List(req *api.ListContentRequest, session api.Content_ListServ
if err := s.store.Walk(session.Context(), func(info content.Info) error {
buffer = append(buffer, api.Info{
Digest: info.Digest,
Digest: info.Digest.String(),
Size_: info.Size,
CreatedAt: info.CreatedAt,
Labels: info.Labels,
@ -130,11 +132,12 @@ func (s *service) List(req *api.ListContentRequest, session api.Content_ListServ
func (s *service) Delete(ctx context.Context, req *api.DeleteContentRequest) (*ptypes.Empty, error) {
log.G(ctx).WithField("digest", req.Digest).Debugf("delete content")
if err := req.Digest.Validate(); err != nil {
dg, err := digest.Parse(req.Digest)
if err != nil {
return nil, status.Errorf(codes.InvalidArgument, err.Error())
}
if err := s.store.Delete(ctx, req.Digest); err != nil {
if err := s.store.Delete(ctx, dg); err != nil {
return nil, errdefs.ToGRPC(err)
}
@ -142,16 +145,17 @@ func (s *service) Delete(ctx context.Context, req *api.DeleteContentRequest) (*p
}
func (s *service) Read(req *api.ReadContentRequest, session api.Content_ReadServer) error {
if err := req.Digest.Validate(); err != nil {
dg, err := digest.Parse(req.Digest)
if err != nil {
return status.Errorf(codes.InvalidArgument, "%v: %v", req.Digest, err)
}
oi, err := s.store.Info(session.Context(), req.Digest)
oi, err := s.store.Info(session.Context(), dg)
if err != nil {
return errdefs.ToGRPC(err)
}
ra, err := s.store.ReaderAt(session.Context(), ocispec.Descriptor{Digest: req.Digest})
ra, err := s.store.ReaderAt(session.Context(), ocispec.Descriptor{Digest: dg})
if err != nil {
return errdefs.ToGRPC(err)
}
@ -221,7 +225,7 @@ func (s *service) Status(ctx context.Context, req *api.StatusRequest) (*api.Stat
Ref: status.Ref,
Offset: status.Offset,
Total: status.Total,
Expected: status.Expected,
Expected: status.Expected.String(),
}
return &resp, nil
@ -241,7 +245,7 @@ func (s *service) ListStatuses(ctx context.Context, req *api.ListStatusesRequest
Ref: status.Ref,
Offset: status.Offset,
Total: status.Total,
Expected: status.Expected,
Expected: status.Expected.String(),
})
}
@ -293,7 +297,7 @@ func (s *service) Write(session api.Content_WriteServer) (err error) {
"ref": ref,
}
total = req.Total
expected = req.Expected
expected = digest.Digest(req.Expected)
if total > 0 {
fields["total"] = total
}
@ -341,12 +345,13 @@ func (s *service) Write(session api.Content_WriteServer) (err error) {
// Supporting these two paths is quite awkward but it lets both API
// users use the same writer style for each with a minimum of overhead.
if req.Expected != "" {
if expected != "" && expected != req.Expected {
log.G(ctx).Debugf("commit digest differs from writer digest: %v != %v", req.Expected, expected)
dg := digest.Digest(req.Expected)
if expected != "" && expected != dg {
log.G(ctx).Debugf("commit digest differs from writer digest: %v != %v", dg, expected)
}
expected = req.Expected
expected = dg
if _, err := s.store.Info(session.Context(), req.Expected); err == nil {
if _, err := s.store.Info(session.Context(), dg); err == nil {
if err := wr.Close(); err != nil {
log.G(ctx).WithError(err).Error("failed to close writer")
}
@ -369,7 +374,7 @@ func (s *service) Write(session api.Content_WriteServer) (err error) {
switch req.Action {
case api.WriteActionStat:
msg.Digest = wr.Digest()
msg.Digest = wr.Digest().String()
msg.StartedAt = ws.StartedAt
msg.UpdatedAt = ws.UpdatedAt
msg.Total = total
@ -416,7 +421,7 @@ func (s *service) Write(session api.Content_WriteServer) (err error) {
}
}
msg.Digest = wr.Digest()
msg.Digest = wr.Digest().String()
}
if err := session.Send(&msg); err != nil {
@ -448,7 +453,7 @@ func (s *service) Abort(ctx context.Context, req *api.AbortRequest) (*ptypes.Emp
func infoToGRPC(info content.Info) api.Info {
return api.Info{
Digest: info.Digest,
Digest: info.Digest.String(),
Size_: info.Size,
CreatedAt: info.CreatedAt,
UpdatedAt: info.UpdatedAt,
@ -458,7 +463,7 @@ func infoToGRPC(info content.Info) api.Info {
func infoFromGRPC(info api.Info) content.Info {
return content.Info{
Digest: info.Digest,
Digest: digest.Digest(info.Digest),
Size: info.Size_,
CreatedAt: info.CreatedAt,
UpdatedAt: info.UpdatedAt,

View File

@ -71,6 +71,6 @@ func (s *store) Delete(ctx context.Context, dgst digest.Digest) error {
}
// TODO: Consider whether we should return error here.
return s.publisher.Publish(ctx, "/content/delete", &eventstypes.ContentDelete{
Digest: dgst,
Digest: dgst.String(),
})
}

View File

@ -27,6 +27,7 @@ import (
"github.com/containerd/containerd/mount"
"github.com/containerd/containerd/plugin"
"github.com/containerd/containerd/services"
"github.com/opencontainers/go-digest"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
"google.golang.org/grpc"
)
@ -170,7 +171,7 @@ func toMounts(apim []*types.Mount) []mount.Mount {
func toDescriptor(d *types.Descriptor) ocispec.Descriptor {
return ocispec.Descriptor{
MediaType: d.MediaType,
Digest: d.Digest,
Digest: digest.Digest(d.Digest),
Size: d.Size_,
Annotations: d.Annotations,
}
@ -179,7 +180,7 @@ func toDescriptor(d *types.Descriptor) ocispec.Descriptor {
func fromDescriptor(d ocispec.Descriptor) *types.Descriptor {
return &types.Descriptor{
MediaType: d.MediaType,
Digest: d.Digest,
Digest: d.Digest.String(),
Size_: d.Size,
Annotations: d.Annotations,
}

View File

@ -20,6 +20,7 @@ import (
imagesapi "github.com/containerd/containerd/api/services/images/v1"
"github.com/containerd/containerd/api/types"
"github.com/containerd/containerd/images"
"github.com/opencontainers/go-digest"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
)
@ -58,7 +59,7 @@ func descFromProto(desc *types.Descriptor) ocispec.Descriptor {
return ocispec.Descriptor{
MediaType: desc.MediaType,
Size: desc.Size_,
Digest: desc.Digest,
Digest: digest.Digest(desc.Digest),
Annotations: desc.Annotations,
}
}
@ -67,7 +68,7 @@ func descToProto(desc *ocispec.Descriptor) types.Descriptor {
return types.Descriptor{
MediaType: desc.MediaType,
Size_: desc.Size,
Digest: desc.Digest,
Digest: desc.Digest.String(),
Annotations: desc.Annotations,
}
}

View File

@ -47,6 +47,7 @@ import (
"github.com/containerd/containerd/services"
"github.com/containerd/typeurl"
ptypes "github.com/gogo/protobuf/types"
"github.com/opencontainers/go-digest"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
@ -173,7 +174,7 @@ func (l *local) Create(ctx context.Context, r *api.CreateTaskRequest, _ ...grpc.
}
reader, err := l.store.ReaderAt(ctx, ocispec.Descriptor{
MediaType: r.Checkpoint.MediaType,
Digest: r.Checkpoint.Digest,
Digest: digest.Digest(r.Checkpoint.Digest),
Size: r.Checkpoint.Size_,
Annotations: r.Checkpoint.Annotations,
})
@ -688,7 +689,7 @@ func (l *local) writeContent(ctx context.Context, mediaType, ref string, r io.Re
}
return &types.Descriptor{
MediaType: mediaType,
Digest: writer.Digest(),
Digest: writer.Digest().String(),
Size_: size,
Annotations: make(map[string]string),
}, nil

View File

@ -444,7 +444,7 @@ func (t *task) Checkpoint(ctx context.Context, opts ...CheckpointTaskOpts) (Imag
if i.Name == "" {
i.Name = fmt.Sprintf(checkpointNameFormat, t.id, time.Now().Format(checkpointDateFormat))
}
request.ParentCheckpoint = i.ParentCheckpoint
request.ParentCheckpoint = i.ParentCheckpoint.String()
if i.Options != nil {
any, err := typeurl.MarshalAny(i.Options)
if err != nil {
@ -604,7 +604,7 @@ func (t *task) checkpointTask(ctx context.Context, index *v1.Index, request *tas
index.Manifests = append(index.Manifests, v1.Descriptor{
MediaType: d.MediaType,
Size: d.Size_,
Digest: d.Digest,
Digest: digest.Digest(d.Digest),
Platform: &v1.Platform{
OS: goruntime.GOOS,
Architecture: goruntime.GOARCH,

View File

@ -70,7 +70,7 @@ func WithTaskCheckpoint(im Image) NewTaskOpts {
info.Checkpoint = &types.Descriptor{
MediaType: m.MediaType,
Size_: m.Size,
Digest: m.Digest,
Digest: m.Digest.String(),
Annotations: m.Annotations,
}
return nil