Merge pull request #1072 from stevvooe/move-events-to-services-pkg
events: move types into service package
This commit is contained in:
commit
003ed58859
@ -1,25 +1,26 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/container.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/container.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Package event is a generated protocol buffer package.
|
Package events is a generated protocol buffer package.
|
||||||
|
|
||||||
It is generated from these files:
|
It is generated from these files:
|
||||||
github.com/containerd/containerd/api/types/event/container.proto
|
github.com/containerd/containerd/api/services/events/v1/container.proto
|
||||||
github.com/containerd/containerd/api/types/event/content.proto
|
github.com/containerd/containerd/api/services/events/v1/content.proto
|
||||||
github.com/containerd/containerd/api/types/event/event.proto
|
github.com/containerd/containerd/api/services/events/v1/events.proto
|
||||||
github.com/containerd/containerd/api/types/event/image.proto
|
github.com/containerd/containerd/api/services/events/v1/image.proto
|
||||||
github.com/containerd/containerd/api/types/event/namespace.proto
|
github.com/containerd/containerd/api/services/events/v1/namespace.proto
|
||||||
github.com/containerd/containerd/api/types/event/runtime.proto
|
github.com/containerd/containerd/api/services/events/v1/runtime.proto
|
||||||
github.com/containerd/containerd/api/types/event/snapshot.proto
|
github.com/containerd/containerd/api/services/events/v1/snapshot.proto
|
||||||
github.com/containerd/containerd/api/types/event/task.proto
|
github.com/containerd/containerd/api/services/events/v1/task.proto
|
||||||
|
|
||||||
It has these top-level messages:
|
It has these top-level messages:
|
||||||
ContainerCreate
|
ContainerCreate
|
||||||
ContainerUpdate
|
ContainerUpdate
|
||||||
ContainerDelete
|
ContainerDelete
|
||||||
ContentDelete
|
ContentDelete
|
||||||
|
StreamEventsRequest
|
||||||
Envelope
|
Envelope
|
||||||
ImageUpdate
|
ImageUpdate
|
||||||
ImageDelete
|
ImageDelete
|
||||||
@ -38,7 +39,7 @@
|
|||||||
TaskStart
|
TaskStart
|
||||||
TaskDelete
|
TaskDelete
|
||||||
*/
|
*/
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
@ -103,10 +104,10 @@ func (*ContainerDelete) ProtoMessage() {}
|
|||||||
func (*ContainerDelete) Descriptor() ([]byte, []int) { return fileDescriptorContainer, []int{2} }
|
func (*ContainerDelete) Descriptor() ([]byte, []int) { return fileDescriptorContainer, []int{2} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*ContainerCreate)(nil), "containerd.v1.types.ContainerCreate")
|
proto.RegisterType((*ContainerCreate)(nil), "containerd.services.events.v1.ContainerCreate")
|
||||||
proto.RegisterType((*ContainerCreate_Runtime)(nil), "containerd.v1.types.ContainerCreate.Runtime")
|
proto.RegisterType((*ContainerCreate_Runtime)(nil), "containerd.services.events.v1.ContainerCreate.Runtime")
|
||||||
proto.RegisterType((*ContainerUpdate)(nil), "containerd.v1.types.ContainerUpdate")
|
proto.RegisterType((*ContainerUpdate)(nil), "containerd.services.events.v1.ContainerUpdate")
|
||||||
proto.RegisterType((*ContainerDelete)(nil), "containerd.v1.types.ContainerDelete")
|
proto.RegisterType((*ContainerDelete)(nil), "containerd.services.events.v1.ContainerDelete")
|
||||||
}
|
}
|
||||||
func (m *ContainerCreate) Marshal() (dAtA []byte, err error) {
|
func (m *ContainerCreate) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -1226,34 +1227,35 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/container.proto", fileDescriptorContainer)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/container.proto", fileDescriptorContainer)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorContainer = []byte{
|
var fileDescriptorContainer = []byte{
|
||||||
// 387 bytes of a gzipped FileDescriptorProto
|
// 406 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x52, 0x4f, 0x6b, 0xe2, 0x40,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x53, 0xcd, 0xaa, 0xd3, 0x40,
|
||||||
0x1c, 0x75, 0x12, 0x37, 0xb2, 0x13, 0xc1, 0x65, 0xd6, 0x43, 0xc8, 0x21, 0x8a, 0x27, 0x0f, 0xcb,
|
0x18, 0xed, 0x24, 0x35, 0xc5, 0x49, 0xa1, 0x32, 0x74, 0x11, 0x02, 0xa6, 0xa5, 0xab, 0xae, 0x26,
|
||||||
0x64, 0xd7, 0xbd, 0xac, 0x9e, 0x16, 0xff, 0x51, 0xa1, 0x50, 0x18, 0xe9, 0xb9, 0x44, 0x33, 0x4d,
|
0xb4, 0x82, 0x68, 0x05, 0x17, 0xfd, 0x51, 0x0a, 0x82, 0x32, 0x22, 0x88, 0x20, 0x92, 0x36, 0x63,
|
||||||
0x43, 0x93, 0x4c, 0x48, 0x46, 0xc1, 0x5b, 0x0f, 0xfd, 0x3c, 0xfd, 0x1c, 0x1e, 0x7b, 0xe8, 0xa1,
|
0x1c, 0x4c, 0x32, 0x21, 0x99, 0x06, 0xba, 0xf3, 0x09, 0x7c, 0x1e, 0x1f, 0xa1, 0x4b, 0x97, 0xae,
|
||||||
0x27, 0xa9, 0xf9, 0x24, 0x25, 0x93, 0x18, 0x43, 0x29, 0x05, 0x4b, 0x6f, 0xbf, 0xc9, 0x7b, 0xef,
|
0x8a, 0xcd, 0xea, 0x3e, 0xc6, 0x25, 0x99, 0x24, 0x0d, 0x77, 0x71, 0xb9, 0xb7, 0xdc, 0xdd, 0x99,
|
||||||
0xf7, 0x7b, 0xef, 0x11, 0xf8, 0xdf, 0x71, 0xf9, 0xcd, 0x6a, 0x81, 0x97, 0xcc, 0x37, 0x97, 0x2c,
|
0x7c, 0xe7, 0x9c, 0x9c, 0xef, 0xc0, 0x07, 0xdf, 0x7a, 0x4c, 0xfc, 0xd8, 0x6d, 0xf0, 0x96, 0x07,
|
||||||
0xe0, 0x96, 0x1b, 0xd0, 0xc8, 0x2e, 0x8f, 0x56, 0xe8, 0x9a, 0x7c, 0x13, 0xd2, 0xd8, 0xa4, 0x6b,
|
0xf6, 0x96, 0x87, 0xc2, 0x61, 0x21, 0x8d, 0xdd, 0x26, 0x74, 0x22, 0x66, 0x27, 0x34, 0x4e, 0xd9,
|
||||||
0x1a, 0xf0, 0x23, 0x84, 0xc3, 0x88, 0x71, 0x86, 0x7e, 0x1e, 0xb9, 0x78, 0xfd, 0x07, 0x0b, 0xaa,
|
0x96, 0x26, 0x36, 0x4d, 0x69, 0x28, 0x12, 0x3b, 0x9d, 0x9c, 0x19, 0x38, 0x8a, 0xb9, 0xe0, 0xe8,
|
||||||
0xde, 0x74, 0x98, 0xc3, 0x04, 0x6e, 0xa6, 0x53, 0x46, 0xed, 0x3c, 0x49, 0xb0, 0x31, 0x3a, 0xb0,
|
0xe9, 0x59, 0x82, 0x2b, 0x3a, 0x96, 0x74, 0x9c, 0x4e, 0xcc, 0xbe, 0xc7, 0x3d, 0x5e, 0x30, 0xed,
|
||||||
0x47, 0x11, 0xb5, 0x38, 0x45, 0x3d, 0x58, 0x2f, 0x16, 0x5c, 0xb9, 0xb6, 0x06, 0xda, 0xa0, 0xfb,
|
0x1c, 0x49, 0xd1, 0xe8, 0x4a, 0x81, 0xbd, 0x45, 0xa5, 0x5b, 0xc4, 0xd4, 0x11, 0x14, 0x4d, 0x61,
|
||||||
0x7d, 0xd8, 0x48, 0x76, 0x2d, 0xb5, 0xa0, 0xce, 0xc6, 0x44, 0x2d, 0x48, 0x33, 0x1b, 0x35, 0xe1,
|
0xb7, 0xb6, 0xfa, 0xc6, 0x5c, 0x03, 0x0c, 0xc1, 0xf8, 0xf1, 0xbc, 0x97, 0x1d, 0x07, 0x7a, 0x4d,
|
||||||
0x37, 0xd7, 0xb7, 0x1c, 0xaa, 0x49, 0x29, 0x99, 0x64, 0x0f, 0x34, 0x85, 0xb5, 0x68, 0x15, 0x70,
|
0x5d, 0x2f, 0x89, 0x5e, 0x93, 0xd6, 0x2e, 0xea, 0xc3, 0x47, 0x2c, 0x70, 0x3c, 0x6a, 0x28, 0x39,
|
||||||
0xd7, 0xa7, 0x9a, 0xdc, 0x06, 0x5d, 0xb5, 0xf7, 0x0b, 0xbf, 0x63, 0x0d, 0xbf, 0x31, 0x80, 0x49,
|
0x99, 0xc8, 0x07, 0xfa, 0x00, 0x3b, 0xf1, 0x2e, 0x14, 0x2c, 0xa0, 0x86, 0x3a, 0x04, 0x63, 0x7d,
|
||||||
0xa6, 0x21, 0x07, 0xb1, 0xfe, 0x00, 0x60, 0x2d, 0xff, 0x88, 0x10, 0xac, 0x06, 0x96, 0x4f, 0x33,
|
0xfa, 0x1c, 0xdf, 0x1a, 0x12, 0xdf, 0x88, 0x82, 0x89, 0x54, 0x93, 0xca, 0xc6, 0xfc, 0x03, 0x60,
|
||||||
0x57, 0x44, 0xcc, 0x68, 0x0e, 0x6b, 0x2c, 0xe4, 0x2e, 0x0b, 0x62, 0x4d, 0x6a, 0xcb, 0x5d, 0xb5,
|
0xa7, 0xfc, 0x88, 0x10, 0x6c, 0x87, 0x4e, 0x40, 0x65, 0x3e, 0x52, 0x60, 0xf4, 0x15, 0x76, 0x78,
|
||||||
0xd7, 0x3f, 0xe5, 0x0e, 0xbe, 0xc8, 0xb4, 0x93, 0x80, 0x47, 0x1b, 0x72, 0xd8, 0xa4, 0x0f, 0x60,
|
0x24, 0x18, 0x0f, 0x13, 0x43, 0x19, 0xaa, 0x63, 0x7d, 0xba, 0xb8, 0xec, 0x8f, 0xf8, 0xbd, 0x74,
|
||||||
0xbd, 0x0c, 0xa0, 0x1f, 0x50, 0xbe, 0xa5, 0x9b, 0xfc, 0x6e, 0x3a, 0xa6, 0xa1, 0xd7, 0x96, 0xb7,
|
0x59, 0x85, 0x22, 0xde, 0x93, 0xca, 0xd3, 0x9c, 0xc1, 0x6e, 0x73, 0x80, 0x9e, 0x40, 0xf5, 0x27,
|
||||||
0x2a, 0x42, 0x8b, 0xc7, 0x40, 0xfa, 0x07, 0x3a, 0xf7, 0xe5, 0x5a, 0x2f, 0x43, 0xfb, 0x6b, 0x6b,
|
0xdd, 0x97, 0x09, 0x72, 0x98, 0x17, 0x91, 0x3a, 0xfe, 0xae, 0x2e, 0xa2, 0x78, 0xcc, 0x94, 0x17,
|
||||||
0x3d, 0x83, 0x8a, 0x67, 0x2d, 0xa8, 0x17, 0x6b, 0xb2, 0x48, 0xfb, 0xfb, 0xe3, 0xb4, 0xd9, 0x7d,
|
0x60, 0xf4, 0xbb, 0x59, 0xf5, 0xa7, 0xc8, 0x7d, 0xd8, 0xaa, 0x09, 0xd4, 0x7c, 0x67, 0x43, 0xfd,
|
||||||
0x7c, 0x2e, 0x24, 0x59, 0xc8, 0x5c, 0x8f, 0x3a, 0x50, 0x89, 0x18, 0xe3, 0xd7, 0xb1, 0x56, 0x15,
|
0xc4, 0x50, 0x8b, 0xbd, 0x67, 0x77, 0xdd, 0x5b, 0x26, 0xc1, 0xef, 0x0a, 0xb1, 0x5c, 0xb7, 0x74,
|
||||||
0x6e, 0x60, 0xb2, 0x6b, 0x29, 0x84, 0x31, 0x3e, 0x9d, 0x93, 0x1c, 0xd1, 0xfb, 0x50, 0x2d, 0x49,
|
0x42, 0x23, 0xa8, 0xc5, 0x9c, 0x8b, 0xef, 0x89, 0xd1, 0x2e, 0x72, 0xc1, 0xec, 0x38, 0xd0, 0x08,
|
||||||
0x4f, 0xaa, 0x61, 0x52, 0x6a, 0x61, 0x4c, 0x3d, 0xfa, 0xb9, 0x16, 0x86, 0xda, 0x76, 0x6f, 0x54,
|
0xe7, 0xe2, 0xcd, 0x47, 0x52, 0x4e, 0xcc, 0x97, 0x50, 0x6f, 0x48, 0xef, 0x55, 0xc8, 0xaa, 0xd1,
|
||||||
0x9e, 0xf7, 0x46, 0xe5, 0x2e, 0x31, 0xc0, 0x36, 0x31, 0xc0, 0x63, 0x62, 0x80, 0x97, 0xc4, 0x00,
|
0xc7, 0x92, 0xfa, 0xf4, 0xb2, 0x3e, 0xe6, 0x9f, 0x0f, 0x27, 0xab, 0xf5, 0xef, 0x64, 0xb5, 0x7e,
|
||||||
0x0b, 0x45, 0xfc, 0xc5, 0x7f, 0x5f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x47, 0x2f, 0xd1, 0x73, 0x34,
|
0x65, 0x16, 0x38, 0x64, 0x16, 0xf8, 0x9b, 0x59, 0xe0, 0x7f, 0x66, 0x81, 0x2f, 0xaf, 0x2f, 0x3c,
|
||||||
0x03, 0x00, 0x00,
|
0xad, 0x57, 0x12, 0x6d, 0xb4, 0xe2, 0x46, 0x9e, 0x5d, 0x07, 0x00, 0x00, 0xff, 0xff, 0x66, 0x84,
|
||||||
|
0x14, 0x0e, 0xa3, 0x03, 0x00, 0x00,
|
||||||
}
|
}
|
@ -1,9 +1,11 @@
|
|||||||
syntax = "proto3";
|
syntax = "proto3";
|
||||||
|
|
||||||
package containerd.v1.types;
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
import "gogoproto/gogo.proto";
|
import "gogoproto/gogo.proto";
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
message ContainerCreate {
|
message ContainerCreate {
|
||||||
string container_id = 1;
|
string container_id = 1;
|
||||||
string image = 2;
|
string image = 2;
|
@ -1,8 +1,8 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/content.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/content.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
@ -30,7 +30,7 @@ func (*ContentDelete) ProtoMessage() {}
|
|||||||
func (*ContentDelete) Descriptor() ([]byte, []int) { return fileDescriptorContent, []int{0} }
|
func (*ContentDelete) Descriptor() ([]byte, []int) { return fileDescriptorContent, []int{0} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*ContentDelete)(nil), "containerd.v1.types.ContentDelete")
|
proto.RegisterType((*ContentDelete)(nil), "containerd.services.events.v1.ContentDelete")
|
||||||
}
|
}
|
||||||
func (m *ContentDelete) Marshal() (dAtA []byte, err error) {
|
func (m *ContentDelete) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -309,21 +309,23 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/content.proto", fileDescriptorContent)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/content.proto", fileDescriptorContent)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorContent = []byte{
|
var fileDescriptorContent = []byte{
|
||||||
// 192 bytes of a gzipped FileDescriptorProto
|
// 210 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x4b, 0xcf, 0x2c, 0xc9,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x4d, 0xcf, 0x2c, 0xc9,
|
||||||
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
|
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, 0x96, 0xa5,
|
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x17, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x16, 0xeb,
|
||||||
0xe6, 0x95, 0x80, 0xa5, 0x52, 0xf3, 0x4a, 0xf4, 0x0a, 0x8a, 0xf2, 0x4b, 0xf2, 0x85, 0x84, 0x11,
|
0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0xeb, 0x97, 0x19, 0x82, 0x55, 0xa4, 0xe6, 0x95, 0xe8, 0x15,
|
||||||
0x2a, 0xf5, 0xca, 0x0c, 0xf5, 0xc0, 0x0a, 0xa5, 0x44, 0xd2, 0xf3, 0xd3, 0xf3, 0xc1, 0xf2, 0xfa,
|
0x14, 0xe5, 0x97, 0xe4, 0x0b, 0xc9, 0x22, 0x34, 0xe8, 0xc1, 0x14, 0xeb, 0x41, 0x14, 0xeb, 0x95,
|
||||||
0x20, 0x16, 0x44, 0xa9, 0x52, 0x34, 0x17, 0xaf, 0x33, 0x44, 0xaf, 0x4b, 0x6a, 0x4e, 0x6a, 0x49,
|
0x19, 0x4a, 0x89, 0xa4, 0xe7, 0xa7, 0xe7, 0x83, 0x55, 0xea, 0x83, 0x58, 0x10, 0x4d, 0x4a, 0xd1,
|
||||||
0xaa, 0x90, 0x17, 0x17, 0x5b, 0x4a, 0x66, 0x7a, 0x6a, 0x71, 0x89, 0x04, 0xa3, 0x02, 0xa3, 0x06,
|
0x5c, 0xbc, 0xce, 0x10, 0x53, 0x5c, 0x52, 0x73, 0x52, 0x4b, 0x52, 0x85, 0xbc, 0xb8, 0xd8, 0x52,
|
||||||
0xa7, 0x93, 0xd1, 0x89, 0x7b, 0xf2, 0x0c, 0xb7, 0xee, 0xc9, 0x6b, 0x21, 0xb9, 0x29, 0xbf, 0x20,
|
0x32, 0xd3, 0x53, 0x8b, 0x4b, 0x24, 0x18, 0x15, 0x18, 0x35, 0x38, 0x9d, 0x8c, 0x4e, 0xdc, 0x93,
|
||||||
0x35, 0x0f, 0x6e, 0x45, 0xb1, 0x7e, 0x7a, 0xbe, 0x2e, 0x44, 0x8b, 0x9e, 0x0b, 0x98, 0x0a, 0x82,
|
0x67, 0xb8, 0x75, 0x4f, 0x5e, 0x0b, 0xc9, 0x91, 0xf9, 0x05, 0xa9, 0x79, 0x70, 0xcb, 0x8a, 0xf5,
|
||||||
0x9a, 0xe0, 0x24, 0x71, 0xe2, 0xa1, 0x1c, 0xc3, 0x8d, 0x87, 0x72, 0x0c, 0x0d, 0x8f, 0xe4, 0x18,
|
0xd3, 0xf3, 0x75, 0x21, 0x5a, 0xf4, 0x5c, 0xc0, 0x54, 0x10, 0xd4, 0x04, 0xa7, 0x88, 0x13, 0x0f,
|
||||||
0x4f, 0x3c, 0x92, 0x63, 0xbc, 0xf0, 0x48, 0x8e, 0xf1, 0xc1, 0x23, 0x39, 0xc6, 0x24, 0x36, 0xb0,
|
0xe5, 0x18, 0x6e, 0x3c, 0x94, 0x63, 0x68, 0x78, 0x24, 0xc7, 0x78, 0xe2, 0x91, 0x1c, 0xe3, 0x85,
|
||||||
0xed, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3f, 0x6c, 0x08, 0x88, 0xea, 0x00, 0x00, 0x00,
|
0x47, 0x72, 0x8c, 0x0f, 0x1e, 0xc9, 0x31, 0x46, 0xd9, 0x91, 0xe9, 0x65, 0x6b, 0x08, 0x2b, 0x89,
|
||||||
|
0x0d, 0xec, 0x7a, 0x63, 0x40, 0x00, 0x00, 0x00, 0xff, 0xff, 0x6a, 0x41, 0x46, 0x06, 0x3b, 0x01,
|
||||||
|
0x00, 0x00,
|
||||||
}
|
}
|
@ -1,9 +1,11 @@
|
|||||||
syntax = "proto3";
|
syntax = "proto3";
|
||||||
|
|
||||||
package containerd.v1.types;
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
import "gogoproto/gogo.proto";
|
import "gogoproto/gogo.proto";
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
message ContentDelete {
|
message ContentDelete {
|
||||||
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
|
string digest = 1 [(gogoproto.customtype) = "github.com/opencontainers/go-digest.Digest", (gogoproto.nullable) = false];
|
||||||
}
|
}
|
@ -2,27 +2,24 @@
|
|||||||
// source: github.com/containerd/containerd/api/services/events/v1/events.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/events.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
/*
|
|
||||||
Package events is a generated protocol buffer package.
|
|
||||||
|
|
||||||
It is generated from these files:
|
|
||||||
github.com/containerd/containerd/api/services/events/v1/events.proto
|
|
||||||
|
|
||||||
It has these top-level messages:
|
|
||||||
StreamEventsRequest
|
|
||||||
*/
|
|
||||||
package events
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
import math "math"
|
import math "math"
|
||||||
import containerd_v1_types "github.com/containerd/containerd/api/types/event"
|
import _ "github.com/gogo/protobuf/gogoproto"
|
||||||
|
import _ "github.com/gogo/protobuf/types"
|
||||||
|
import google_protobuf2 "github.com/gogo/protobuf/types"
|
||||||
|
|
||||||
|
import time "time"
|
||||||
|
|
||||||
import (
|
import (
|
||||||
context "golang.org/x/net/context"
|
context "golang.org/x/net/context"
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
import github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
|
||||||
|
|
||||||
import strings "strings"
|
import strings "strings"
|
||||||
import reflect "reflect"
|
import reflect "reflect"
|
||||||
|
|
||||||
@ -32,12 +29,7 @@ import io "io"
|
|||||||
var _ = proto.Marshal
|
var _ = proto.Marshal
|
||||||
var _ = fmt.Errorf
|
var _ = fmt.Errorf
|
||||||
var _ = math.Inf
|
var _ = math.Inf
|
||||||
|
var _ = time.Kitchen
|
||||||
// This is a compile-time assertion to ensure that this generated file
|
|
||||||
// is compatible with the proto package it is being compiled against.
|
|
||||||
// A compilation error at this line likely means your copy of the
|
|
||||||
// proto package needs to be updated.
|
|
||||||
const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
|
|
||||||
|
|
||||||
type StreamEventsRequest struct {
|
type StreamEventsRequest struct {
|
||||||
}
|
}
|
||||||
@ -46,8 +38,19 @@ func (m *StreamEventsRequest) Reset() { *m = StreamEventsRequ
|
|||||||
func (*StreamEventsRequest) ProtoMessage() {}
|
func (*StreamEventsRequest) ProtoMessage() {}
|
||||||
func (*StreamEventsRequest) Descriptor() ([]byte, []int) { return fileDescriptorEvents, []int{0} }
|
func (*StreamEventsRequest) Descriptor() ([]byte, []int) { return fileDescriptorEvents, []int{0} }
|
||||||
|
|
||||||
|
type Envelope struct {
|
||||||
|
Timestamp time.Time `protobuf:"bytes,1,opt,name=timestamp,stdtime" json:"timestamp"`
|
||||||
|
Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
|
||||||
|
Event *google_protobuf2.Any `protobuf:"bytes,3,opt,name=event" json:"event,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *Envelope) Reset() { *m = Envelope{} }
|
||||||
|
func (*Envelope) ProtoMessage() {}
|
||||||
|
func (*Envelope) Descriptor() ([]byte, []int) { return fileDescriptorEvents, []int{1} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*StreamEventsRequest)(nil), "containerd.services.events.v1.StreamEventsRequest")
|
proto.RegisterType((*StreamEventsRequest)(nil), "containerd.services.events.v1.StreamEventsRequest")
|
||||||
|
proto.RegisterType((*Envelope)(nil), "containerd.services.events.v1.Envelope")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reference imports to suppress errors if they are not otherwise used.
|
// Reference imports to suppress errors if they are not otherwise used.
|
||||||
@ -88,7 +91,7 @@ func (c *eventsClient) Stream(ctx context.Context, in *StreamEventsRequest, opts
|
|||||||
}
|
}
|
||||||
|
|
||||||
type Events_StreamClient interface {
|
type Events_StreamClient interface {
|
||||||
Recv() (*containerd_v1_types.Envelope, error)
|
Recv() (*Envelope, error)
|
||||||
grpc.ClientStream
|
grpc.ClientStream
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -96,8 +99,8 @@ type eventsStreamClient struct {
|
|||||||
grpc.ClientStream
|
grpc.ClientStream
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *eventsStreamClient) Recv() (*containerd_v1_types.Envelope, error) {
|
func (x *eventsStreamClient) Recv() (*Envelope, error) {
|
||||||
m := new(containerd_v1_types.Envelope)
|
m := new(Envelope)
|
||||||
if err := x.ClientStream.RecvMsg(m); err != nil {
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -123,7 +126,7 @@ func _Events_Stream_Handler(srv interface{}, stream grpc.ServerStream) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type Events_StreamServer interface {
|
type Events_StreamServer interface {
|
||||||
Send(*containerd_v1_types.Envelope) error
|
Send(*Envelope) error
|
||||||
grpc.ServerStream
|
grpc.ServerStream
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -131,7 +134,7 @@ type eventsStreamServer struct {
|
|||||||
grpc.ServerStream
|
grpc.ServerStream
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *eventsStreamServer) Send(m *containerd_v1_types.Envelope) error {
|
func (x *eventsStreamServer) Send(m *Envelope) error {
|
||||||
return x.ServerStream.SendMsg(m)
|
return x.ServerStream.SendMsg(m)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -167,6 +170,48 @@ func (m *StreamEventsRequest) MarshalTo(dAtA []byte) (int, error) {
|
|||||||
return i, nil
|
return i, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *Envelope) Marshal() (dAtA []byte, err error) {
|
||||||
|
size := m.Size()
|
||||||
|
dAtA = make([]byte, size)
|
||||||
|
n, err := m.MarshalTo(dAtA)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return dAtA[:n], nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *Envelope) MarshalTo(dAtA []byte) (int, error) {
|
||||||
|
var i int
|
||||||
|
_ = i
|
||||||
|
var l int
|
||||||
|
_ = l
|
||||||
|
dAtA[i] = 0xa
|
||||||
|
i++
|
||||||
|
i = encodeVarintEvents(dAtA, i, uint64(github_com_gogo_protobuf_types.SizeOfStdTime(m.Timestamp)))
|
||||||
|
n1, err := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Timestamp, dAtA[i:])
|
||||||
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
i += n1
|
||||||
|
if len(m.Topic) > 0 {
|
||||||
|
dAtA[i] = 0x12
|
||||||
|
i++
|
||||||
|
i = encodeVarintEvents(dAtA, i, uint64(len(m.Topic)))
|
||||||
|
i += copy(dAtA[i:], m.Topic)
|
||||||
|
}
|
||||||
|
if m.Event != nil {
|
||||||
|
dAtA[i] = 0x1a
|
||||||
|
i++
|
||||||
|
i = encodeVarintEvents(dAtA, i, uint64(m.Event.Size()))
|
||||||
|
n2, err := m.Event.MarshalTo(dAtA[i:])
|
||||||
|
if err != nil {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
i += n2
|
||||||
|
}
|
||||||
|
return i, nil
|
||||||
|
}
|
||||||
|
|
||||||
func encodeFixed64Events(dAtA []byte, offset int, v uint64) int {
|
func encodeFixed64Events(dAtA []byte, offset int, v uint64) int {
|
||||||
dAtA[offset] = uint8(v)
|
dAtA[offset] = uint8(v)
|
||||||
dAtA[offset+1] = uint8(v >> 8)
|
dAtA[offset+1] = uint8(v >> 8)
|
||||||
@ -200,6 +245,22 @@ func (m *StreamEventsRequest) Size() (n int) {
|
|||||||
return n
|
return n
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *Envelope) Size() (n int) {
|
||||||
|
var l int
|
||||||
|
_ = l
|
||||||
|
l = github_com_gogo_protobuf_types.SizeOfStdTime(m.Timestamp)
|
||||||
|
n += 1 + l + sovEvents(uint64(l))
|
||||||
|
l = len(m.Topic)
|
||||||
|
if l > 0 {
|
||||||
|
n += 1 + l + sovEvents(uint64(l))
|
||||||
|
}
|
||||||
|
if m.Event != nil {
|
||||||
|
l = m.Event.Size()
|
||||||
|
n += 1 + l + sovEvents(uint64(l))
|
||||||
|
}
|
||||||
|
return n
|
||||||
|
}
|
||||||
|
|
||||||
func sovEvents(x uint64) (n int) {
|
func sovEvents(x uint64) (n int) {
|
||||||
for {
|
for {
|
||||||
n++
|
n++
|
||||||
@ -222,6 +283,18 @@ func (this *StreamEventsRequest) String() string {
|
|||||||
}, "")
|
}, "")
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
|
func (this *Envelope) String() string {
|
||||||
|
if this == nil {
|
||||||
|
return "nil"
|
||||||
|
}
|
||||||
|
s := strings.Join([]string{`&Envelope{`,
|
||||||
|
`Timestamp:` + strings.Replace(strings.Replace(this.Timestamp.String(), "Timestamp", "google_protobuf1.Timestamp", 1), `&`, ``, 1) + `,`,
|
||||||
|
`Topic:` + fmt.Sprintf("%v", this.Topic) + `,`,
|
||||||
|
`Event:` + strings.Replace(fmt.Sprintf("%v", this.Event), "Any", "google_protobuf2.Any", 1) + `,`,
|
||||||
|
`}`,
|
||||||
|
}, "")
|
||||||
|
return s
|
||||||
|
}
|
||||||
func valueToStringEvents(v interface{}) string {
|
func valueToStringEvents(v interface{}) string {
|
||||||
rv := reflect.ValueOf(v)
|
rv := reflect.ValueOf(v)
|
||||||
if rv.IsNil() {
|
if rv.IsNil() {
|
||||||
@ -280,6 +353,148 @@ func (m *StreamEventsRequest) Unmarshal(dAtA []byte) error {
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
func (m *Envelope) Unmarshal(dAtA []byte) error {
|
||||||
|
l := len(dAtA)
|
||||||
|
iNdEx := 0
|
||||||
|
for iNdEx < l {
|
||||||
|
preIndex := iNdEx
|
||||||
|
var wire uint64
|
||||||
|
for shift := uint(0); ; shift += 7 {
|
||||||
|
if shift >= 64 {
|
||||||
|
return ErrIntOverflowEvents
|
||||||
|
}
|
||||||
|
if iNdEx >= l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
b := dAtA[iNdEx]
|
||||||
|
iNdEx++
|
||||||
|
wire |= (uint64(b) & 0x7F) << shift
|
||||||
|
if b < 0x80 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fieldNum := int32(wire >> 3)
|
||||||
|
wireType := int(wire & 0x7)
|
||||||
|
if wireType == 4 {
|
||||||
|
return fmt.Errorf("proto: Envelope: wiretype end group for non-group")
|
||||||
|
}
|
||||||
|
if fieldNum <= 0 {
|
||||||
|
return fmt.Errorf("proto: Envelope: illegal tag %d (wire type %d)", fieldNum, wire)
|
||||||
|
}
|
||||||
|
switch fieldNum {
|
||||||
|
case 1:
|
||||||
|
if wireType != 2 {
|
||||||
|
return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType)
|
||||||
|
}
|
||||||
|
var msglen int
|
||||||
|
for shift := uint(0); ; shift += 7 {
|
||||||
|
if shift >= 64 {
|
||||||
|
return ErrIntOverflowEvents
|
||||||
|
}
|
||||||
|
if iNdEx >= l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
b := dAtA[iNdEx]
|
||||||
|
iNdEx++
|
||||||
|
msglen |= (int(b) & 0x7F) << shift
|
||||||
|
if b < 0x80 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if msglen < 0 {
|
||||||
|
return ErrInvalidLengthEvents
|
||||||
|
}
|
||||||
|
postIndex := iNdEx + msglen
|
||||||
|
if postIndex > l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.Timestamp, dAtA[iNdEx:postIndex]); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
iNdEx = postIndex
|
||||||
|
case 2:
|
||||||
|
if wireType != 2 {
|
||||||
|
return fmt.Errorf("proto: wrong wireType = %d for field Topic", wireType)
|
||||||
|
}
|
||||||
|
var stringLen uint64
|
||||||
|
for shift := uint(0); ; shift += 7 {
|
||||||
|
if shift >= 64 {
|
||||||
|
return ErrIntOverflowEvents
|
||||||
|
}
|
||||||
|
if iNdEx >= l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
b := dAtA[iNdEx]
|
||||||
|
iNdEx++
|
||||||
|
stringLen |= (uint64(b) & 0x7F) << shift
|
||||||
|
if b < 0x80 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
intStringLen := int(stringLen)
|
||||||
|
if intStringLen < 0 {
|
||||||
|
return ErrInvalidLengthEvents
|
||||||
|
}
|
||||||
|
postIndex := iNdEx + intStringLen
|
||||||
|
if postIndex > l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
m.Topic = string(dAtA[iNdEx:postIndex])
|
||||||
|
iNdEx = postIndex
|
||||||
|
case 3:
|
||||||
|
if wireType != 2 {
|
||||||
|
return fmt.Errorf("proto: wrong wireType = %d for field Event", wireType)
|
||||||
|
}
|
||||||
|
var msglen int
|
||||||
|
for shift := uint(0); ; shift += 7 {
|
||||||
|
if shift >= 64 {
|
||||||
|
return ErrIntOverflowEvents
|
||||||
|
}
|
||||||
|
if iNdEx >= l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
b := dAtA[iNdEx]
|
||||||
|
iNdEx++
|
||||||
|
msglen |= (int(b) & 0x7F) << shift
|
||||||
|
if b < 0x80 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if msglen < 0 {
|
||||||
|
return ErrInvalidLengthEvents
|
||||||
|
}
|
||||||
|
postIndex := iNdEx + msglen
|
||||||
|
if postIndex > l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
if m.Event == nil {
|
||||||
|
m.Event = &google_protobuf2.Any{}
|
||||||
|
}
|
||||||
|
if err := m.Event.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
iNdEx = postIndex
|
||||||
|
default:
|
||||||
|
iNdEx = preIndex
|
||||||
|
skippy, err := skipEvents(dAtA[iNdEx:])
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if skippy < 0 {
|
||||||
|
return ErrInvalidLengthEvents
|
||||||
|
}
|
||||||
|
if (iNdEx + skippy) > l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
iNdEx += skippy
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if iNdEx > l {
|
||||||
|
return io.ErrUnexpectedEOF
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
func skipEvents(dAtA []byte) (n int, err error) {
|
func skipEvents(dAtA []byte) (n int, err error) {
|
||||||
l := len(dAtA)
|
l := len(dAtA)
|
||||||
iNdEx := 0
|
iNdEx := 0
|
||||||
@ -390,18 +605,25 @@ func init() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorEvents = []byte{
|
var fileDescriptorEvents = []byte{
|
||||||
// 205 bytes of a gzipped FileDescriptorProto
|
// 313 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x49, 0xcf, 0x2c, 0xc9,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x91, 0xc1, 0x4a, 0xc3, 0x30,
|
||||||
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
|
0x1c, 0xc6, 0x17, 0x65, 0x63, 0x8b, 0xb7, 0x38, 0x61, 0x16, 0xcc, 0xc6, 0x2e, 0x0e, 0x0f, 0x89,
|
||||||
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x17, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x16, 0xeb,
|
0x9b, 0x47, 0x41, 0x70, 0xb8, 0x17, 0xa8, 0x1e, 0xc4, 0x5b, 0x57, 0xff, 0xc6, 0xc0, 0x9a, 0x74,
|
||||||
0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0xeb, 0x97, 0x19, 0x42, 0x59, 0x7a, 0x05, 0x45, 0xf9, 0x25,
|
0x6d, 0x56, 0xd8, 0xcd, 0x47, 0xd8, 0x63, 0xf5, 0xe8, 0xd1, 0x93, 0xba, 0x3e, 0x89, 0x98, 0xb4,
|
||||||
0xf9, 0x42, 0xb2, 0x08, 0xf5, 0x7a, 0x30, 0xb5, 0x7a, 0x50, 0x15, 0x65, 0x86, 0x52, 0x36, 0x44,
|
0x4e, 0x54, 0x14, 0xbc, 0x7d, 0x7f, 0xf2, 0xfb, 0xbe, 0xfc, 0xbf, 0x04, 0x5f, 0x08, 0x69, 0xee,
|
||||||
0x59, 0x52, 0x52, 0x59, 0x00, 0xb3, 0x01, 0x42, 0x42, 0x0c, 0x57, 0x12, 0xe5, 0x12, 0x0e, 0x2e,
|
0x17, 0x53, 0x16, 0xea, 0x88, 0x87, 0x5a, 0x99, 0x40, 0x2a, 0x48, 0x6e, 0x3f, 0xcb, 0x20, 0x96,
|
||||||
0x29, 0x4a, 0x4d, 0xcc, 0x75, 0x05, 0x1b, 0x18, 0x94, 0x5a, 0x58, 0x9a, 0x5a, 0x5c, 0x62, 0x94,
|
0x3c, 0x85, 0x24, 0x93, 0x21, 0xa4, 0x1c, 0x32, 0x50, 0x26, 0xe5, 0xd9, 0xb0, 0x54, 0x2c, 0x4e,
|
||||||
0xce, 0xc5, 0x06, 0x11, 0x10, 0x8a, 0xe5, 0x62, 0x83, 0x28, 0x10, 0x32, 0xd2, 0xc3, 0xeb, 0x10,
|
0xb4, 0xd1, 0xe4, 0x60, 0xc3, 0xb3, 0x8a, 0x65, 0x25, 0x91, 0x0d, 0xbd, 0xb6, 0xd0, 0x42, 0x5b,
|
||||||
0x3d, 0x2c, 0xe6, 0x48, 0xc9, 0x22, 0xeb, 0x29, 0x33, 0xd4, 0x03, 0x3b, 0x43, 0xcf, 0x35, 0xaf,
|
0x92, 0xbf, 0x2b, 0x67, 0xf2, 0xba, 0x42, 0x6b, 0x31, 0x03, 0x6e, 0xa7, 0xe9, 0xe2, 0x8e, 0x1b,
|
||||||
0x2c, 0x35, 0x27, 0xbf, 0x20, 0xd5, 0x80, 0xd1, 0x29, 0xe2, 0xc4, 0x43, 0x39, 0x86, 0x1b, 0x0f,
|
0x19, 0x41, 0x6a, 0x82, 0x28, 0x2e, 0x81, 0xfd, 0xaf, 0x40, 0xa0, 0x96, 0xee, 0xa8, 0xbf, 0x87,
|
||||||
0xe5, 0x18, 0x1a, 0x1e, 0xc9, 0x31, 0x9e, 0x78, 0x24, 0xc7, 0x78, 0xe1, 0x91, 0x1c, 0xe3, 0x83,
|
0x77, 0x2f, 0x4d, 0x02, 0x41, 0x34, 0xb1, 0x97, 0xf8, 0x30, 0x5f, 0x40, 0x6a, 0xfa, 0x2b, 0x84,
|
||||||
0x47, 0x72, 0x8c, 0x51, 0x76, 0x64, 0x06, 0x9e, 0x35, 0x84, 0x95, 0xc4, 0x06, 0xf6, 0xa0, 0x31,
|
0x9b, 0x13, 0x95, 0xc1, 0x4c, 0xc7, 0x40, 0xc6, 0xb8, 0xf5, 0x91, 0xd8, 0x41, 0x3d, 0x34, 0xd8,
|
||||||
0x20, 0x00, 0x00, 0xff, 0xff, 0xf9, 0x3a, 0x20, 0x52, 0x85, 0x01, 0x00, 0x00,
|
0x19, 0x79, 0xcc, 0x45, 0xb2, 0x2a, 0x92, 0x5d, 0x55, 0xc4, 0xb8, 0x99, 0x3f, 0x77, 0x6b, 0xab,
|
||||||
|
0x97, 0x2e, 0xf2, 0x37, 0x36, 0xd2, 0xc6, 0x75, 0xa3, 0x63, 0x19, 0x76, 0xb6, 0x7a, 0x68, 0xd0,
|
||||||
|
0xf2, 0xdd, 0x40, 0x8e, 0x70, 0xdd, 0x96, 0xeb, 0x6c, 0xdb, 0xd4, 0xf6, 0xb7, 0xd4, 0x73, 0xb5,
|
||||||
|
0xf4, 0x1d, 0x32, 0x9a, 0xe3, 0x86, 0xdb, 0x91, 0x08, 0xdc, 0x70, 0x3b, 0x93, 0x11, 0xfb, 0xf5,
|
||||||
|
0xbd, 0xd8, 0x0f, 0xd5, 0xbc, 0xc3, 0x3f, 0x3c, 0x55, 0xed, 0x63, 0x34, 0xbe, 0xce, 0xd7, 0xb4,
|
||||||
|
0xf6, 0xb4, 0xa6, 0xb5, 0x87, 0x82, 0xa2, 0xbc, 0xa0, 0xe8, 0xb1, 0xa0, 0xe8, 0xb5, 0xa0, 0xe8,
|
||||||
|
0xe6, 0xec, 0x9f, 0xbf, 0x7d, 0xea, 0xd4, 0xb4, 0x61, 0x1b, 0x9e, 0xbc, 0x05, 0x00, 0x00, 0xff,
|
||||||
|
0xff, 0xc3, 0x54, 0xa2, 0xf3, 0x36, 0x02, 0x00, 0x00,
|
||||||
}
|
}
|
||||||
|
@ -2,12 +2,20 @@ syntax = "proto3";
|
|||||||
|
|
||||||
package containerd.services.events.v1;
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
import "github.com/containerd/containerd/api/types/event/event.proto";
|
import "gogoproto/gogo.proto";
|
||||||
|
import "google/protobuf/timestamp.proto";
|
||||||
|
import "google/protobuf/any.proto";
|
||||||
|
|
||||||
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
service Events {
|
service Events {
|
||||||
rpc Stream(StreamEventsRequest) returns (stream containerd.v1.types.Envelope);
|
rpc Stream(StreamEventsRequest) returns (stream Envelope);
|
||||||
}
|
}
|
||||||
|
|
||||||
message StreamEventsRequest {}
|
message StreamEventsRequest {}
|
||||||
|
|
||||||
|
message Envelope {
|
||||||
|
google.protobuf.Timestamp timestamp = 1 [(gogoproto.stdtime) = true, (gogoproto.nullable) = false];
|
||||||
|
string topic = 2;
|
||||||
|
google.protobuf.Any event = 3;
|
||||||
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/image.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/image.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
@ -37,8 +37,8 @@ func (*ImageDelete) ProtoMessage() {}
|
|||||||
func (*ImageDelete) Descriptor() ([]byte, []int) { return fileDescriptorImage, []int{1} }
|
func (*ImageDelete) Descriptor() ([]byte, []int) { return fileDescriptorImage, []int{1} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*ImageUpdate)(nil), "containerd.v1.types.ImageUpdate")
|
proto.RegisterType((*ImageUpdate)(nil), "containerd.services.images.v1.ImageUpdate")
|
||||||
proto.RegisterType((*ImageDelete)(nil), "containerd.v1.types.ImageDelete")
|
proto.RegisterType((*ImageDelete)(nil), "containerd.services.images.v1.ImageDelete")
|
||||||
}
|
}
|
||||||
func (m *ImageUpdate) Marshal() (dAtA []byte, err error) {
|
func (m *ImageUpdate) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -592,24 +592,25 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/image.proto", fileDescriptorImage)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/image.proto", fileDescriptorImage)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorImage = []byte{
|
var fileDescriptorImage = []byte{
|
||||||
// 232 bytes of a gzipped FileDescriptorProto
|
// 251 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x49, 0xcf, 0x2c, 0xc9,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x4e, 0xcf, 0x2c, 0xc9,
|
||||||
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
|
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, 0x96, 0xa5,
|
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x17, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x16, 0xeb,
|
||||||
0xe6, 0x95, 0xe8, 0x67, 0xe6, 0x26, 0xa6, 0xa7, 0xea, 0x15, 0x14, 0xe5, 0x97, 0xe4, 0x0b, 0x09,
|
0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0xeb, 0x97, 0x19, 0xea, 0x67, 0xe6, 0x26, 0xa6, 0xa7, 0xea,
|
||||||
0x23, 0xd4, 0xe9, 0x95, 0x19, 0xea, 0x81, 0x95, 0x29, 0x2d, 0x62, 0xe4, 0xe2, 0xf6, 0x04, 0x29,
|
0x15, 0x14, 0xe5, 0x97, 0xe4, 0x0b, 0xc9, 0x22, 0x94, 0xeb, 0xc1, 0x94, 0xea, 0x81, 0x15, 0x14,
|
||||||
0x0a, 0x2d, 0x48, 0x49, 0x2c, 0x49, 0x15, 0x12, 0xe2, 0x62, 0xc9, 0x4b, 0xcc, 0x4d, 0x95, 0x60,
|
0xeb, 0x95, 0x19, 0x2a, 0xad, 0x61, 0xe4, 0xe2, 0xf6, 0x04, 0xf1, 0x42, 0x0b, 0x52, 0x12, 0x4b,
|
||||||
0x54, 0x60, 0xd4, 0xe0, 0x0c, 0x02, 0xb3, 0x85, 0x5c, 0xb8, 0xd8, 0x72, 0x12, 0x93, 0x52, 0x73,
|
0x52, 0x85, 0x84, 0xb8, 0x58, 0xf2, 0x12, 0x73, 0x53, 0x25, 0x18, 0x15, 0x18, 0x35, 0x38, 0x83,
|
||||||
0x8a, 0x25, 0x98, 0x14, 0x98, 0x35, 0xb8, 0x8d, 0x74, 0xf4, 0xb0, 0x98, 0xa4, 0x87, 0x64, 0x8a,
|
0xc0, 0x6c, 0x21, 0x3f, 0x2e, 0xb6, 0x9c, 0xc4, 0xa4, 0xd4, 0x9c, 0x62, 0x09, 0x26, 0x05, 0x66,
|
||||||
0x9e, 0x0f, 0x58, 0xb9, 0x6b, 0x5e, 0x49, 0x51, 0x65, 0x10, 0x54, 0xaf, 0x94, 0x25, 0x17, 0x37,
|
0x0d, 0x6e, 0x23, 0x33, 0x3d, 0xbc, 0x66, 0xea, 0x21, 0x99, 0xa7, 0xe7, 0x03, 0xd6, 0xe8, 0x9a,
|
||||||
0x92, 0xb0, 0x90, 0x00, 0x17, 0x73, 0x76, 0x6a, 0x25, 0xd4, 0x1e, 0x10, 0x53, 0x48, 0x84, 0x8b,
|
0x57, 0x52, 0x54, 0x19, 0x04, 0x35, 0x45, 0xca, 0x92, 0x8b, 0x1b, 0x49, 0x58, 0x48, 0x80, 0x8b,
|
||||||
0xb5, 0x2c, 0x31, 0xa7, 0x34, 0x55, 0x82, 0x09, 0x2c, 0x06, 0xe1, 0x58, 0x31, 0x59, 0x30, 0x2a,
|
0x39, 0x3b, 0xb5, 0x12, 0x6a, 0x23, 0x88, 0x29, 0x24, 0xc2, 0xc5, 0x5a, 0x96, 0x98, 0x53, 0x9a,
|
||||||
0x29, 0x42, 0xdd, 0xe8, 0x92, 0x9a, 0x93, 0x8a, 0xdd, 0x8d, 0x4e, 0x12, 0x27, 0x1e, 0xca, 0x31,
|
0x2a, 0xc1, 0x04, 0x16, 0x83, 0x70, 0xac, 0x98, 0x2c, 0x18, 0x95, 0x14, 0xa1, 0xae, 0x75, 0x49,
|
||||||
0xdc, 0x78, 0x28, 0xc7, 0xd0, 0xf0, 0x48, 0x8e, 0xf1, 0xc4, 0x23, 0x39, 0xc6, 0x0b, 0x8f, 0xe4,
|
0xcd, 0x49, 0xc5, 0xee, 0x5a, 0xa7, 0x88, 0x13, 0x0f, 0xe5, 0x18, 0x6e, 0x3c, 0x94, 0x63, 0x68,
|
||||||
0x18, 0x1f, 0x3c, 0x92, 0x63, 0x4c, 0x62, 0x03, 0xfb, 0xde, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff,
|
0x78, 0x24, 0xc7, 0x78, 0xe2, 0x91, 0x1c, 0xe3, 0x85, 0x47, 0x72, 0x8c, 0x0f, 0x1e, 0xc9, 0x31,
|
||||||
0xa7, 0x64, 0x49, 0x13, 0x3d, 0x01, 0x00, 0x00,
|
0x46, 0xd9, 0x91, 0x19, 0x9e, 0xd6, 0x10, 0x56, 0x12, 0x1b, 0x38, 0x44, 0x8d, 0x01, 0x01, 0x00,
|
||||||
|
0x00, 0xff, 0xff, 0x0c, 0x2f, 0x4e, 0xf3, 0x98, 0x01, 0x00, 0x00,
|
||||||
}
|
}
|
@ -1,6 +1,8 @@
|
|||||||
syntax = "proto3";
|
syntax = "proto3";
|
||||||
|
|
||||||
package containerd.v1.types;
|
package containerd.services.images.v1;
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
message ImageUpdate {
|
message ImageUpdate {
|
||||||
string name = 1;
|
string name = 1;
|
@ -1,12 +1,15 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/namespace.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/namespace.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
import math "math"
|
import math "math"
|
||||||
|
import _ "github.com/gogo/protobuf/gogoproto"
|
||||||
|
import _ "github.com/gogo/protobuf/types"
|
||||||
|
import _ "github.com/gogo/protobuf/types"
|
||||||
|
|
||||||
import strings "strings"
|
import strings "strings"
|
||||||
import reflect "reflect"
|
import reflect "reflect"
|
||||||
@ -46,9 +49,9 @@ func (*NamespaceDelete) ProtoMessage() {}
|
|||||||
func (*NamespaceDelete) Descriptor() ([]byte, []int) { return fileDescriptorNamespace, []int{2} }
|
func (*NamespaceDelete) Descriptor() ([]byte, []int) { return fileDescriptorNamespace, []int{2} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*NamespaceCreate)(nil), "containerd.v1.types.NamespaceCreate")
|
proto.RegisterType((*NamespaceCreate)(nil), "containerd.services.events.v1.NamespaceCreate")
|
||||||
proto.RegisterType((*NamespaceUpdate)(nil), "containerd.v1.types.NamespaceUpdate")
|
proto.RegisterType((*NamespaceUpdate)(nil), "containerd.services.events.v1.NamespaceUpdate")
|
||||||
proto.RegisterType((*NamespaceDelete)(nil), "containerd.v1.types.NamespaceDelete")
|
proto.RegisterType((*NamespaceDelete)(nil), "containerd.services.events.v1.NamespaceDelete")
|
||||||
}
|
}
|
||||||
func (m *NamespaceCreate) Marshal() (dAtA []byte, err error) {
|
func (m *NamespaceCreate) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -877,25 +880,29 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/namespace.proto", fileDescriptorNamespace)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/namespace.proto", fileDescriptorNamespace)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorNamespace = []byte{
|
var fileDescriptorNamespace = []byte{
|
||||||
// 247 bytes of a gzipped FileDescriptorProto
|
// 311 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x48, 0xcf, 0x2c, 0xc9,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x4f, 0xcf, 0x2c, 0xc9,
|
||||||
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
|
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, 0x96, 0xa5,
|
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x17, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x16, 0xeb,
|
||||||
0xe6, 0x95, 0xe8, 0xe7, 0x25, 0xe6, 0xa6, 0x16, 0x17, 0x24, 0x26, 0xa7, 0xea, 0x15, 0x14, 0xe5,
|
0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0xeb, 0x97, 0x19, 0xea, 0xe7, 0x25, 0xe6, 0xa6, 0x16, 0x17,
|
||||||
0x97, 0xe4, 0x0b, 0x09, 0x23, 0xd4, 0xea, 0x95, 0x19, 0xea, 0x81, 0x95, 0x2a, 0xad, 0x62, 0xe4,
|
0x24, 0x26, 0xa7, 0xea, 0x15, 0x14, 0xe5, 0x97, 0xe4, 0x0b, 0xc9, 0x22, 0xb4, 0xe8, 0xc1, 0x94,
|
||||||
0xe2, 0xf7, 0x83, 0x29, 0x74, 0x2e, 0x4a, 0x4d, 0x2c, 0x49, 0x15, 0x12, 0xe2, 0x62, 0x01, 0xe9,
|
0xeb, 0x41, 0x94, 0xeb, 0x95, 0x19, 0x4a, 0x89, 0xa4, 0xe7, 0xa7, 0xe7, 0x83, 0x55, 0xea, 0x83,
|
||||||
0x95, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c, 0x02, 0xb3, 0x85, 0x3c, 0xb8, 0xd8, 0x72, 0x12, 0x93,
|
0x58, 0x10, 0x4d, 0x52, 0xf2, 0xe9, 0xf9, 0xf9, 0xe9, 0x39, 0xa9, 0xfa, 0x60, 0x5e, 0x52, 0x69,
|
||||||
0x52, 0x73, 0x8a, 0x25, 0x98, 0x14, 0x98, 0x35, 0xb8, 0x8d, 0x0c, 0xf4, 0xb0, 0x98, 0xa6, 0x87,
|
0x9a, 0x7e, 0x49, 0x66, 0x6e, 0x6a, 0x71, 0x49, 0x62, 0x6e, 0x01, 0x54, 0x81, 0x24, 0xba, 0x82,
|
||||||
0x66, 0x92, 0x9e, 0x0f, 0x58, 0x8b, 0x6b, 0x5e, 0x49, 0x51, 0x65, 0x10, 0x54, 0xbf, 0x94, 0x25,
|
0xc4, 0xbc, 0x4a, 0x88, 0x94, 0xd2, 0x16, 0x46, 0x2e, 0x7e, 0x3f, 0x98, 0x23, 0x9c, 0x8b, 0x52,
|
||||||
0x17, 0x37, 0x92, 0xb0, 0x90, 0x00, 0x17, 0x73, 0x76, 0x6a, 0x25, 0xd4, 0x2e, 0x10, 0x53, 0x48,
|
0x13, 0x4b, 0x52, 0x85, 0x84, 0xb8, 0x58, 0x40, 0xee, 0x92, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c,
|
||||||
0x84, 0x8b, 0xb5, 0x2c, 0x31, 0xa7, 0x34, 0x55, 0x82, 0x09, 0x2c, 0x06, 0xe1, 0x58, 0x31, 0x59,
|
0x02, 0xb3, 0x85, 0x82, 0xb8, 0xd8, 0x72, 0x12, 0x93, 0x52, 0x73, 0x8a, 0x25, 0x98, 0x14, 0x98,
|
||||||
0x30, 0xa2, 0x3a, 0x36, 0xb4, 0x20, 0x85, 0x4a, 0x8e, 0x85, 0x98, 0x44, 0x6d, 0xc7, 0xaa, 0x22,
|
0x35, 0xb8, 0x8d, 0xac, 0xf4, 0xf0, 0xba, 0x54, 0x0f, 0xcd, 0x4c, 0x3d, 0x1f, 0xb0, 0x66, 0xd7,
|
||||||
0xb9, 0xd5, 0x25, 0x35, 0x27, 0x15, 0xbb, 0x5b, 0x9d, 0x24, 0x4e, 0x3c, 0x94, 0x63, 0xb8, 0xf1,
|
0xbc, 0x92, 0xa2, 0xca, 0x20, 0xa8, 0x49, 0x52, 0x96, 0x5c, 0xdc, 0x48, 0xc2, 0x42, 0x02, 0x5c,
|
||||||
0x50, 0x8e, 0xa1, 0xe1, 0x91, 0x1c, 0xe3, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, 0xc9, 0x31, 0x3e,
|
0xcc, 0xd9, 0xa9, 0x95, 0x50, 0x5b, 0x41, 0x4c, 0x21, 0x11, 0x2e, 0xd6, 0xb2, 0xc4, 0x9c, 0xd2,
|
||||||
0x78, 0x24, 0xc7, 0x98, 0xc4, 0x06, 0x8e, 0x36, 0x63, 0x40, 0x00, 0x00, 0x00, 0xff, 0xff, 0x1c,
|
0x54, 0x09, 0x26, 0xb0, 0x18, 0x84, 0x63, 0xc5, 0x64, 0xc1, 0x88, 0xea, 0xec, 0xd0, 0x82, 0x14,
|
||||||
0xab, 0x9e, 0xdf, 0xfa, 0x01, 0x00, 0x00,
|
0xaa, 0x3b, 0x1b, 0x62, 0x26, 0xb5, 0x9d, 0xad, 0x8a, 0xe4, 0x6a, 0x97, 0xd4, 0x9c, 0x54, 0xec,
|
||||||
|
0xae, 0x76, 0x8a, 0x38, 0xf1, 0x50, 0x8e, 0xe1, 0xc6, 0x43, 0x39, 0x86, 0x86, 0x47, 0x72, 0x8c,
|
||||||
|
0x27, 0x1e, 0xc9, 0x31, 0x5e, 0x78, 0x24, 0xc7, 0xf8, 0xe0, 0x91, 0x1c, 0x63, 0x94, 0x1d, 0x99,
|
||||||
|
0x09, 0xcd, 0x1a, 0xc2, 0x4a, 0x62, 0x03, 0xc7, 0xba, 0x31, 0x20, 0x00, 0x00, 0xff, 0xff, 0x78,
|
||||||
|
0xf1, 0x6d, 0xaa, 0xb1, 0x02, 0x00, 0x00,
|
||||||
}
|
}
|
23
api/services/events/v1/namespace.proto
Normal file
23
api/services/events/v1/namespace.proto
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
syntax = "proto3";
|
||||||
|
|
||||||
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
|
import "gogoproto/gogo.proto";
|
||||||
|
import "google/protobuf/timestamp.proto";
|
||||||
|
import "google/protobuf/any.proto";
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
|
message NamespaceCreate {
|
||||||
|
string name = 1;
|
||||||
|
map<string, string> labels = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message NamespaceUpdate {
|
||||||
|
string name = 1;
|
||||||
|
map<string, string> labels = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message NamespaceDelete {
|
||||||
|
string name = 1;
|
||||||
|
}
|
@ -1,8 +1,8 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/runtime.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/runtime.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
@ -83,11 +83,11 @@ func (*RuntimeDelete) ProtoMessage() {}
|
|||||||
func (*RuntimeDelete) Descriptor() ([]byte, []int) { return fileDescriptorRuntime, []int{4} }
|
func (*RuntimeDelete) Descriptor() ([]byte, []int) { return fileDescriptorRuntime, []int{4} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*RuntimeIO)(nil), "containerd.v1.types.RuntimeIO")
|
proto.RegisterType((*RuntimeIO)(nil), "containerd.services.events.v1.RuntimeIO")
|
||||||
proto.RegisterType((*RuntimeMount)(nil), "containerd.v1.types.RuntimeMount")
|
proto.RegisterType((*RuntimeMount)(nil), "containerd.services.events.v1.RuntimeMount")
|
||||||
proto.RegisterType((*RuntimeCreate)(nil), "containerd.v1.types.RuntimeCreate")
|
proto.RegisterType((*RuntimeCreate)(nil), "containerd.services.events.v1.RuntimeCreate")
|
||||||
proto.RegisterType((*RuntimeEvent)(nil), "containerd.v1.types.RuntimeEvent")
|
proto.RegisterType((*RuntimeEvent)(nil), "containerd.services.events.v1.RuntimeEvent")
|
||||||
proto.RegisterType((*RuntimeDelete)(nil), "containerd.v1.types.RuntimeDelete")
|
proto.RegisterType((*RuntimeDelete)(nil), "containerd.services.events.v1.RuntimeDelete")
|
||||||
}
|
}
|
||||||
func (m *RuntimeIO) Marshal() (dAtA []byte, err error) {
|
func (m *RuntimeIO) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -1475,42 +1475,44 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/runtime.proto", fileDescriptorRuntime)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/runtime.proto", fileDescriptorRuntime)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorRuntime = []byte{
|
var fileDescriptorRuntime = []byte{
|
||||||
// 523 bytes of a gzipped FileDescriptorProto
|
// 555 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0xcb, 0x6e, 0xd3, 0x40,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xc1, 0x6a, 0xdb, 0x4c,
|
||||||
0x14, 0xad, 0x9d, 0x34, 0x4d, 0x26, 0x04, 0xa1, 0xa1, 0x42, 0x56, 0x16, 0x76, 0x88, 0x58, 0x64,
|
0x10, 0x8e, 0x64, 0xc7, 0xb1, 0xd7, 0xbf, 0x7f, 0xca, 0x12, 0x8a, 0x30, 0x54, 0x32, 0xa6, 0x07,
|
||||||
0x65, 0x8b, 0x20, 0x21, 0xc4, 0x02, 0xa9, 0xa1, 0x45, 0xca, 0x02, 0x45, 0x9a, 0x66, 0x5f, 0x39,
|
0x43, 0x61, 0x85, 0xdd, 0x4b, 0x69, 0xa1, 0x34, 0x6e, 0x52, 0xf0, 0xa1, 0x18, 0x36, 0x3e, 0x94,
|
||||||
0xf1, 0x34, 0x1d, 0x35, 0xf1, 0xb5, 0xc6, 0xd7, 0x15, 0xdd, 0xf1, 0x09, 0xfc, 0x04, 0xff, 0x92,
|
0x5e, 0x82, 0x2c, 0x6d, 0x9c, 0x25, 0xb6, 0x56, 0xec, 0x8e, 0x4c, 0x73, 0xeb, 0x23, 0xf4, 0x25,
|
||||||
0x25, 0x2b, 0xc4, 0x2a, 0x50, 0x7f, 0x09, 0x9a, 0x47, 0xdc, 0x08, 0x95, 0x48, 0xb0, 0x19, 0xdd,
|
0xfa, 0x2e, 0x3e, 0xf6, 0x54, 0x7a, 0x72, 0x1b, 0x3d, 0x42, 0x9f, 0xa0, 0x68, 0x77, 0xed, 0x98,
|
||||||
0x73, 0x7c, 0xe7, 0xcc, 0xb9, 0x0f, 0x93, 0x77, 0x0b, 0x81, 0x57, 0xc5, 0x2c, 0x9c, 0xc3, 0x2a,
|
0x42, 0x4d, 0xc8, 0x65, 0x99, 0x6f, 0x98, 0xf9, 0xf6, 0x9b, 0xfd, 0x46, 0x42, 0x67, 0x33, 0x0e,
|
||||||
0x9a, 0x43, 0x8a, 0xb1, 0x48, 0xb9, 0x4c, 0x76, 0xc3, 0x38, 0x13, 0x11, 0xde, 0x66, 0x3c, 0x8f,
|
0x57, 0xf9, 0x94, 0xc4, 0x62, 0x11, 0xc6, 0x22, 0x85, 0x88, 0xa7, 0x4c, 0x26, 0xbb, 0x61, 0x94,
|
||||||
0xf8, 0x0d, 0x4f, 0x31, 0x92, 0x45, 0x8a, 0x62, 0xc5, 0xc3, 0x4c, 0x02, 0x02, 0x7d, 0x7a, 0x9f,
|
0xf1, 0x50, 0x31, 0xb9, 0xe4, 0x31, 0x53, 0x21, 0x5b, 0xb2, 0x14, 0x54, 0xb8, 0xec, 0x87, 0x32,
|
||||||
0x19, 0xde, 0xbc, 0x0c, 0x75, 0x62, 0xf7, 0x78, 0x01, 0x0b, 0xd0, 0xdf, 0x23, 0x15, 0x99, 0xd4,
|
0x4f, 0x81, 0x2f, 0x18, 0xc9, 0xa4, 0x00, 0x81, 0x9f, 0xdc, 0x35, 0x90, 0x4d, 0x31, 0x31, 0xc5,
|
||||||
0x6e, 0xb0, 0x00, 0x58, 0x2c, 0x79, 0xa4, 0xd1, 0xac, 0xb8, 0x8c, 0x94, 0x4c, 0x8e, 0xf1, 0x2a,
|
0x64, 0xd9, 0x6f, 0x1f, 0xcf, 0xc4, 0x4c, 0xe8, 0xca, 0xb0, 0x8c, 0x4c, 0x53, 0x3b, 0x98, 0x09,
|
||||||
0xb3, 0x09, 0x6f, 0xff, 0xc1, 0x0b, 0xc6, 0xf9, 0xb5, 0x3e, 0xcc, 0xdd, 0xfe, 0x8a, 0xb4, 0x98,
|
0x31, 0x9b, 0xb3, 0x50, 0xa3, 0x69, 0x7e, 0x19, 0x96, 0x84, 0x0a, 0xa2, 0x45, 0x66, 0x0b, 0x5e,
|
||||||
0x31, 0x36, 0x9e, 0xd0, 0x63, 0x72, 0x98, 0x63, 0x22, 0x52, 0xcf, 0xe9, 0x39, 0x83, 0x16, 0x33,
|
0xde, 0x4b, 0x1c, 0xdc, 0x64, 0x4c, 0x85, 0x10, 0xa9, 0x6b, 0x7d, 0x98, 0xde, 0xee, 0x02, 0x35,
|
||||||
0x80, 0x3e, 0x23, 0x8d, 0x1c, 0x13, 0x28, 0xd0, 0x73, 0x35, 0x6d, 0x91, 0xe5, 0xb9, 0x94, 0x5e,
|
0xa8, 0x91, 0x38, 0x1a, 0xe3, 0x63, 0x74, 0xa8, 0x20, 0xe1, 0xa9, 0xe7, 0x74, 0x9c, 0x5e, 0x83,
|
||||||
0xad, 0xe2, 0xb9, 0x94, 0xb4, 0x4b, 0x9a, 0xc8, 0xe5, 0x4a, 0xa4, 0xf1, 0xd2, 0xab, 0xf7, 0x9c,
|
0x1a, 0x80, 0x1f, 0xa3, 0x9a, 0x82, 0x44, 0xe4, 0xe0, 0xb9, 0x3a, 0x6d, 0x91, 0xcd, 0x33, 0x29,
|
||||||
0x41, 0x93, 0x55, 0xb8, 0x3f, 0x25, 0x8f, 0xec, 0x73, 0x1f, 0xa1, 0x48, 0x91, 0x52, 0x52, 0x57,
|
0xbd, 0xca, 0x36, 0xcf, 0xa4, 0xc4, 0x6d, 0x54, 0x07, 0x26, 0x17, 0x3c, 0x8d, 0xe6, 0x5e, 0xb5,
|
||||||
0xbe, 0xec, 0x83, 0x3a, 0xd6, 0xba, 0x50, 0xc8, 0x39, 0xaf, 0xde, 0xd3, 0x88, 0x7a, 0xe4, 0x08,
|
0xe3, 0xf4, 0xea, 0x74, 0x8b, 0xbb, 0x13, 0xf4, 0x9f, 0xbd, 0xee, 0xbd, 0xc8, 0x53, 0xc0, 0x18,
|
||||||
0x32, 0x14, 0x90, 0xe6, 0x5e, 0xad, 0x57, 0x1b, 0xb4, 0xd8, 0x16, 0xf6, 0x37, 0x0e, 0xe9, 0x58,
|
0x55, 0x4b, 0x5d, 0xf6, 0x42, 0x1d, 0x6b, 0x5e, 0x91, 0xcb, 0x98, 0x6d, 0xef, 0xd3, 0x08, 0x7b,
|
||||||
0xd9, 0xf7, 0x92, 0xc7, 0xa8, 0x34, 0x5c, 0x91, 0x18, 0xd5, 0x51, 0xa3, 0xdc, 0x04, 0xee, 0xf8,
|
0xe8, 0x48, 0x64, 0xc0, 0x45, 0xaa, 0xbc, 0x4a, 0xa7, 0xd2, 0x6b, 0xd0, 0x0d, 0xec, 0xfe, 0x76,
|
||||||
0x94, 0xb9, 0x22, 0x51, 0xda, 0xb3, 0x22, 0x4d, 0x96, 0x95, 0xb6, 0x41, 0xf4, 0x8c, 0x34, 0x24,
|
0x50, 0xcb, 0xd2, 0xbe, 0x95, 0x2c, 0x82, 0x92, 0xc3, 0xe5, 0x89, 0x61, 0x1d, 0xd6, 0x8a, 0x75,
|
||||||
0x00, 0x5e, 0x1a, 0xe9, 0xf6, 0xf0, 0x79, 0xf8, 0xc0, 0x7c, 0xc2, 0x5d, 0xeb, 0x23, 0x52, 0x6e,
|
0xe0, 0x8e, 0x4e, 0xa9, 0xcb, 0x93, 0x92, 0x7b, 0x9a, 0xa7, 0xc9, 0x7c, 0xcb, 0x6d, 0x10, 0x1e,
|
||||||
0x82, 0x06, 0x03, 0xc0, 0x0f, 0xe7, 0xcc, 0x5e, 0xa6, 0xaf, 0x89, 0x2b, 0x40, 0x17, 0xdd, 0x1e,
|
0xa3, 0x9a, 0x14, 0x02, 0x2e, 0x0d, 0x75, 0x73, 0xf0, 0x8c, 0xec, 0x75, 0x8a, 0xec, 0x0e, 0x31,
|
||||||
0xfa, 0xfb, 0x24, 0xc6, 0x13, 0x6b, 0x6b, 0xc2, 0x5c, 0x01, 0xd4, 0x27, 0x64, 0x7e, 0xc5, 0xe7,
|
0x44, 0xc5, 0x3a, 0xa8, 0x51, 0x21, 0xe0, 0xdd, 0x39, 0xb5, 0x34, 0xf8, 0x0d, 0x72, 0xb9, 0xd0,
|
||||||
0xd7, 0x19, 0x88, 0x14, 0xbd, 0x43, 0x6d, 0x6d, 0x87, 0xe9, 0x7f, 0x77, 0xaa, 0xbe, 0x9d, 0xa9,
|
0xe3, 0x37, 0x07, 0xbd, 0xfb, 0x91, 0x8d, 0xc6, 0x56, 0xea, 0x98, 0xba, 0x5c, 0x60, 0x1f, 0xa1,
|
||||||
0x65, 0xfa, 0x6b, 0x7d, 0x6f, 0x6c, 0x3f, 0x55, 0x75, 0x8f, 0x87, 0x2f, 0x1e, 0xb4, 0xa0, 0x15,
|
0xf8, 0x8a, 0xc5, 0xd7, 0x99, 0xe0, 0x29, 0x78, 0x87, 0x5a, 0xee, 0x4e, 0xa6, 0xfb, 0xdd, 0xd9,
|
||||||
0xcc, 0x39, 0xbd, 0xcd, 0xb8, 0xed, 0xfa, 0x13, 0x52, 0xcb, 0x44, 0xa2, 0x47, 0xd9, 0x61, 0x2a,
|
0xbe, 0xe5, 0x59, 0x49, 0xf5, 0xcf, 0x99, 0x5f, 0xd8, 0x37, 0x2e, 0x27, 0xfe, 0x7f, 0xf0, 0x74,
|
||||||
0xa4, 0x01, 0x69, 0xf3, 0x4f, 0x02, 0x2f, 0x72, 0x8c, 0xb1, 0xc8, 0x75, 0x55, 0x1d, 0x46, 0x14,
|
0x57, 0xcc, 0xb2, 0x4f, 0xf4, 0x5a, 0x10, 0xcd, 0x60, 0xce, 0xc9, 0x4d, 0xc6, 0xac, 0x13, 0x8f,
|
||||||
0x75, 0xae, 0x19, 0x7a, 0x42, 0x5a, 0x0a, 0xf1, 0xe4, 0x22, 0x36, 0xa6, 0xdb, 0xc3, 0x6e, 0x68,
|
0x50, 0x25, 0xe3, 0x89, 0xb6, 0xb7, 0x45, 0xcb, 0x10, 0x07, 0xa8, 0xc9, 0x3e, 0x71, 0xb8, 0x50,
|
||||||
0x96, 0x35, 0xdc, 0x2e, 0x6b, 0x38, 0xdd, 0x2e, 0xeb, 0xa8, 0xb9, 0xde, 0x04, 0x07, 0x5f, 0x7e,
|
0x10, 0x41, 0xae, 0xf4, 0x7c, 0x2d, 0x8a, 0xca, 0xd4, 0xb9, 0xce, 0xe0, 0x13, 0xd4, 0x28, 0x11,
|
||||||
0x06, 0x0e, 0x6b, 0x9a, 0x6b, 0x27, 0xd8, 0xff, 0x7a, 0x3f, 0xb9, 0x53, 0xbe, 0xe4, 0x7b, 0x26,
|
0x4b, 0x2e, 0x22, 0x23, 0xba, 0x39, 0x68, 0x13, 0xb3, 0xc0, 0x64, 0xb3, 0xc0, 0x64, 0xb2, 0x59,
|
||||||
0xe7, 0x91, 0x23, 0xfb, 0x07, 0xd9, 0xd1, 0x6d, 0xe1, 0x9f, 0x3e, 0x6b, 0xfb, 0x7d, 0xd6, 0xff,
|
0xe0, 0x61, 0x7d, 0xb5, 0x0e, 0x0e, 0xbe, 0xfc, 0x0c, 0x1c, 0x5a, 0x37, 0x6d, 0x27, 0xd0, 0xfd,
|
||||||
0xc7, 0xe7, 0xc8, 0x5b, 0xdf, 0xf9, 0x07, 0x3f, 0xee, 0xfc, 0x83, 0xcf, 0xa5, 0xef, 0xac, 0x4b,
|
0x7a, 0xe7, 0xe6, 0x29, 0x9b, 0xb3, 0x3d, 0x6e, 0x7a, 0xe8, 0xc8, 0x7e, 0x5f, 0xd6, 0xce, 0x0d,
|
||||||
0xdf, 0xf9, 0x56, 0xfa, 0xce, 0xaf, 0xd2, 0x77, 0x66, 0x0d, 0xad, 0xf0, 0xea, 0x77, 0x00, 0x00,
|
0xfc, 0x5b, 0x67, 0x65, 0xbf, 0xce, 0xea, 0x43, 0x74, 0x0e, 0x3f, 0xac, 0x6e, 0xfd, 0x83, 0x1f,
|
||||||
0x00, 0xff, 0xff, 0xdd, 0x0e, 0xff, 0x3e, 0x11, 0x04, 0x00, 0x00,
|
0xb7, 0xfe, 0xc1, 0xe7, 0xc2, 0x77, 0x56, 0x85, 0xef, 0x7c, 0x2b, 0x7c, 0xe7, 0x57, 0xe1, 0x3b,
|
||||||
|
0x1f, 0x5f, 0x3f, 0xf0, 0x6f, 0xf1, 0xca, 0x44, 0xd3, 0x9a, 0x56, 0xf0, 0xfc, 0x4f, 0x00, 0x00,
|
||||||
|
0x00, 0xff, 0xff, 0xe0, 0x7b, 0x76, 0x39, 0x76, 0x04, 0x00, 0x00,
|
||||||
}
|
}
|
@ -1,11 +1,13 @@
|
|||||||
syntax = "proto3";
|
syntax = "proto3";
|
||||||
|
|
||||||
package containerd.v1.types;
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
import "gogoproto/gogo.proto";
|
import "gogoproto/gogo.proto";
|
||||||
import "google/protobuf/timestamp.proto";
|
import "google/protobuf/timestamp.proto";
|
||||||
import "github.com/containerd/containerd/api/types/task/task.proto";
|
import "github.com/containerd/containerd/api/types/task/task.proto";
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
message RuntimeIO {
|
message RuntimeIO {
|
||||||
string stdin = 1;
|
string stdin = 1;
|
||||||
string stdout = 2;
|
string stdout = 2;
|
@ -1,8 +1,8 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/snapshot.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/snapshot.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
@ -45,9 +45,9 @@ func (*SnapshotRemove) ProtoMessage() {}
|
|||||||
func (*SnapshotRemove) Descriptor() ([]byte, []int) { return fileDescriptorSnapshot, []int{2} }
|
func (*SnapshotRemove) Descriptor() ([]byte, []int) { return fileDescriptorSnapshot, []int{2} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*SnapshotPrepare)(nil), "containerd.v1.types.SnapshotPrepare")
|
proto.RegisterType((*SnapshotPrepare)(nil), "containerd.services.events.v1.SnapshotPrepare")
|
||||||
proto.RegisterType((*SnapshotCommit)(nil), "containerd.v1.types.SnapshotCommit")
|
proto.RegisterType((*SnapshotCommit)(nil), "containerd.services.events.v1.SnapshotCommit")
|
||||||
proto.RegisterType((*SnapshotRemove)(nil), "containerd.v1.types.SnapshotRemove")
|
proto.RegisterType((*SnapshotRemove)(nil), "containerd.services.events.v1.SnapshotRemove")
|
||||||
}
|
}
|
||||||
func (m *SnapshotPrepare) Marshal() (dAtA []byte, err error) {
|
func (m *SnapshotPrepare) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -652,22 +652,23 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/snapshot.proto", fileDescriptorSnapshot)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/snapshot.proto", fileDescriptorSnapshot)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorSnapshot = []byte{
|
var fileDescriptorSnapshot = []byte{
|
||||||
// 201 bytes of a gzipped FileDescriptorProto
|
// 219 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x4f, 0xcf, 0x2c, 0xc9,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x4b, 0xcf, 0x2c, 0xc9,
|
||||||
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
|
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, 0x96, 0xa5,
|
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x17, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x16, 0xeb,
|
||||||
0xe6, 0x95, 0xe8, 0x17, 0xe7, 0x25, 0x16, 0x14, 0x67, 0xe4, 0x97, 0xe8, 0x15, 0x14, 0xe5, 0x97,
|
0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0xeb, 0x97, 0x19, 0xea, 0x17, 0xe7, 0x25, 0x16, 0x14, 0x67,
|
||||||
0xe4, 0x0b, 0x09, 0x23, 0x94, 0xea, 0x95, 0x19, 0xea, 0x81, 0x55, 0x2a, 0x59, 0x73, 0xf1, 0x07,
|
0xe4, 0x97, 0xe8, 0x15, 0x14, 0xe5, 0x97, 0xe4, 0x0b, 0xc9, 0x22, 0x74, 0xe8, 0xc1, 0x54, 0xeb,
|
||||||
0x43, 0x95, 0x05, 0x14, 0xa5, 0x16, 0x24, 0x16, 0xa5, 0x0a, 0x09, 0x70, 0x31, 0x67, 0xa7, 0x56,
|
0x41, 0x54, 0xeb, 0x95, 0x19, 0x2a, 0x59, 0x73, 0xf1, 0x07, 0x43, 0x35, 0x04, 0x14, 0xa5, 0x16,
|
||||||
0x4a, 0x30, 0x2a, 0x30, 0x6a, 0x70, 0x06, 0x81, 0x98, 0x42, 0x62, 0x5c, 0x6c, 0x20, 0x99, 0xbc,
|
0x24, 0x16, 0xa5, 0x0a, 0x09, 0x70, 0x31, 0x67, 0xa7, 0x56, 0x4a, 0x30, 0x2a, 0x30, 0x6a, 0x70,
|
||||||
0x12, 0x09, 0x26, 0xb0, 0x20, 0x94, 0xa7, 0x64, 0xc6, 0xc5, 0x07, 0xd3, 0xec, 0x9c, 0x9f, 0x9b,
|
0x06, 0x81, 0x98, 0x42, 0x62, 0x5c, 0x6c, 0x20, 0x99, 0xbc, 0x12, 0x09, 0x26, 0xb0, 0x20, 0x94,
|
||||||
0x9b, 0x59, 0x82, 0x45, 0xaf, 0x10, 0x17, 0x4b, 0x5e, 0x62, 0x6e, 0x2a, 0x54, 0x27, 0x98, 0xad,
|
0xa7, 0x64, 0xc6, 0xc5, 0x07, 0xd3, 0xec, 0x9c, 0x9f, 0x9b, 0x9b, 0x59, 0x82, 0x45, 0xaf, 0x10,
|
||||||
0xa4, 0x84, 0xd0, 0x17, 0x94, 0x9a, 0x9b, 0x5f, 0x86, 0xc5, 0x4e, 0x27, 0x89, 0x13, 0x0f, 0xe5,
|
0x17, 0x4b, 0x5e, 0x62, 0x6e, 0x2a, 0x54, 0x27, 0x98, 0xad, 0xa4, 0x84, 0xd0, 0x17, 0x94, 0x9a,
|
||||||
0x18, 0x6e, 0x3c, 0x94, 0x63, 0x68, 0x78, 0x24, 0xc7, 0x78, 0xe2, 0x91, 0x1c, 0xe3, 0x85, 0x47,
|
0x9b, 0x5f, 0x86, 0xc5, 0x4e, 0xa7, 0x88, 0x13, 0x0f, 0xe5, 0x18, 0x6e, 0x3c, 0x94, 0x63, 0x68,
|
||||||
0x72, 0x8c, 0x0f, 0x1e, 0xc9, 0x31, 0x26, 0xb1, 0x81, 0xbd, 0x63, 0x0c, 0x08, 0x00, 0x00, 0xff,
|
0x78, 0x24, 0xc7, 0x78, 0xe2, 0x91, 0x1c, 0xe3, 0x85, 0x47, 0x72, 0x8c, 0x0f, 0x1e, 0xc9, 0x31,
|
||||||
0xff, 0x5e, 0xad, 0x28, 0x20, 0x11, 0x01, 0x00, 0x00,
|
0x46, 0xd9, 0x91, 0x19, 0x32, 0xd6, 0x10, 0x56, 0x12, 0x1b, 0x38, 0x60, 0x8c, 0x01, 0x01, 0x00,
|
||||||
|
0x00, 0xff, 0xff, 0x10, 0x4c, 0x3d, 0xb2, 0x62, 0x01, 0x00, 0x00,
|
||||||
}
|
}
|
@ -1,6 +1,8 @@
|
|||||||
syntax = "proto3";
|
syntax = "proto3";
|
||||||
|
|
||||||
package containerd.v1.types;
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
message SnapshotPrepare {
|
message SnapshotPrepare {
|
||||||
string key = 1;
|
string key = 1;
|
@ -1,8 +1,8 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
// Code generated by protoc-gen-gogo.
|
||||||
// source: github.com/containerd/containerd/api/types/event/task.proto
|
// source: github.com/containerd/containerd/api/services/events/v1/task.proto
|
||||||
// DO NOT EDIT!
|
// DO NOT EDIT!
|
||||||
|
|
||||||
package event
|
package events
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
import proto "github.com/gogo/protobuf/proto"
|
||||||
import fmt "fmt"
|
import fmt "fmt"
|
||||||
@ -45,9 +45,9 @@ func (*TaskDelete) ProtoMessage() {}
|
|||||||
func (*TaskDelete) Descriptor() ([]byte, []int) { return fileDescriptorTask, []int{2} }
|
func (*TaskDelete) Descriptor() ([]byte, []int) { return fileDescriptorTask, []int{2} }
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterType((*TaskCreate)(nil), "containerd.v1.types.TaskCreate")
|
proto.RegisterType((*TaskCreate)(nil), "containerd.services.events.v1.TaskCreate")
|
||||||
proto.RegisterType((*TaskStart)(nil), "containerd.v1.types.TaskStart")
|
proto.RegisterType((*TaskStart)(nil), "containerd.services.events.v1.TaskStart")
|
||||||
proto.RegisterType((*TaskDelete)(nil), "containerd.v1.types.TaskDelete")
|
proto.RegisterType((*TaskDelete)(nil), "containerd.services.events.v1.TaskDelete")
|
||||||
}
|
}
|
||||||
func (m *TaskCreate) Marshal() (dAtA []byte, err error) {
|
func (m *TaskCreate) Marshal() (dAtA []byte, err error) {
|
||||||
size := m.Size()
|
size := m.Size()
|
||||||
@ -628,24 +628,25 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/task.proto", fileDescriptorTask)
|
proto.RegisterFile("github.com/containerd/containerd/api/services/events/v1/task.proto", fileDescriptorTask)
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileDescriptorTask = []byte{
|
var fileDescriptorTask = []byte{
|
||||||
// 228 bytes of a gzipped FileDescriptorProto
|
// 245 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x4e, 0xcf, 0x2c, 0xc9,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x4a, 0xcf, 0x2c, 0xc9,
|
||||||
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xce, 0xcf, 0x2b, 0x49, 0xcc, 0xcc, 0x4b, 0x2d,
|
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, 0x96, 0xa5,
|
0x4a, 0x41, 0x66, 0x26, 0x16, 0x64, 0xea, 0x17, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x16, 0xeb,
|
||||||
0xe6, 0x95, 0xe8, 0x97, 0x24, 0x16, 0x67, 0xeb, 0x15, 0x14, 0xe5, 0x97, 0xe4, 0x0b, 0x09, 0x23,
|
0xa7, 0x96, 0xa5, 0xe6, 0x95, 0x14, 0xeb, 0x97, 0x19, 0xea, 0x97, 0x24, 0x16, 0x67, 0xeb, 0x15,
|
||||||
0x94, 0xe9, 0x95, 0x19, 0xea, 0x81, 0x55, 0x29, 0x39, 0x70, 0x71, 0x85, 0x24, 0x16, 0x67, 0x3b,
|
0x14, 0xe5, 0x97, 0xe4, 0x0b, 0xc9, 0x22, 0x54, 0xeb, 0xc1, 0x54, 0xea, 0x41, 0x54, 0xea, 0x95,
|
||||||
0x17, 0xa5, 0x26, 0x96, 0xa4, 0x0a, 0x19, 0x71, 0xf1, 0xc0, 0x15, 0xc5, 0x67, 0xa6, 0x48, 0x30,
|
0x19, 0x2a, 0x39, 0x70, 0x71, 0x85, 0x24, 0x16, 0x67, 0x3b, 0x17, 0xa5, 0x26, 0x96, 0xa4, 0x0a,
|
||||||
0x2a, 0x30, 0x6a, 0x70, 0x3a, 0xf1, 0x3f, 0xba, 0x27, 0xcf, 0xed, 0x0c, 0x13, 0xf7, 0x74, 0x09,
|
0x19, 0x71, 0xf1, 0xc0, 0x95, 0xc7, 0x67, 0xa6, 0x48, 0x30, 0x2a, 0x30, 0x6a, 0x70, 0x3a, 0xf1,
|
||||||
0xe2, 0x86, 0x2b, 0xf2, 0x4c, 0x51, 0xb2, 0xe7, 0xe2, 0x04, 0x99, 0x10, 0x5c, 0x92, 0x58, 0x54,
|
0x3f, 0xba, 0x27, 0xcf, 0xed, 0x0c, 0x13, 0xf7, 0x74, 0x09, 0xe2, 0x86, 0x2b, 0xf2, 0x4c, 0x51,
|
||||||
0x42, 0x96, 0x01, 0xc5, 0x10, 0x27, 0xb8, 0xa4, 0xe6, 0xa4, 0x92, 0xe7, 0x04, 0x21, 0x01, 0x2e,
|
0xb2, 0xe7, 0xe2, 0x04, 0x99, 0x10, 0x5c, 0x92, 0x58, 0x54, 0x42, 0x96, 0x01, 0xc5, 0x10, 0x27,
|
||||||
0xe6, 0x82, 0xcc, 0x14, 0x09, 0x26, 0x05, 0x46, 0x0d, 0xde, 0x20, 0x10, 0x53, 0x48, 0x9e, 0x8b,
|
0xb8, 0xa4, 0xe6, 0xa4, 0x92, 0xe7, 0x04, 0x21, 0x01, 0x2e, 0xe6, 0x82, 0xcc, 0x14, 0x09, 0x26,
|
||||||
0x3b, 0xb5, 0x22, 0xb3, 0x24, 0xbe, 0xb8, 0x24, 0xb1, 0xa4, 0xb4, 0x58, 0x82, 0x19, 0x2c, 0xc3,
|
0x05, 0x46, 0x0d, 0xde, 0x20, 0x10, 0x53, 0x48, 0x9e, 0x8b, 0x3b, 0xb5, 0x22, 0xb3, 0x24, 0xbe,
|
||||||
0x05, 0x12, 0x0a, 0x06, 0x8b, 0x38, 0x49, 0x9c, 0x78, 0x28, 0xc7, 0x70, 0xe3, 0xa1, 0x1c, 0x43,
|
0xb8, 0x24, 0xb1, 0xa4, 0xb4, 0x58, 0x82, 0x19, 0x2c, 0xc3, 0x05, 0x12, 0x0a, 0x06, 0x8b, 0x38,
|
||||||
0xc3, 0x23, 0x39, 0xc6, 0x13, 0x8f, 0xe4, 0x18, 0x2f, 0x3c, 0x92, 0x63, 0x7c, 0xf0, 0x48, 0x8e,
|
0x45, 0x9c, 0x78, 0x28, 0xc7, 0x70, 0xe3, 0xa1, 0x1c, 0x43, 0xc3, 0x23, 0x39, 0xc6, 0x13, 0x8f,
|
||||||
0x31, 0x89, 0x0d, 0x1c, 0x5a, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0e, 0x43, 0xc1, 0x0e,
|
0xe4, 0x18, 0x2f, 0x3c, 0x92, 0x63, 0x7c, 0xf0, 0x48, 0x8e, 0x31, 0xca, 0x8e, 0xcc, 0x40, 0xb7,
|
||||||
0x6c, 0x01, 0x00, 0x00,
|
0x86, 0xb0, 0x92, 0xd8, 0xc0, 0xe1, 0x6e, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0xfe, 0x52, 0xb1,
|
||||||
|
0x6e, 0xbd, 0x01, 0x00, 0x00,
|
||||||
}
|
}
|
@ -1,6 +1,8 @@
|
|||||||
syntax = "proto3";
|
syntax = "proto3";
|
||||||
|
|
||||||
package containerd.v1.types;
|
package containerd.services.events.v1;
|
||||||
|
|
||||||
|
option go_package = "github.com/containerd/containerd/api/services/events/v1;events";
|
||||||
|
|
||||||
message TaskCreate {
|
message TaskCreate {
|
||||||
string container_id = 1;
|
string container_id = 1;
|
@ -1,429 +0,0 @@
|
|||||||
// Code generated by protoc-gen-gogo.
|
|
||||||
// source: github.com/containerd/containerd/api/types/event/event.proto
|
|
||||||
// DO NOT EDIT!
|
|
||||||
|
|
||||||
package event
|
|
||||||
|
|
||||||
import proto "github.com/gogo/protobuf/proto"
|
|
||||||
import fmt "fmt"
|
|
||||||
import math "math"
|
|
||||||
import _ "github.com/gogo/protobuf/gogoproto"
|
|
||||||
import _ "github.com/gogo/protobuf/types"
|
|
||||||
import google_protobuf2 "github.com/gogo/protobuf/types"
|
|
||||||
|
|
||||||
import time "time"
|
|
||||||
|
|
||||||
import github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
|
|
||||||
|
|
||||||
import strings "strings"
|
|
||||||
import reflect "reflect"
|
|
||||||
|
|
||||||
import io "io"
|
|
||||||
|
|
||||||
// Reference imports to suppress errors if they are not otherwise used.
|
|
||||||
var _ = proto.Marshal
|
|
||||||
var _ = fmt.Errorf
|
|
||||||
var _ = math.Inf
|
|
||||||
var _ = time.Kitchen
|
|
||||||
|
|
||||||
type Envelope struct {
|
|
||||||
Timestamp time.Time `protobuf:"bytes,1,opt,name=timestamp,stdtime" json:"timestamp"`
|
|
||||||
Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
|
|
||||||
Event *google_protobuf2.Any `protobuf:"bytes,3,opt,name=event" json:"event,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (m *Envelope) Reset() { *m = Envelope{} }
|
|
||||||
func (*Envelope) ProtoMessage() {}
|
|
||||||
func (*Envelope) Descriptor() ([]byte, []int) { return fileDescriptorEvent, []int{0} }
|
|
||||||
|
|
||||||
func init() {
|
|
||||||
proto.RegisterType((*Envelope)(nil), "containerd.v1.types.Envelope")
|
|
||||||
}
|
|
||||||
func (m *Envelope) Marshal() (dAtA []byte, err error) {
|
|
||||||
size := m.Size()
|
|
||||||
dAtA = make([]byte, size)
|
|
||||||
n, err := m.MarshalTo(dAtA)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return dAtA[:n], nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (m *Envelope) MarshalTo(dAtA []byte) (int, error) {
|
|
||||||
var i int
|
|
||||||
_ = i
|
|
||||||
var l int
|
|
||||||
_ = l
|
|
||||||
dAtA[i] = 0xa
|
|
||||||
i++
|
|
||||||
i = encodeVarintEvent(dAtA, i, uint64(github_com_gogo_protobuf_types.SizeOfStdTime(m.Timestamp)))
|
|
||||||
n1, err := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Timestamp, dAtA[i:])
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
i += n1
|
|
||||||
if len(m.Topic) > 0 {
|
|
||||||
dAtA[i] = 0x12
|
|
||||||
i++
|
|
||||||
i = encodeVarintEvent(dAtA, i, uint64(len(m.Topic)))
|
|
||||||
i += copy(dAtA[i:], m.Topic)
|
|
||||||
}
|
|
||||||
if m.Event != nil {
|
|
||||||
dAtA[i] = 0x1a
|
|
||||||
i++
|
|
||||||
i = encodeVarintEvent(dAtA, i, uint64(m.Event.Size()))
|
|
||||||
n2, err := m.Event.MarshalTo(dAtA[i:])
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
i += n2
|
|
||||||
}
|
|
||||||
return i, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func encodeFixed64Event(dAtA []byte, offset int, v uint64) int {
|
|
||||||
dAtA[offset] = uint8(v)
|
|
||||||
dAtA[offset+1] = uint8(v >> 8)
|
|
||||||
dAtA[offset+2] = uint8(v >> 16)
|
|
||||||
dAtA[offset+3] = uint8(v >> 24)
|
|
||||||
dAtA[offset+4] = uint8(v >> 32)
|
|
||||||
dAtA[offset+5] = uint8(v >> 40)
|
|
||||||
dAtA[offset+6] = uint8(v >> 48)
|
|
||||||
dAtA[offset+7] = uint8(v >> 56)
|
|
||||||
return offset + 8
|
|
||||||
}
|
|
||||||
func encodeFixed32Event(dAtA []byte, offset int, v uint32) int {
|
|
||||||
dAtA[offset] = uint8(v)
|
|
||||||
dAtA[offset+1] = uint8(v >> 8)
|
|
||||||
dAtA[offset+2] = uint8(v >> 16)
|
|
||||||
dAtA[offset+3] = uint8(v >> 24)
|
|
||||||
return offset + 4
|
|
||||||
}
|
|
||||||
func encodeVarintEvent(dAtA []byte, offset int, v uint64) int {
|
|
||||||
for v >= 1<<7 {
|
|
||||||
dAtA[offset] = uint8(v&0x7f | 0x80)
|
|
||||||
v >>= 7
|
|
||||||
offset++
|
|
||||||
}
|
|
||||||
dAtA[offset] = uint8(v)
|
|
||||||
return offset + 1
|
|
||||||
}
|
|
||||||
func (m *Envelope) Size() (n int) {
|
|
||||||
var l int
|
|
||||||
_ = l
|
|
||||||
l = github_com_gogo_protobuf_types.SizeOfStdTime(m.Timestamp)
|
|
||||||
n += 1 + l + sovEvent(uint64(l))
|
|
||||||
l = len(m.Topic)
|
|
||||||
if l > 0 {
|
|
||||||
n += 1 + l + sovEvent(uint64(l))
|
|
||||||
}
|
|
||||||
if m.Event != nil {
|
|
||||||
l = m.Event.Size()
|
|
||||||
n += 1 + l + sovEvent(uint64(l))
|
|
||||||
}
|
|
||||||
return n
|
|
||||||
}
|
|
||||||
|
|
||||||
func sovEvent(x uint64) (n int) {
|
|
||||||
for {
|
|
||||||
n++
|
|
||||||
x >>= 7
|
|
||||||
if x == 0 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return n
|
|
||||||
}
|
|
||||||
func sozEvent(x uint64) (n int) {
|
|
||||||
return sovEvent(uint64((x << 1) ^ uint64((int64(x) >> 63))))
|
|
||||||
}
|
|
||||||
func (this *Envelope) String() string {
|
|
||||||
if this == nil {
|
|
||||||
return "nil"
|
|
||||||
}
|
|
||||||
s := strings.Join([]string{`&Envelope{`,
|
|
||||||
`Timestamp:` + strings.Replace(strings.Replace(this.Timestamp.String(), "Timestamp", "google_protobuf1.Timestamp", 1), `&`, ``, 1) + `,`,
|
|
||||||
`Topic:` + fmt.Sprintf("%v", this.Topic) + `,`,
|
|
||||||
`Event:` + strings.Replace(fmt.Sprintf("%v", this.Event), "Any", "google_protobuf2.Any", 1) + `,`,
|
|
||||||
`}`,
|
|
||||||
}, "")
|
|
||||||
return s
|
|
||||||
}
|
|
||||||
func valueToStringEvent(v interface{}) string {
|
|
||||||
rv := reflect.ValueOf(v)
|
|
||||||
if rv.IsNil() {
|
|
||||||
return "nil"
|
|
||||||
}
|
|
||||||
pv := reflect.Indirect(rv).Interface()
|
|
||||||
return fmt.Sprintf("*%v", pv)
|
|
||||||
}
|
|
||||||
func (m *Envelope) Unmarshal(dAtA []byte) error {
|
|
||||||
l := len(dAtA)
|
|
||||||
iNdEx := 0
|
|
||||||
for iNdEx < l {
|
|
||||||
preIndex := iNdEx
|
|
||||||
var wire uint64
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
wire |= (uint64(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
fieldNum := int32(wire >> 3)
|
|
||||||
wireType := int(wire & 0x7)
|
|
||||||
if wireType == 4 {
|
|
||||||
return fmt.Errorf("proto: Envelope: wiretype end group for non-group")
|
|
||||||
}
|
|
||||||
if fieldNum <= 0 {
|
|
||||||
return fmt.Errorf("proto: Envelope: illegal tag %d (wire type %d)", fieldNum, wire)
|
|
||||||
}
|
|
||||||
switch fieldNum {
|
|
||||||
case 1:
|
|
||||||
if wireType != 2 {
|
|
||||||
return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType)
|
|
||||||
}
|
|
||||||
var msglen int
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
msglen |= (int(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if msglen < 0 {
|
|
||||||
return ErrInvalidLengthEvent
|
|
||||||
}
|
|
||||||
postIndex := iNdEx + msglen
|
|
||||||
if postIndex > l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.Timestamp, dAtA[iNdEx:postIndex]); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
iNdEx = postIndex
|
|
||||||
case 2:
|
|
||||||
if wireType != 2 {
|
|
||||||
return fmt.Errorf("proto: wrong wireType = %d for field Topic", wireType)
|
|
||||||
}
|
|
||||||
var stringLen uint64
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
stringLen |= (uint64(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
intStringLen := int(stringLen)
|
|
||||||
if intStringLen < 0 {
|
|
||||||
return ErrInvalidLengthEvent
|
|
||||||
}
|
|
||||||
postIndex := iNdEx + intStringLen
|
|
||||||
if postIndex > l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
m.Topic = string(dAtA[iNdEx:postIndex])
|
|
||||||
iNdEx = postIndex
|
|
||||||
case 3:
|
|
||||||
if wireType != 2 {
|
|
||||||
return fmt.Errorf("proto: wrong wireType = %d for field Event", wireType)
|
|
||||||
}
|
|
||||||
var msglen int
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
msglen |= (int(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if msglen < 0 {
|
|
||||||
return ErrInvalidLengthEvent
|
|
||||||
}
|
|
||||||
postIndex := iNdEx + msglen
|
|
||||||
if postIndex > l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
if m.Event == nil {
|
|
||||||
m.Event = &google_protobuf2.Any{}
|
|
||||||
}
|
|
||||||
if err := m.Event.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
iNdEx = postIndex
|
|
||||||
default:
|
|
||||||
iNdEx = preIndex
|
|
||||||
skippy, err := skipEvent(dAtA[iNdEx:])
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if skippy < 0 {
|
|
||||||
return ErrInvalidLengthEvent
|
|
||||||
}
|
|
||||||
if (iNdEx + skippy) > l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
iNdEx += skippy
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if iNdEx > l {
|
|
||||||
return io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
func skipEvent(dAtA []byte) (n int, err error) {
|
|
||||||
l := len(dAtA)
|
|
||||||
iNdEx := 0
|
|
||||||
for iNdEx < l {
|
|
||||||
var wire uint64
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return 0, ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return 0, io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
wire |= (uint64(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
wireType := int(wire & 0x7)
|
|
||||||
switch wireType {
|
|
||||||
case 0:
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return 0, ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return 0, io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
iNdEx++
|
|
||||||
if dAtA[iNdEx-1] < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return iNdEx, nil
|
|
||||||
case 1:
|
|
||||||
iNdEx += 8
|
|
||||||
return iNdEx, nil
|
|
||||||
case 2:
|
|
||||||
var length int
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return 0, ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return 0, io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
length |= (int(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
iNdEx += length
|
|
||||||
if length < 0 {
|
|
||||||
return 0, ErrInvalidLengthEvent
|
|
||||||
}
|
|
||||||
return iNdEx, nil
|
|
||||||
case 3:
|
|
||||||
for {
|
|
||||||
var innerWire uint64
|
|
||||||
var start int = iNdEx
|
|
||||||
for shift := uint(0); ; shift += 7 {
|
|
||||||
if shift >= 64 {
|
|
||||||
return 0, ErrIntOverflowEvent
|
|
||||||
}
|
|
||||||
if iNdEx >= l {
|
|
||||||
return 0, io.ErrUnexpectedEOF
|
|
||||||
}
|
|
||||||
b := dAtA[iNdEx]
|
|
||||||
iNdEx++
|
|
||||||
innerWire |= (uint64(b) & 0x7F) << shift
|
|
||||||
if b < 0x80 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
innerWireType := int(innerWire & 0x7)
|
|
||||||
if innerWireType == 4 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
next, err := skipEvent(dAtA[start:])
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
iNdEx = start + next
|
|
||||||
}
|
|
||||||
return iNdEx, nil
|
|
||||||
case 4:
|
|
||||||
return iNdEx, nil
|
|
||||||
case 5:
|
|
||||||
iNdEx += 4
|
|
||||||
return iNdEx, nil
|
|
||||||
default:
|
|
||||||
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
panic("unreachable")
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
ErrInvalidLengthEvent = fmt.Errorf("proto: negative length found during unmarshaling")
|
|
||||||
ErrIntOverflowEvent = fmt.Errorf("proto: integer overflow")
|
|
||||||
)
|
|
||||||
|
|
||||||
func init() {
|
|
||||||
proto.RegisterFile("github.com/containerd/containerd/api/types/event/event.proto", fileDescriptorEvent)
|
|
||||||
}
|
|
||||||
|
|
||||||
var fileDescriptorEvent = []byte{
|
|
||||||
// 248 bytes of a gzipped FileDescriptorProto
|
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xb2, 0x49, 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, 0x96, 0xa5,
|
|
||||||
0xe6, 0x95, 0x40, 0x48, 0xbd, 0x82, 0xa2, 0xfc, 0x92, 0x7c, 0x21, 0x61, 0x84, 0x3a, 0xbd, 0x32,
|
|
||||||
0x43, 0x3d, 0xb0, 0x32, 0x29, 0x91, 0xf4, 0xfc, 0xf4, 0x7c, 0xb0, 0xbc, 0x3e, 0x88, 0x05, 0x51,
|
|
||||||
0x2a, 0x25, 0x9f, 0x9e, 0x9f, 0x9f, 0x9e, 0x93, 0xaa, 0x0f, 0xe6, 0x25, 0x95, 0xa6, 0xe9, 0x97,
|
|
||||||
0x64, 0xe6, 0xa6, 0x16, 0x97, 0x24, 0xe6, 0x16, 0x40, 0x15, 0x48, 0xa2, 0x2b, 0x48, 0xcc, 0xab,
|
|
||||||
0x84, 0x48, 0x29, 0x4d, 0x60, 0xe4, 0xe2, 0x70, 0xcd, 0x2b, 0x4b, 0xcd, 0xc9, 0x2f, 0x48, 0x15,
|
|
||||||
0x72, 0xe2, 0xe2, 0x84, 0x6b, 0x95, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x36, 0x92, 0xd2, 0x83, 0xe8,
|
|
||||||
0xd5, 0x83, 0xe9, 0xd5, 0x0b, 0x81, 0xa9, 0x70, 0xe2, 0x38, 0x71, 0x4f, 0x9e, 0x61, 0xc2, 0x7d,
|
|
||||||
0x79, 0xc6, 0x20, 0x84, 0x36, 0x21, 0x11, 0x2e, 0xd6, 0x92, 0xfc, 0x82, 0xcc, 0x64, 0x09, 0x26,
|
|
||||||
0x05, 0x46, 0x0d, 0xce, 0x20, 0x08, 0x47, 0x48, 0x8b, 0x8b, 0x15, 0xec, 0x39, 0x09, 0x66, 0xb0,
|
|
||||||
0xa9, 0x22, 0x18, 0xa6, 0x3a, 0xe6, 0x55, 0x06, 0x41, 0x94, 0x38, 0x49, 0x9c, 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, 0x89, 0x0d, 0xac, 0xdc, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff,
|
|
||||||
0xb7, 0xff, 0x84, 0x18, 0x5a, 0x01, 0x00, 0x00,
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
syntax = "proto3";
|
|
||||||
|
|
||||||
package containerd.v1.types;
|
|
||||||
|
|
||||||
import "gogoproto/gogo.proto";
|
|
||||||
import "google/protobuf/timestamp.proto";
|
|
||||||
import "google/protobuf/any.proto";
|
|
||||||
|
|
||||||
message Envelope {
|
|
||||||
google.protobuf.Timestamp timestamp = 1 [(gogoproto.stdtime) = true, (gogoproto.nullable) = false];
|
|
||||||
string topic = 2;
|
|
||||||
google.protobuf.Any event = 3;
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
syntax = "proto3";
|
|
||||||
|
|
||||||
package containerd.v1.types;
|
|
||||||
|
|
||||||
message NamespaceCreate {
|
|
||||||
string name = 1;
|
|
||||||
map<string, string> labels = 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
message NamespaceUpdate {
|
|
||||||
string name = 1;
|
|
||||||
map<string, string> labels = 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
message NamespaceDelete {
|
|
||||||
string name = 1;
|
|
||||||
}
|
|
@ -7,8 +7,7 @@ import (
|
|||||||
"text/tabwriter"
|
"text/tabwriter"
|
||||||
|
|
||||||
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/gogo/protobuf/proto"
|
|
||||||
"github.com/urfave/cli"
|
"github.com/urfave/cli"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -56,118 +55,55 @@ var eventsCommand = cli.Command{
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
func getEventOutput(evt *event.Envelope) (string, error) {
|
func getEventOutput(env *eventsapi.Envelope) (string, error) {
|
||||||
|
|
||||||
out := ""
|
out := ""
|
||||||
switch evt.Event.TypeUrl {
|
|
||||||
case "types.containerd.io/containerd.v1.types.event.ContainerCreate":
|
var de events.DynamicEvent
|
||||||
e := &event.ContainerCreate{}
|
if err := events.UnmarshalEvent(env.Event, &de); err != nil {
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
return "", err
|
||||||
return out, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
switch e := de.Event.(type) {
|
||||||
|
case *eventsapi.ContainerCreate:
|
||||||
out = fmt.Sprintf("id=%s image=%s runtime=%s", e.ContainerID, e.Image, e.Runtime)
|
out = fmt.Sprintf("id=%s image=%s runtime=%s", e.ContainerID, e.Image, e.Runtime)
|
||||||
case "types.containerd.io/containerd.v1.types.event.TaskCreate":
|
case *eventsapi.TaskCreate:
|
||||||
e := &event.TaskCreate{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "id=" + e.ContainerID
|
out = "id=" + e.ContainerID
|
||||||
case "types.containerd.io/containerd.v1.types.event.TaskStart":
|
case *eventsapi.TaskStart:
|
||||||
e := &event.TaskStart{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "id=" + e.ContainerID
|
out = "id=" + e.ContainerID
|
||||||
case "types.containerd.io/containerd.v1.types.event.TaskDelete":
|
case *eventsapi.TaskDelete:
|
||||||
e := &event.TaskDelete{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("id=%s pid=%d status=%d", e.ContainerID, e.Pid, e.ExitStatus)
|
out = fmt.Sprintf("id=%s pid=%d status=%d", e.ContainerID, e.Pid, e.ExitStatus)
|
||||||
case "types.containerd.io/containerd.v1.types.event.ContainerUpdate":
|
case *eventsapi.ContainerUpdate:
|
||||||
e := &event.ContainerUpdate{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "id=" + e.ContainerID
|
out = "id=" + e.ContainerID
|
||||||
case "types.containerd.io/containerd.v1.types.event.ContainerDelete":
|
case *eventsapi.ContainerDelete:
|
||||||
e := &event.ContainerDelete{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "id=" + e.ContainerID
|
out = "id=" + e.ContainerID
|
||||||
case "types.containerd.io/containerd.v1.types.event.SnapshotPrepare":
|
case *eventsapi.SnapshotPrepare:
|
||||||
e := &event.SnapshotPrepare{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("key=%s parent=%s", e.Key, e.Parent)
|
out = fmt.Sprintf("key=%s parent=%s", e.Key, e.Parent)
|
||||||
case "types.containerd.io/containerd.v1.types.event.SnapshotCommit":
|
case *eventsapi.SnapshotCommit:
|
||||||
e := &event.SnapshotCommit{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("key=%s name=%s", e.Key, e.Name)
|
out = fmt.Sprintf("key=%s name=%s", e.Key, e.Name)
|
||||||
case "types.containerd.io/containerd.v1.types.event.SnapshotRemove":
|
case *eventsapi.SnapshotRemove:
|
||||||
e := &event.SnapshotRemove{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "key=" + e.Key
|
out = "key=" + e.Key
|
||||||
case "types.containerd.io/containerd.v1.types.event.ImageUpdate":
|
case *eventsapi.ImageUpdate:
|
||||||
e := &event.ImageUpdate{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("name=%s labels=%s", e.Name, e.Labels)
|
out = fmt.Sprintf("name=%s labels=%s", e.Name, e.Labels)
|
||||||
case "types.containerd.io/containerd.v1.types.event.ImageDelete":
|
case *eventsapi.ImageDelete:
|
||||||
e := &event.ImageDelete{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "name=" + e.Name
|
out = "name=" + e.Name
|
||||||
case "types.containerd.io/containerd.v1.types.event.NamespaceCreate":
|
case *eventsapi.NamespaceCreate:
|
||||||
e := &event.NamespaceCreate{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("name=%s labels=%s", e.Name, e.Labels)
|
out = fmt.Sprintf("name=%s labels=%s", e.Name, e.Labels)
|
||||||
case "types.containerd.io/containerd.v1.types.event.NamespaceUpdate":
|
case *eventsapi.NamespaceUpdate:
|
||||||
e := &event.NamespaceUpdate{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("name=%s labels=%s", e.Name, e.Labels)
|
out = fmt.Sprintf("name=%s labels=%s", e.Name, e.Labels)
|
||||||
case "types.containerd.io/containerd.v1.types.event.NamespaceDelete":
|
case *eventsapi.NamespaceDelete:
|
||||||
e := &event.NamespaceDelete{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = "name=" + e.Name
|
out = "name=" + e.Name
|
||||||
case "types.containerd.io/containerd.v1.types.event.RuntimeCreate":
|
case *eventsapi.RuntimeCreate:
|
||||||
e := &event.RuntimeCreate{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
mounts := []string{}
|
mounts := []string{}
|
||||||
for _, m := range e.RootFS {
|
for _, m := range e.RootFS {
|
||||||
mounts = append(mounts, fmt.Sprintf("type=%s:src=%s", m.Type, m.Source))
|
mounts = append(mounts, fmt.Sprintf("type=%s:src=%s", m.Type, m.Source))
|
||||||
}
|
}
|
||||||
out = fmt.Sprintf("id=%s bundle=%s rootfs=%s checkpoint=%s", e.ID, e.Bundle, strings.Join(mounts, ","), e.Checkpoint)
|
out = fmt.Sprintf("id=%s bundle=%s rootfs=%s checkpoint=%s", e.ID, e.Bundle, strings.Join(mounts, ","), e.Checkpoint)
|
||||||
case "types.containerd.io/containerd.v1.types.event.RuntimeEvent":
|
case *eventsapi.RuntimeEvent:
|
||||||
e := &event.RuntimeEvent{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("id=%s type=%s pid=%d status=%d exited=%s", e.ID, e.Type, e.Pid, e.ExitStatus, e.ExitedAt)
|
out = fmt.Sprintf("id=%s type=%s pid=%d status=%d exited=%s", e.ID, e.Type, e.Pid, e.ExitStatus, e.ExitedAt)
|
||||||
case "types.containerd.io/containerd.v1.types.event.RuntimeDelete":
|
case *eventsapi.RuntimeDelete:
|
||||||
e := &event.RuntimeDelete{}
|
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
|
||||||
return out, err
|
|
||||||
}
|
|
||||||
out = fmt.Sprintf("id=%s runtime=%s status=%d exited=%s", e.ID, e.Runtime, e.ExitStatus, e.ExitedAt)
|
out = fmt.Sprintf("id=%s runtime=%s status=%d exited=%s", e.ID, e.Runtime, e.ExitStatus, e.ExitedAt)
|
||||||
default:
|
default:
|
||||||
out = evt.Event.TypeUrl
|
out = env.Event.TypeUrl
|
||||||
}
|
}
|
||||||
|
|
||||||
return out, nil
|
return out, nil
|
||||||
|
@ -1,92 +1,72 @@
|
|||||||
package events
|
package events
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"path"
|
|
||||||
"strings"
|
|
||||||
|
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
"github.com/gogo/protobuf/proto"
|
"github.com/gogo/protobuf/proto"
|
||||||
protobuf "github.com/gogo/protobuf/types"
|
"github.com/gogo/protobuf/types"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
)
|
)
|
||||||
|
|
||||||
func getUrl(name string) string {
|
const (
|
||||||
base := "types.containerd.io"
|
typesPrefix = "types.containerd.io/"
|
||||||
return path.Join(base, strings.Join([]string{
|
)
|
||||||
"containerd",
|
|
||||||
EventVersion,
|
// MarshalEvent marshal the event into an any, namespacing the type url to the
|
||||||
"types",
|
// containerd types.
|
||||||
"event",
|
func MarshalEvent(event Event) (*types.Any, error) {
|
||||||
name,
|
pb, ok := event.(proto.Message)
|
||||||
}, "."))
|
if !ok {
|
||||||
}
|
return nil, errors.Errorf("%T not a protobuf", event)
|
||||||
|
|
||||||
func convertToAny(evt Event) (*protobuf.Any, error) {
|
|
||||||
url := ""
|
|
||||||
var pb proto.Message
|
|
||||||
switch v := evt.(type) {
|
|
||||||
case event.ContainerCreate:
|
|
||||||
url = getUrl("ContainerCreate")
|
|
||||||
pb = &v
|
|
||||||
case event.ContainerDelete:
|
|
||||||
url = getUrl("ContainerDelete")
|
|
||||||
pb = &v
|
|
||||||
case event.TaskCreate:
|
|
||||||
url = getUrl("TaskCreate")
|
|
||||||
pb = &v
|
|
||||||
case event.TaskStart:
|
|
||||||
url = getUrl("TaskStart")
|
|
||||||
pb = &v
|
|
||||||
case event.TaskDelete:
|
|
||||||
url = getUrl("TaskDelete")
|
|
||||||
pb = &v
|
|
||||||
case event.ContentDelete:
|
|
||||||
url = getUrl("ContentDelete")
|
|
||||||
pb = &v
|
|
||||||
case event.SnapshotPrepare:
|
|
||||||
url = getUrl("SnapshotPrepare")
|
|
||||||
pb = &v
|
|
||||||
case event.SnapshotCommit:
|
|
||||||
url = getUrl("SnapshotCommit")
|
|
||||||
pb = &v
|
|
||||||
case event.SnapshotRemove:
|
|
||||||
url = getUrl("SnapshotRemove")
|
|
||||||
pb = &v
|
|
||||||
case event.ImageUpdate:
|
|
||||||
url = getUrl("ImageUpdate")
|
|
||||||
pb = &v
|
|
||||||
case event.ImageDelete:
|
|
||||||
url = getUrl("ImageDelete")
|
|
||||||
pb = &v
|
|
||||||
case event.NamespaceCreate:
|
|
||||||
url = getUrl("NamespaceCreate")
|
|
||||||
pb = &v
|
|
||||||
case event.NamespaceUpdate:
|
|
||||||
url = getUrl("NamespaceUpdate")
|
|
||||||
pb = &v
|
|
||||||
case event.NamespaceDelete:
|
|
||||||
url = getUrl("NamespaceDelete")
|
|
||||||
pb = &v
|
|
||||||
case event.RuntimeCreate:
|
|
||||||
url = getUrl("RuntimeCreate")
|
|
||||||
pb = &v
|
|
||||||
case event.RuntimeEvent:
|
|
||||||
url = getUrl("RuntimeEvent")
|
|
||||||
pb = &v
|
|
||||||
case event.RuntimeDelete:
|
|
||||||
url = getUrl("RuntimeDelete")
|
|
||||||
pb = &v
|
|
||||||
default:
|
|
||||||
return nil, errors.Errorf("unsupported event type: %T", v)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
url := typesPrefix + proto.MessageName(pb)
|
||||||
val, err := proto.Marshal(pb)
|
val, err := proto.Marshal(pb)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return &protobuf.Any{
|
return &types.Any{
|
||||||
TypeUrl: url,
|
TypeUrl: url,
|
||||||
Value: val,
|
Value: val,
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DynamEvent acts as a holder type for unmarshaling events where the type is
|
||||||
|
// not previously known.
|
||||||
|
type DynamicEvent struct {
|
||||||
|
Event
|
||||||
|
}
|
||||||
|
|
||||||
|
// UnmarshalEvent provides an event object based on the provided any.
|
||||||
|
//
|
||||||
|
// Use with DynamicEvent (or protobuf/types.DynamicAny) if the type is not
|
||||||
|
// known before hand.
|
||||||
|
func UnmarshalEvent(any *types.Any, event Event) error {
|
||||||
|
switch v := event.(type) {
|
||||||
|
case proto.Message:
|
||||||
|
if err := types.UnmarshalAny(any, v); err != nil {
|
||||||
|
return errors.Wrapf(err, "failed to unmarshal event %v", any)
|
||||||
|
}
|
||||||
|
case *DynamicEvent:
|
||||||
|
var da types.DynamicAny
|
||||||
|
|
||||||
|
if err := types.UnmarshalAny(any, &da); err != nil {
|
||||||
|
return errors.Wrapf(err, "failed to unmarshal event %v", any)
|
||||||
|
}
|
||||||
|
v.Event = da.Message
|
||||||
|
default:
|
||||||
|
return errors.Errorf("unsupported event type: %T", event)
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Is returns true if the event in any will unmarashal into the provided event.
|
||||||
|
func Is(any *types.Any, event Event) bool {
|
||||||
|
pb, ok := event.(proto.Message)
|
||||||
|
if !ok {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
return types.Is(any, pb)
|
||||||
|
}
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"github.com/containerd/containerd/api/types/event"
|
events "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/namespaces"
|
"github.com/containerd/containerd/namespaces"
|
||||||
goevents "github.com/docker/go-events"
|
goevents "github.com/docker/go-events"
|
||||||
)
|
)
|
||||||
@ -38,12 +38,12 @@ func (e *Emitter) Post(ctx context.Context, evt Event) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Emitter) Events(ctx context.Context, clientID string) chan *event.Envelope {
|
func (e *Emitter) Events(ctx context.Context, clientID string) chan *events.Envelope {
|
||||||
e.m.Lock()
|
e.m.Lock()
|
||||||
if _, ok := e.sinks[clientID]; !ok {
|
if _, ok := e.sinks[clientID]; !ok {
|
||||||
ns, _ := namespaces.Namespace(ctx)
|
ns, _ := namespaces.Namespace(ctx)
|
||||||
s := &eventSink{
|
s := &eventSink{
|
||||||
ch: make(chan *event.Envelope),
|
ch: make(chan *events.Envelope),
|
||||||
ns: ns,
|
ns: ns,
|
||||||
}
|
}
|
||||||
e.sinks[clientID] = s
|
e.sinks[clientID] = s
|
||||||
|
@ -5,7 +5,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
"github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/namespaces"
|
"github.com/containerd/containerd/namespaces"
|
||||||
goevents "github.com/docker/go-events"
|
goevents "github.com/docker/go-events"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
@ -18,7 +18,7 @@ type sinkEvent struct {
|
|||||||
|
|
||||||
type eventSink struct {
|
type eventSink struct {
|
||||||
ns string
|
ns string
|
||||||
ch chan *event.Envelope
|
ch chan *events.Envelope
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *eventSink) Write(evt goevents.Event) error {
|
func (s *eventSink) Write(evt goevents.Event) error {
|
||||||
@ -34,7 +34,7 @@ func (s *eventSink) Write(evt goevents.Event) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
eventData, err := convertToAny(e.event)
|
eventData, err := MarshalEvent(e.event)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -45,7 +45,7 @@ func (s *eventSink) Write(evt goevents.Event) error {
|
|||||||
"ns": ns,
|
"ns": ns,
|
||||||
}).Debug("event")
|
}).Debug("event")
|
||||||
|
|
||||||
s.ch <- &event.Envelope{
|
s.ch <- &events.Envelope{
|
||||||
Timestamp: time.Now(),
|
Timestamp: time.Now(),
|
||||||
Topic: topic,
|
Topic: topic,
|
||||||
Event: eventData,
|
Event: eventData,
|
||||||
|
@ -16,8 +16,8 @@ import (
|
|||||||
|
|
||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
|
|
||||||
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/api/services/shim/v1"
|
"github.com/containerd/containerd/api/services/shim/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
"github.com/containerd/containerd/api/types/mount"
|
"github.com/containerd/containerd/api/types/mount"
|
||||||
"github.com/containerd/containerd/api/types/task"
|
"github.com/containerd/containerd/api/types/task"
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
@ -242,19 +242,19 @@ func (r *Runtime) Create(ctx context.Context, id string, opts plugin.CreateOpts)
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
var runtimeMounts []*event.RuntimeMount
|
var runtimeMounts []*eventsapi.RuntimeMount
|
||||||
for _, m := range opts.Rootfs {
|
for _, m := range opts.Rootfs {
|
||||||
runtimeMounts = append(runtimeMounts, &event.RuntimeMount{
|
runtimeMounts = append(runtimeMounts, &eventsapi.RuntimeMount{
|
||||||
Type: m.Type,
|
Type: m.Type,
|
||||||
Source: m.Source,
|
Source: m.Source,
|
||||||
Options: m.Options,
|
Options: m.Options,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
if err := r.emit(ctx, "/runtime/create", event.RuntimeCreate{
|
if err := r.emit(ctx, "/runtime/create", &eventsapi.RuntimeCreate{
|
||||||
ID: id,
|
ID: id,
|
||||||
Bundle: path,
|
Bundle: path,
|
||||||
RootFS: runtimeMounts,
|
RootFS: runtimeMounts,
|
||||||
IO: &event.RuntimeIO{
|
IO: &eventsapi.RuntimeIO{
|
||||||
Stdin: opts.IO.Stdin,
|
Stdin: opts.IO.Stdin,
|
||||||
Stdout: opts.IO.Stdout,
|
Stdout: opts.IO.Stdout,
|
||||||
Stderr: opts.IO.Stderr,
|
Stderr: opts.IO.Stderr,
|
||||||
@ -290,7 +290,7 @@ func (r *Runtime) Delete(ctx context.Context, c plugin.Task) (*plugin.Exit, erro
|
|||||||
r.tasks.delete(ctx, lc)
|
r.tasks.delete(ctx, lc)
|
||||||
|
|
||||||
i := c.Info()
|
i := c.Info()
|
||||||
if err := r.emit(ctx, "/runtime/delete", event.RuntimeDelete{
|
if err := r.emit(ctx, "/runtime/delete", &eventsapi.RuntimeDelete{
|
||||||
ID: i.ID,
|
ID: i.ID,
|
||||||
Runtime: i.Runtime,
|
Runtime: i.Runtime,
|
||||||
ExitStatus: rsp.ExitStatus,
|
ExitStatus: rsp.ExitStatus,
|
||||||
@ -416,7 +416,7 @@ func (r *Runtime) forward(ctx context.Context, events shim.Shim_EventsClient) {
|
|||||||
ExitStatus: e.ExitStatus,
|
ExitStatus: e.ExitStatus,
|
||||||
ExitedAt: e.ExitedAt,
|
ExitedAt: e.ExitedAt,
|
||||||
}
|
}
|
||||||
if err := r.emit(ctx, "/runtime/"+topic, event.RuntimeEvent{
|
if err := r.emit(ctx, "/runtime/"+topic, &eventsapi.RuntimeEvent{
|
||||||
ID: e.ID,
|
ID: e.ID,
|
||||||
Type: e.Type,
|
Type: e.Type,
|
||||||
Pid: e.Pid,
|
Pid: e.Pid,
|
||||||
|
18
process.go
18
process.go
@ -7,9 +7,8 @@ import (
|
|||||||
|
|
||||||
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/api/services/tasks/v1"
|
"github.com/containerd/containerd/api/services/tasks/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
tasktypes "github.com/containerd/containerd/api/types/task"
|
tasktypes "github.com/containerd/containerd/api/types/task"
|
||||||
"github.com/gogo/protobuf/proto"
|
"github.com/containerd/containerd/events"
|
||||||
protobuf "github.com/gogo/protobuf/types"
|
protobuf "github.com/gogo/protobuf/types"
|
||||||
specs "github.com/opencontainers/runtime-spec/specs-go"
|
specs "github.com/opencontainers/runtime-spec/specs-go"
|
||||||
)
|
)
|
||||||
@ -74,24 +73,27 @@ func (p *process) Kill(ctx context.Context, s syscall.Signal) error {
|
|||||||
|
|
||||||
func (p *process) Wait(ctx context.Context) (uint32, error) {
|
func (p *process) Wait(ctx context.Context) (uint32, error) {
|
||||||
// TODO (ehazlett): add filtering for specific event
|
// TODO (ehazlett): add filtering for specific event
|
||||||
events, err := p.task.client.EventService().Stream(ctx, &eventsapi.StreamEventsRequest{})
|
eventstream, err := p.task.client.EventService().Stream(ctx, &eventsapi.StreamEventsRequest{})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return UnknownExitStatus, err
|
return UnknownExitStatus, err
|
||||||
}
|
}
|
||||||
<-p.pidSync
|
<-p.pidSync
|
||||||
|
evloop:
|
||||||
for {
|
for {
|
||||||
evt, err := events.Recv()
|
evt, err := eventstream.Recv()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return UnknownExitStatus, err
|
return UnknownExitStatus, err
|
||||||
}
|
}
|
||||||
if evt.Event.TypeUrl == "types.containerd.io/containerd.v1.types.event.RuntimeEvent" {
|
|
||||||
e := &event.RuntimeEvent{}
|
switch {
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
case events.Is(evt.Event, &eventsapi.RuntimeEvent{}):
|
||||||
|
var e eventsapi.RuntimeEvent
|
||||||
|
if err := events.UnmarshalEvent(evt.Event, &e); err != nil {
|
||||||
return UnknownExitStatus, err
|
return UnknownExitStatus, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if e.Type != tasktypes.Event_EXIT {
|
if e.Type != tasktypes.Event_EXIT {
|
||||||
continue
|
continue evloop
|
||||||
}
|
}
|
||||||
|
|
||||||
if e.ID == p.task.containerID && e.Pid == p.pid {
|
if e.ID == p.task.containerID && e.Pid == p.pid {
|
||||||
|
@ -3,7 +3,7 @@ package containers
|
|||||||
import (
|
import (
|
||||||
"github.com/boltdb/bolt"
|
"github.com/boltdb/bolt"
|
||||||
api "github.com/containerd/containerd/api/services/containers/v1"
|
api "github.com/containerd/containerd/api/services/containers/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/containers"
|
"github.com/containerd/containerd/containers"
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/metadata"
|
"github.com/containerd/containerd/metadata"
|
||||||
@ -93,10 +93,10 @@ func (s *Service) Create(ctx context.Context, req *api.CreateContainerRequest) (
|
|||||||
}); err != nil {
|
}); err != nil {
|
||||||
return &resp, err
|
return &resp, err
|
||||||
}
|
}
|
||||||
if err := s.emit(ctx, "/containers/create", event.ContainerCreate{
|
if err := s.emit(ctx, "/containers/create", &eventsapi.ContainerCreate{
|
||||||
ContainerID: resp.Container.ID,
|
ContainerID: resp.Container.ID,
|
||||||
Image: resp.Container.Image,
|
Image: resp.Container.Image,
|
||||||
Runtime: &event.ContainerCreate_Runtime{
|
Runtime: &eventsapi.ContainerCreate_Runtime{
|
||||||
Name: resp.Container.Runtime.Name,
|
Name: resp.Container.Runtime.Name,
|
||||||
Options: resp.Container.Runtime.Options,
|
Options: resp.Container.Runtime.Options,
|
||||||
},
|
},
|
||||||
@ -160,7 +160,7 @@ func (s *Service) Update(ctx context.Context, req *api.UpdateContainerRequest) (
|
|||||||
return &resp, err
|
return &resp, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/containers/update", event.ContainerUpdate{
|
if err := s.emit(ctx, "/containers/update", &eventsapi.ContainerUpdate{
|
||||||
ContainerID: resp.Container.ID,
|
ContainerID: resp.Container.ID,
|
||||||
Image: resp.Container.Image,
|
Image: resp.Container.Image,
|
||||||
Labels: resp.Container.Labels,
|
Labels: resp.Container.Labels,
|
||||||
@ -179,7 +179,7 @@ func (s *Service) Delete(ctx context.Context, req *api.DeleteContainerRequest) (
|
|||||||
return &empty.Empty{}, mapGRPCError(err, req.ID)
|
return &empty.Empty{}, mapGRPCError(err, req.ID)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/containers/delete", event.ContainerDelete{
|
if err := s.emit(ctx, "/containers/delete", &eventsapi.ContainerDelete{
|
||||||
ContainerID: req.ID,
|
ContainerID: req.ID,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return &empty.Empty{}, err
|
return &empty.Empty{}, err
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
|
|
||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
api "github.com/containerd/containerd/api/services/content/v1"
|
api "github.com/containerd/containerd/api/services/content/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/content"
|
"github.com/containerd/containerd/content"
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/log"
|
"github.com/containerd/containerd/log"
|
||||||
@ -128,7 +128,7 @@ func (s *Service) Delete(ctx context.Context, req *api.DeleteContentRequest) (*e
|
|||||||
return nil, serverErrorToGRPC(err, req.Digest.String())
|
return nil, serverErrorToGRPC(err, req.Digest.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/content/delete", event.ContentDelete{
|
if err := s.emit(ctx, "/content/delete", &eventsapi.ContentDelete{
|
||||||
Digest: req.Digest,
|
Digest: req.Digest,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -2,8 +2,8 @@ package images
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/boltdb/bolt"
|
"github.com/boltdb/bolt"
|
||||||
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
imagesapi "github.com/containerd/containerd/api/services/images/v1"
|
imagesapi "github.com/containerd/containerd/api/services/images/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/images"
|
"github.com/containerd/containerd/images"
|
||||||
"github.com/containerd/containerd/metadata"
|
"github.com/containerd/containerd/metadata"
|
||||||
@ -69,7 +69,7 @@ func (s *Service) Update(ctx context.Context, req *imagesapi.UpdateImageRequest)
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/images/update", event.ImageUpdate{
|
if err := s.emit(ctx, "/images/update", &eventsapi.ImageUpdate{
|
||||||
Name: req.Image.Name,
|
Name: req.Image.Name,
|
||||||
Labels: req.Image.Labels,
|
Labels: req.Image.Labels,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
@ -103,7 +103,7 @@ func (s *Service) Delete(ctx context.Context, req *imagesapi.DeleteImageRequest)
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/images/delete", event.ImageDelete{
|
if err := s.emit(ctx, "/images/delete", &eventsapi.ImageDelete{
|
||||||
Name: req.Name,
|
Name: req.Name,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -4,8 +4,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/boltdb/bolt"
|
"github.com/boltdb/bolt"
|
||||||
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
api "github.com/containerd/containerd/api/services/namespaces/v1"
|
api "github.com/containerd/containerd/api/services/namespaces/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/metadata"
|
"github.com/containerd/containerd/metadata"
|
||||||
"github.com/containerd/containerd/namespaces"
|
"github.com/containerd/containerd/namespaces"
|
||||||
@ -118,7 +118,7 @@ func (s *Service) Create(ctx context.Context, req *api.CreateNamespaceRequest) (
|
|||||||
return &resp, err
|
return &resp, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/namespaces/create", event.NamespaceCreate{
|
if err := s.emit(ctx, "/namespaces/create", &eventsapi.NamespaceCreate{
|
||||||
Name: req.Namespace.Name,
|
Name: req.Namespace.Name,
|
||||||
Labels: req.Namespace.Labels,
|
Labels: req.Namespace.Labels,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
@ -171,7 +171,7 @@ func (s *Service) Update(ctx context.Context, req *api.UpdateNamespaceRequest) (
|
|||||||
return &resp, err
|
return &resp, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/namespaces/update", event.NamespaceUpdate{
|
if err := s.emit(ctx, "/namespaces/update", &eventsapi.NamespaceUpdate{
|
||||||
Name: req.Namespace.Name,
|
Name: req.Namespace.Name,
|
||||||
Labels: req.Namespace.Labels,
|
Labels: req.Namespace.Labels,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
@ -188,7 +188,7 @@ func (s *Service) Delete(ctx context.Context, req *api.DeleteNamespaceRequest) (
|
|||||||
return &empty.Empty{}, err
|
return &empty.Empty{}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/namespaces/delete", event.NamespaceDelete{
|
if err := s.emit(ctx, "/namespaces/delete", &eventsapi.NamespaceDelete{
|
||||||
Name: req.Name,
|
Name: req.Name,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return &empty.Empty{}, err
|
return &empty.Empty{}, err
|
||||||
|
@ -3,8 +3,8 @@ package snapshot
|
|||||||
import (
|
import (
|
||||||
gocontext "context"
|
gocontext "context"
|
||||||
|
|
||||||
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
snapshotapi "github.com/containerd/containerd/api/services/snapshot/v1"
|
snapshotapi "github.com/containerd/containerd/api/services/snapshot/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
mounttypes "github.com/containerd/containerd/api/types/mount"
|
mounttypes "github.com/containerd/containerd/api/types/mount"
|
||||||
"github.com/containerd/containerd/events"
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/log"
|
"github.com/containerd/containerd/log"
|
||||||
@ -63,7 +63,7 @@ func (s *service) Prepare(ctx context.Context, pr *snapshotapi.PrepareSnapshotRe
|
|||||||
return nil, grpcError(err)
|
return nil, grpcError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/snapshot/prepare", event.SnapshotPrepare{
|
if err := s.emit(ctx, "/snapshot/prepare", &eventsapi.SnapshotPrepare{
|
||||||
Key: pr.Key,
|
Key: pr.Key,
|
||||||
Parent: pr.Parent,
|
Parent: pr.Parent,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
@ -108,7 +108,7 @@ func (s *service) Commit(ctx context.Context, cr *snapshotapi.CommitSnapshotRequ
|
|||||||
return nil, grpcError(err)
|
return nil, grpcError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/snapshot/commit", event.SnapshotCommit{
|
if err := s.emit(ctx, "/snapshot/commit", &eventsapi.SnapshotCommit{
|
||||||
Key: cr.Key,
|
Key: cr.Key,
|
||||||
Name: cr.Name,
|
Name: cr.Name,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
@ -125,7 +125,7 @@ func (s *service) Remove(ctx context.Context, rr *snapshotapi.RemoveSnapshotRequ
|
|||||||
return nil, grpcError(err)
|
return nil, grpcError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/snapshot/remove", event.SnapshotRemove{
|
if err := s.emit(ctx, "/snapshot/remove", &eventsapi.SnapshotRemove{
|
||||||
Key: rr.Key,
|
Key: rr.Key,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -9,9 +9,9 @@ import (
|
|||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
|
||||||
"github.com/boltdb/bolt"
|
"github.com/boltdb/bolt"
|
||||||
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
api "github.com/containerd/containerd/api/services/tasks/v1"
|
api "github.com/containerd/containerd/api/services/tasks/v1"
|
||||||
"github.com/containerd/containerd/api/types/descriptor"
|
"github.com/containerd/containerd/api/types/descriptor"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
"github.com/containerd/containerd/api/types/task"
|
"github.com/containerd/containerd/api/types/task"
|
||||||
"github.com/containerd/containerd/archive"
|
"github.com/containerd/containerd/archive"
|
||||||
"github.com/containerd/containerd/containers"
|
"github.com/containerd/containerd/containers"
|
||||||
@ -154,7 +154,7 @@ func (s *Service) Create(ctx context.Context, r *api.CreateTaskRequest) (*api.Cr
|
|||||||
log.G(ctx).Error(err)
|
log.G(ctx).Error(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/tasks/create", event.TaskCreate{
|
if err := s.emit(ctx, "/tasks/create", &eventsapi.TaskCreate{
|
||||||
ContainerID: r.ContainerID,
|
ContainerID: r.ContainerID,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@ -175,7 +175,7 @@ func (s *Service) Start(ctx context.Context, r *api.StartTaskRequest) (*google_p
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := s.emit(ctx, "/tasks/start", event.TaskStart{
|
if err := s.emit(ctx, "/tasks/start", &eventsapi.TaskStart{
|
||||||
ContainerID: r.ContainerID,
|
ContainerID: r.ContainerID,
|
||||||
}); err != nil {
|
}); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@ -197,7 +197,7 @@ func (s *Service) Delete(ctx context.Context, r *api.DeleteTaskRequest) (*api.De
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if err := s.emit(ctx, "/tasks/delete", event.TaskDelete{
|
if err := s.emit(ctx, "/tasks/delete", &eventsapi.TaskDelete{
|
||||||
ContainerID: r.ContainerID,
|
ContainerID: r.ContainerID,
|
||||||
Pid: exit.Pid,
|
Pid: exit.Pid,
|
||||||
ExitStatus: exit.Status,
|
ExitStatus: exit.Status,
|
||||||
|
18
task.go
18
task.go
@ -13,11 +13,10 @@ import (
|
|||||||
"github.com/containerd/containerd/api/services/containers/v1"
|
"github.com/containerd/containerd/api/services/containers/v1"
|
||||||
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
eventsapi "github.com/containerd/containerd/api/services/events/v1"
|
||||||
"github.com/containerd/containerd/api/services/tasks/v1"
|
"github.com/containerd/containerd/api/services/tasks/v1"
|
||||||
"github.com/containerd/containerd/api/types/event"
|
|
||||||
tasktypes "github.com/containerd/containerd/api/types/task"
|
tasktypes "github.com/containerd/containerd/api/types/task"
|
||||||
"github.com/containerd/containerd/content"
|
"github.com/containerd/containerd/content"
|
||||||
|
"github.com/containerd/containerd/events"
|
||||||
"github.com/containerd/containerd/rootfs"
|
"github.com/containerd/containerd/rootfs"
|
||||||
"github.com/gogo/protobuf/proto"
|
|
||||||
"github.com/opencontainers/image-spec/specs-go/v1"
|
"github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
specs "github.com/opencontainers/runtime-spec/specs-go"
|
specs "github.com/opencontainers/runtime-spec/specs-go"
|
||||||
)
|
)
|
||||||
@ -143,24 +142,27 @@ func (t *task) Status(ctx context.Context) (TaskStatus, error) {
|
|||||||
// Wait is a blocking call that will wait for the task to exit and return the exit status
|
// Wait is a blocking call that will wait for the task to exit and return the exit status
|
||||||
func (t *task) Wait(ctx context.Context) (uint32, error) {
|
func (t *task) Wait(ctx context.Context) (uint32, error) {
|
||||||
// TODO (ehazlett): add filtering for specific event
|
// TODO (ehazlett): add filtering for specific event
|
||||||
events, err := t.client.EventService().Stream(ctx, &eventsapi.StreamEventsRequest{})
|
eventstream, err := t.client.EventService().Stream(ctx, &eventsapi.StreamEventsRequest{})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return UnknownExitStatus, err
|
return UnknownExitStatus, err
|
||||||
}
|
}
|
||||||
<-t.pidSync
|
<-t.pidSync
|
||||||
|
evloop:
|
||||||
for {
|
for {
|
||||||
evt, err := events.Recv()
|
evt, err := eventstream.Recv()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return UnknownExitStatus, err
|
return UnknownExitStatus, err
|
||||||
}
|
}
|
||||||
if evt.Event.TypeUrl == "types.containerd.io/containerd.v1.types.event.RuntimeEvent" {
|
|
||||||
e := &event.RuntimeEvent{}
|
switch {
|
||||||
if err := proto.Unmarshal(evt.Event.Value, e); err != nil {
|
case events.Is(evt.Event, &eventsapi.RuntimeEvent{}):
|
||||||
|
var e eventsapi.RuntimeEvent
|
||||||
|
if err := events.UnmarshalEvent(evt.Event, &e); err != nil {
|
||||||
return UnknownExitStatus, err
|
return UnknownExitStatus, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if e.Type != tasktypes.Event_EXIT {
|
if e.Type != tasktypes.Event_EXIT {
|
||||||
continue
|
continue evloop
|
||||||
}
|
}
|
||||||
|
|
||||||
if e.ID == t.containerID && e.Pid == t.pid {
|
if e.ID == t.containerID && e.Pid == t.pid {
|
||||||
|
Loading…
Reference in New Issue
Block a user