From de693264a88b235b54b22e4fcc9ce07c975d63e7 Mon Sep 17 00:00:00 2001 From: Kohei Tokunaga Date: Fri, 30 Jun 2023 19:21:08 +0900 Subject: [PATCH] Add BuildOptions.Debug for allowing lazy evaluation of ResultHandler This commit adds BuildOptions.Debug that allows skipping the evaluation of the ResultHandler. The ResultHandler is created without evaluated, so calling Build API with this flag always returns an error with the reference ID of that (errored) ResultHandler. Note that this state of ResultHandler doesn't contain result nor error so any operation on that ResultHandler will result in an error. Following commit will allow user to do further operations (e.g. evaluation of a bulid) using the buildkit client held by that ResultHandler. Signed-off-by: Kohei Tokunaga --- build/build.go | 12 +- build/result.go | 29 +++- controller/build/build.go | 12 +- controller/pb/controller.pb.go | 247 +++++++++++++++++---------------- controller/pb/controller.proto | 2 + 5 files changed, 168 insertions(+), 134 deletions(-) diff --git a/build/build.go b/build/build.go index 44b3b55e..35af1e4e 100644 --- a/build/build.go +++ b/build/build.go @@ -673,10 +673,10 @@ func toSolveOpt(ctx context.Context, node builder.Node, multiDriver bool, opt Op } func Build(ctx context.Context, nodes []builder.Node, opt map[string]Options, docker *dockerutil.Client, configDir string, w progress.Writer) (resp map[string]*client.SolveResponse, err error) { - return BuildWithResultHandler(ctx, nodes, opt, docker, configDir, w, nil) + return BuildWithResultHandler(ctx, nodes, opt, docker, configDir, w, nil, false) } -func BuildWithResultHandler(ctx context.Context, nodes []builder.Node, opt map[string]Options, docker *dockerutil.Client, configDir string, w progress.Writer, resultHandleFunc func(driverIndex int, rCtx *ResultHandle)) (resp map[string]*client.SolveResponse, err error) { +func BuildWithResultHandler(ctx context.Context, nodes []builder.Node, opt map[string]Options, docker *dockerutil.Client, configDir string, w progress.Writer, resultHandleFunc func(driverIndex int, rCtx *ResultHandle) error, noEval bool) (resp map[string]*client.SolveResponse, err error) { if len(nodes) == 0 { return nil, errors.Errorf("driver required for build") } @@ -943,8 +943,12 @@ func BuildWithResultHandler(ctx context.Context, nodes []builder.Node, opt map[s var rr *client.SolveResponse if resultHandleFunc != nil { var resultHandle *ResultHandle - resultHandle, rr, err = NewResultHandle(ctx, cc, so, "buildx", buildFunc, ch) - resultHandleFunc(dp.driverIndex, resultHandle) + resultHandle, rr, err = NewResultHandle(ctx, cc, so, "buildx", buildFunc, ch, noEval) + if err == nil { + if err := resultHandleFunc(dp.driverIndex, resultHandle); err != nil { + return err + } + } } else { rr, err = c.Build(ctx, so, "buildx", buildFunc, ch) } diff --git a/build/result.go b/build/result.go index 91ba9efa..3cf531de 100644 --- a/build/result.go +++ b/build/result.go @@ -28,7 +28,7 @@ import ( // failures and successes. // // If the returned ResultHandle is not nil, the caller must call Done() on it. -func NewResultHandle(ctx context.Context, cc *client.Client, opt client.SolveOpt, product string, buildFunc gateway.BuildFunc, ch chan *client.SolveStatus) (*ResultHandle, *client.SolveResponse, error) { +func NewResultHandle(ctx context.Context, cc *client.Client, opt client.SolveOpt, product string, buildFunc gateway.BuildFunc, ch chan *client.SolveStatus, noEval bool) (*ResultHandle, *client.SolveResponse, error) { // Create a new context to wrap the original, and cancel it when the // caller-provided context is cancelled. // @@ -91,13 +91,28 @@ func NewResultHandle(ctx context.Context, cc *client.Client, opt client.SolveOpt res, err = buildFunc(ctx, c) if res != nil && err == nil { - // Force evaluation of the build result (otherwise, we likely - // won't get a solve error) - def, err2 := getDefinition(ctx, res) - if err2 != nil { - return nil, err2 + if noEval { + respHandle = &ResultHandle{ + done: make(chan struct{}), + gwClient: c, + gwCtx: ctx, + } + close(done) + + // Block until the caller closes the ResultHandle. + select { + case <-respHandle.done: + case <-ctx.Done(): + } + } else { + // Force evaluation of the build result (otherwise, we likely + // won't get a solve error) + def, err2 := getDefinition(ctx, res) + if err2 != nil { + return nil, err2 + } + res, err = evalDefinition(ctx, c, def) } - res, err = evalDefinition(ctx, c, def) } if err != nil { diff --git a/controller/build/build.go b/controller/build/build.go index 64069d78..5505fdca 100644 --- a/controller/build/build.go +++ b/controller/build/build.go @@ -173,7 +173,7 @@ func RunBuild(ctx context.Context, dockerCli command.Cli, in controllerapi.Build return nil, nil, err } - resp, res, err := buildTargets(ctx, dockerCli, b.NodeGroup, nodes, map[string]build.Options{defaultTargetName: opts}, progress, generateResult) + resp, res, err := buildTargets(ctx, dockerCli, b.NodeGroup, nodes, map[string]build.Options{defaultTargetName: opts}, progress, generateResult, in.Debug) err = wrapBuildError(err, false) if err != nil { // NOTE: buildTargets can return *build.ResultHandle even on error. @@ -187,20 +187,24 @@ func RunBuild(ctx context.Context, dockerCli command.Cli, in controllerapi.Build // NOTE: When an error happens during the build and this function acquires the debuggable *build.ResultHandle, // this function returns it in addition to the error (i.e. it does "return nil, res, err"). The caller can // inspect the result and debug the cause of that error. -func buildTargets(ctx context.Context, dockerCli command.Cli, ng *store.NodeGroup, nodes []builder.Node, opts map[string]build.Options, progress progress.Writer, generateResult bool) (*client.SolveResponse, *build.ResultHandle, error) { +func buildTargets(ctx context.Context, dockerCli command.Cli, ng *store.NodeGroup, nodes []builder.Node, opts map[string]build.Options, progress progress.Writer, generateResult, debug bool) (*client.SolveResponse, *build.ResultHandle, error) { var res *build.ResultHandle var resp map[string]*client.SolveResponse var err error if generateResult { var mu sync.Mutex var idx int - resp, err = build.BuildWithResultHandler(ctx, nodes, opts, dockerutil.NewClient(dockerCli), confutil.ConfigDir(dockerCli), progress, func(driverIndex int, gotRes *build.ResultHandle) { + resp, err = build.BuildWithResultHandler(ctx, nodes, opts, dockerutil.NewClient(dockerCli), confutil.ConfigDir(dockerCli), progress, func(driverIndex int, gotRes *build.ResultHandle) error { mu.Lock() defer mu.Unlock() if res == nil || driverIndex < idx { idx, res = driverIndex, gotRes } - }) + if debug { + return errors.Errorf("debug mode") + } + return nil + }, debug) } else { resp, err = build.Build(ctx, nodes, opts, dockerutil.NewClient(dockerCli), confutil.ConfigDir(dockerCli), progress) } diff --git a/controller/pb/controller.pb.go b/controller/pb/controller.pb.go index 03194937..da8df559 100644 --- a/controller/pb/controller.pb.go +++ b/controller/pb/controller.pb.go @@ -299,6 +299,7 @@ type BuildOptions struct { ExportPush bool `protobuf:"varint,26,opt,name=ExportPush,proto3" json:"ExportPush,omitempty"` ExportLoad bool `protobuf:"varint,27,opt,name=ExportLoad,proto3" json:"ExportLoad,omitempty"` SourcePolicy *pb.Policy `protobuf:"bytes,28,opt,name=SourcePolicy,proto3" json:"SourcePolicy,omitempty"` + Debug bool `protobuf:"varint,29,opt,name=Debug,proto3" json:"Debug,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -524,6 +525,13 @@ func (m *BuildOptions) GetSourcePolicy() *pb.Policy { return nil } +func (m *BuildOptions) GetDebug() bool { + if m != nil { + return m.Debug + } + return false +} + type ExportEntry struct { Type string `protobuf:"bytes,1,opt,name=Type,proto3" json:"Type,omitempty"` Attrs map[string]string `protobuf:"bytes,2,rep,name=Attrs,proto3" json:"Attrs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` @@ -2046,125 +2054,126 @@ func init() { func init() { proto.RegisterFile("controller.proto", fileDescriptor_ed7f10298fa1d90f) } var fileDescriptor_ed7f10298fa1d90f = []byte{ - // 1881 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0x5f, 0x6f, 0xdb, 0xc8, - 0x11, 0x2f, 0x25, 0x59, 0x7f, 0x46, 0x96, 0xe3, 0x6c, 0x9d, 0x74, 0xc3, 0xa4, 0x17, 0x87, 0x49, - 0xae, 0x42, 0x53, 0x48, 0x77, 0xbe, 0xa6, 0xbe, 0x5c, 0xee, 0x80, 0xda, 0xb2, 0x05, 0xfb, 0x90, - 0xd8, 0xc6, 0xca, 0xc9, 0xa1, 0x2d, 0xd0, 0x80, 0x92, 0xd6, 0x32, 0x21, 0x8a, 0xab, 0x72, 0x57, - 0xb6, 0xd5, 0xa7, 0xbe, 0xf4, 0xad, 0xe8, 0xf7, 0x28, 0xfa, 0x11, 0xfa, 0xd2, 0x7e, 0xa1, 0xa2, - 0x1f, 0xa1, 0xd8, 0x3f, 0xa4, 0x48, 0x4b, 0x94, 0xed, 0xf6, 0x49, 0x3b, 0xc3, 0xdf, 0x6f, 0x76, - 0x67, 0x38, 0x3b, 0x33, 0x14, 0xac, 0xf7, 0x58, 0x20, 0x42, 0xe6, 0xfb, 0x34, 0x6c, 0x8c, 0x43, - 0x26, 0x18, 0xda, 0xe8, 0x4e, 0x3c, 0xbf, 0x7f, 0xd5, 0x48, 0x3c, 0xb8, 0xf8, 0xd2, 0x7e, 0x3b, - 0xf0, 0xc4, 0xf9, 0xa4, 0xdb, 0xe8, 0xb1, 0x51, 0x73, 0xc4, 0xba, 0xd3, 0xa6, 0x42, 0x0d, 0x3d, - 0xd1, 0x74, 0xc7, 0x5e, 0x93, 0xd3, 0xf0, 0xc2, 0xeb, 0x51, 0xde, 0x34, 0xa4, 0xe8, 0x57, 0x9b, - 0xb4, 0x5f, 0x67, 0x92, 0x39, 0x9b, 0x84, 0x3d, 0x3a, 0x66, 0xbe, 0xd7, 0x9b, 0x36, 0xc7, 0xdd, - 0xa6, 0x5e, 0x69, 0x9a, 0x53, 0x87, 0x8d, 0x77, 0x1e, 0x17, 0x27, 0x21, 0xeb, 0x51, 0xce, 0x29, - 0x27, 0xf4, 0x0f, 0x13, 0xca, 0x05, 0x5a, 0x87, 0x3c, 0xa1, 0x67, 0xd8, 0xda, 0xb4, 0xea, 0x15, - 0x22, 0x97, 0xce, 0x09, 0x3c, 0xb8, 0x86, 0xe4, 0x63, 0x16, 0x70, 0x8a, 0xb6, 0x61, 0xe5, 0x30, - 0x38, 0x63, 0x1c, 0x5b, 0x9b, 0xf9, 0x7a, 0x75, 0xeb, 0x59, 0x63, 0x91, 0x73, 0x0d, 0xc3, 0x93, - 0x48, 0xa2, 0xf1, 0x0e, 0x87, 0x6a, 0x42, 0x8b, 0x9e, 0x40, 0x25, 0x12, 0xf7, 0xcc, 0xc6, 0x33, - 0x05, 0x6a, 0xc3, 0xea, 0x61, 0x70, 0xc1, 0x86, 0xb4, 0xc5, 0x82, 0x33, 0x6f, 0x80, 0x73, 0x9b, - 0x56, 0xbd, 0xba, 0xe5, 0x2c, 0xde, 0x2c, 0x89, 0x24, 0x29, 0x9e, 0xf3, 0x3d, 0xe0, 0x3d, 0x8f, - 0xf7, 0x58, 0x10, 0xd0, 0x5e, 0xe4, 0x4c, 0xa6, 0xd3, 0xe9, 0x33, 0xe5, 0xae, 0x9d, 0xc9, 0x79, - 0x0c, 0x8f, 0x16, 0xd8, 0xd2, 0x61, 0x71, 0x7e, 0x0f, 0xab, 0xbb, 0xf2, 0x6c, 0xd9, 0xc6, 0xbf, - 0x85, 0xd2, 0xf1, 0x58, 0x78, 0x2c, 0xe0, 0xcb, 0xbd, 0x51, 0x66, 0x0c, 0x92, 0x44, 0x14, 0xe7, - 0x9f, 0x55, 0xb3, 0x81, 0x51, 0xa0, 0x4d, 0xa8, 0xb6, 0x58, 0x20, 0xe8, 0x95, 0x38, 0x71, 0xc5, - 0xb9, 0xd9, 0x28, 0xa9, 0x42, 0x9f, 0xc3, 0xda, 0x1e, 0xeb, 0x0d, 0x69, 0x78, 0xe6, 0xf9, 0xf4, - 0xc8, 0x1d, 0x51, 0xe3, 0xd2, 0x35, 0x2d, 0xfa, 0x4e, 0x7a, 0xed, 0x05, 0xa2, 0x3d, 0x09, 0x7a, - 0x38, 0xaf, 0x8e, 0xf6, 0x34, 0xeb, 0xad, 0x1a, 0x18, 0x99, 0x31, 0xd0, 0xef, 0xa0, 0x26, 0xcd, - 0xf4, 0xcd, 0xd6, 0x1c, 0x17, 0x54, 0x62, 0xbc, 0xbe, 0xd9, 0xbb, 0x46, 0x8a, 0xb7, 0x1f, 0x88, - 0x70, 0x4a, 0xd2, 0xb6, 0xd0, 0x06, 0xac, 0xec, 0xf8, 0x3e, 0xbb, 0xc4, 0x2b, 0x9b, 0xf9, 0x7a, - 0x85, 0x68, 0x01, 0xfd, 0x0a, 0x4a, 0x3b, 0x42, 0x50, 0x2e, 0x38, 0x2e, 0xaa, 0xcd, 0x9e, 0x2c, - 0xde, 0x4c, 0x83, 0x48, 0x04, 0x46, 0xc7, 0x50, 0x51, 0xfb, 0xef, 0x84, 0x03, 0x8e, 0x4b, 0x8a, - 0xf9, 0xe5, 0x2d, 0x8e, 0x19, 0x73, 0xf4, 0x11, 0x67, 0x36, 0xd0, 0x3e, 0x54, 0x5a, 0x6e, 0xef, - 0x9c, 0xb6, 0x43, 0x36, 0xc2, 0x65, 0x65, 0xf0, 0x67, 0x8b, 0x0d, 0x2a, 0x98, 0x31, 0x68, 0xcc, - 0xc4, 0x4c, 0xb4, 0x03, 0x25, 0x25, 0x9c, 0x32, 0x5c, 0xb9, 0x9b, 0x91, 0x88, 0x87, 0x1c, 0x58, - 0x6d, 0x0d, 0x42, 0x36, 0x19, 0x9f, 0xb8, 0x21, 0x0d, 0x04, 0x06, 0xf5, 0xaa, 0x53, 0x3a, 0xf4, - 0x16, 0x4a, 0xfb, 0x57, 0x63, 0x16, 0x0a, 0x8e, 0xab, 0xcb, 0x2e, 0xaf, 0x06, 0x99, 0x0d, 0x0c, - 0x03, 0x7d, 0x06, 0xb0, 0x7f, 0x25, 0x42, 0xf7, 0x80, 0xc9, 0xb0, 0xaf, 0xaa, 0xd7, 0x91, 0xd0, - 0xa0, 0x36, 0x14, 0xdf, 0xb9, 0x5d, 0xea, 0x73, 0x5c, 0x53, 0xb6, 0x1b, 0xb7, 0x08, 0xac, 0x26, - 0xe8, 0x8d, 0x0c, 0x5b, 0xe6, 0xf5, 0x11, 0x15, 0x97, 0x2c, 0x1c, 0xbe, 0x67, 0x7d, 0x8a, 0xd7, - 0x74, 0x5e, 0x27, 0x54, 0xe8, 0x05, 0xd4, 0x8e, 0x98, 0x0e, 0x9e, 0xe7, 0x0b, 0x1a, 0xe2, 0x7b, - 0xea, 0x30, 0x69, 0xa5, 0xba, 0xcb, 0xbe, 0x2b, 0xce, 0x58, 0x38, 0xe2, 0x78, 0x5d, 0x21, 0x66, - 0x0a, 0x99, 0x41, 0x1d, 0xda, 0x0b, 0xa9, 0xe0, 0xf8, 0xfe, 0xb2, 0x0c, 0xd2, 0x20, 0x12, 0x81, - 0x11, 0x86, 0x52, 0xe7, 0x7c, 0xd4, 0xf1, 0xfe, 0x48, 0x31, 0xda, 0xb4, 0xea, 0x79, 0x12, 0x89, - 0xe8, 0x15, 0xe4, 0x3b, 0x9d, 0x03, 0xfc, 0x63, 0x65, 0xed, 0x51, 0x86, 0xb5, 0xce, 0x01, 0x91, - 0x28, 0x84, 0xa0, 0x70, 0xea, 0x0e, 0x38, 0xde, 0x50, 0xe7, 0x52, 0x6b, 0xf4, 0x10, 0x8a, 0xa7, - 0x6e, 0x38, 0xa0, 0x02, 0x3f, 0x50, 0x3e, 0x1b, 0x09, 0xbd, 0x81, 0xd2, 0x07, 0xdf, 0x1b, 0x79, - 0x82, 0xe3, 0x87, 0xcb, 0x2e, 0xa7, 0x06, 0x1d, 0x8f, 0x05, 0x89, 0xf0, 0xf2, 0xb4, 0x2a, 0xde, - 0x34, 0xc4, 0x3f, 0x51, 0x36, 0x23, 0x51, 0x3e, 0x31, 0xe1, 0xc2, 0x78, 0xd3, 0xaa, 0x97, 0x49, - 0x24, 0xca, 0xa3, 0x9d, 0x4c, 0x7c, 0x1f, 0x3f, 0x52, 0x6a, 0xb5, 0xd6, 0xef, 0x5e, 0xa6, 0xc1, - 0xc9, 0x84, 0x9f, 0x63, 0x5b, 0x3d, 0x49, 0x68, 0x66, 0xcf, 0xdf, 0x31, 0xb7, 0x8f, 0x1f, 0x27, - 0x9f, 0x4b, 0x0d, 0x3a, 0x84, 0xd5, 0x8e, 0x6a, 0x4b, 0x27, 0xaa, 0x19, 0xe1, 0x27, 0xca, 0x8f, - 0x97, 0x0d, 0xd9, 0xb9, 0x1a, 0x51, 0xe7, 0x92, 0x3e, 0x24, 0x9b, 0x57, 0x43, 0x83, 0x49, 0x8a, - 0x6a, 0xff, 0x1a, 0xd0, 0x7c, 0xd5, 0x90, 0xd5, 0x76, 0x48, 0xa7, 0x51, 0xb5, 0x1d, 0xd2, 0xa9, - 0x2c, 0x1c, 0x17, 0xae, 0x3f, 0x89, 0x6a, 0x9e, 0x16, 0xbe, 0xc9, 0x7d, 0x6d, 0xd9, 0xdf, 0xc2, - 0x5a, 0xfa, 0x42, 0xdf, 0x89, 0xfd, 0x06, 0xaa, 0x89, 0xac, 0xbd, 0x0b, 0xd5, 0xf9, 0x97, 0x05, - 0xd5, 0xc4, 0xd5, 0x52, 0x49, 0x30, 0x1d, 0x53, 0x43, 0x56, 0x6b, 0xb4, 0x0b, 0x2b, 0x3b, 0x42, - 0x84, 0xb2, 0x45, 0xc8, 0x3c, 0xfa, 0xc5, 0x8d, 0x17, 0xb4, 0xa1, 0xe0, 0xfa, 0x0a, 0x69, 0xaa, - 0xbc, 0x41, 0x7b, 0x94, 0x0b, 0x2f, 0x70, 0xe5, 0x2d, 0x53, 0x15, 0xbd, 0x42, 0x92, 0x2a, 0xfb, - 0x6b, 0x80, 0x19, 0xed, 0x4e, 0x3e, 0xfc, 0xdd, 0x82, 0xfb, 0x73, 0x55, 0x68, 0xa1, 0x27, 0x07, - 0x69, 0x4f, 0xb6, 0x6e, 0x59, 0xd1, 0xe6, 0xfd, 0xf9, 0x3f, 0x4e, 0x7b, 0x04, 0x45, 0x5d, 0xfa, - 0x17, 0x9e, 0xd0, 0x86, 0xf2, 0x9e, 0xc7, 0xdd, 0xae, 0x4f, 0xfb, 0x8a, 0x5a, 0x26, 0xb1, 0xac, - 0xfa, 0x8e, 0x3a, 0xbd, 0x8e, 0x9e, 0x16, 0x1c, 0x7d, 0xc7, 0xd1, 0x1a, 0xe4, 0xe2, 0x99, 0x25, - 0x77, 0xb8, 0x27, 0xc1, 0xb2, 0xe1, 0x6a, 0x57, 0x2b, 0x44, 0x0b, 0x4e, 0x1b, 0x8a, 0xba, 0x6a, - 0xcc, 0xe1, 0x6d, 0x28, 0xb7, 0x3d, 0x9f, 0xaa, 0xbe, 0xad, 0xcf, 0x1c, 0xcb, 0xd2, 0xbd, 0xfd, - 0xe0, 0xc2, 0x6c, 0x2b, 0x97, 0xce, 0x76, 0xa2, 0x3d, 0x4b, 0x3f, 0x54, 0x27, 0x37, 0x7e, 0xa8, - 0xfe, 0xfd, 0x10, 0x8a, 0x6d, 0x16, 0x8e, 0x5c, 0x61, 0x8c, 0x19, 0xc9, 0x71, 0x60, 0xed, 0x30, - 0xe0, 0x63, 0xda, 0x13, 0xd9, 0x63, 0xde, 0x31, 0xdc, 0x8b, 0x31, 0x66, 0xc0, 0x4b, 0xcc, 0x29, - 0xd6, 0xdd, 0xe7, 0x94, 0xbf, 0x59, 0x50, 0x89, 0x2b, 0x11, 0x6a, 0x41, 0x51, 0xbd, 0x8d, 0x68, - 0x5a, 0x7c, 0x75, 0x43, 0xe9, 0x6a, 0x7c, 0x54, 0x68, 0xd3, 0x11, 0x34, 0xd5, 0xfe, 0x01, 0xaa, - 0x09, 0xf5, 0x82, 0x04, 0xd8, 0x4a, 0x26, 0x40, 0x66, 0x29, 0xd7, 0x9b, 0x24, 0xd3, 0x63, 0x0f, - 0x8a, 0x5a, 0xb9, 0x30, 0xac, 0x08, 0x0a, 0x07, 0x6e, 0xa8, 0x53, 0x23, 0x4f, 0xd4, 0x5a, 0xea, - 0x3a, 0xec, 0x4c, 0xa8, 0xd7, 0x93, 0x27, 0x6a, 0xed, 0xfc, 0xc3, 0x82, 0x9a, 0x19, 0xfd, 0x4c, - 0x04, 0x29, 0xac, 0xeb, 0x1b, 0x4a, 0xc3, 0x48, 0x67, 0xfc, 0x7f, 0xb3, 0x24, 0x94, 0x11, 0xb4, - 0x71, 0x9d, 0xab, 0xa3, 0x31, 0x67, 0xd2, 0x6e, 0xc1, 0x83, 0x85, 0xd0, 0x3b, 0x5d, 0x91, 0x97, - 0x70, 0x7f, 0x36, 0xd4, 0x66, 0xe7, 0xc9, 0x06, 0xa0, 0x24, 0xcc, 0x0c, 0xbd, 0x4f, 0xa1, 0x2a, - 0x3f, 0x12, 0xb2, 0x69, 0x0e, 0xac, 0x6a, 0x80, 0x89, 0x0c, 0x82, 0xc2, 0x90, 0x4e, 0x75, 0x36, - 0x54, 0x88, 0x5a, 0x3b, 0x7f, 0xb5, 0xe4, 0xac, 0x3f, 0x9e, 0x88, 0xf7, 0x94, 0x73, 0x77, 0x20, - 0x13, 0xb0, 0x70, 0x18, 0x78, 0xc2, 0x64, 0xdf, 0xe7, 0x59, 0x33, 0xff, 0x78, 0x22, 0x24, 0xcc, - 0xb0, 0x0e, 0x7e, 0x44, 0x14, 0x0b, 0x6d, 0x43, 0x61, 0xcf, 0x15, 0xae, 0xc9, 0x85, 0x8c, 0x09, - 0x47, 0x22, 0x12, 0x44, 0x29, 0xee, 0x96, 0xe4, 0x87, 0xcd, 0x78, 0x22, 0x9c, 0x17, 0xb0, 0x7e, - 0xdd, 0xfa, 0x02, 0xd7, 0xbe, 0x82, 0x6a, 0xc2, 0x8a, 0xba, 0xb7, 0xc7, 0x6d, 0x05, 0x28, 0x13, - 0xb9, 0x94, 0xbe, 0xc6, 0x07, 0x59, 0xd5, 0x7b, 0x38, 0xf7, 0xa0, 0xa6, 0x4c, 0xc7, 0x11, 0xfc, - 0x53, 0x0e, 0x4a, 0x91, 0x89, 0xed, 0x94, 0xdf, 0xcf, 0xb2, 0xfc, 0x9e, 0x77, 0xf9, 0x35, 0x14, - 0x64, 0xfd, 0x30, 0x2e, 0x67, 0x8c, 0x07, 0xed, 0x7e, 0x82, 0x26, 0xe1, 0xe8, 0x3b, 0x28, 0x12, - 0xca, 0xe5, 0x28, 0xa3, 0x87, 0xfe, 0xe7, 0x8b, 0x89, 0x1a, 0x33, 0x23, 0x1b, 0x92, 0xa4, 0x77, - 0xbc, 0x41, 0xe0, 0xfa, 0xb8, 0xb0, 0x8c, 0xae, 0x31, 0x09, 0xba, 0x56, 0xcc, 0xc2, 0xfd, 0x67, - 0x0b, 0xaa, 0x4b, 0x43, 0xbd, 0xfc, 0xb3, 0x6c, 0xee, 0x53, 0x31, 0xff, 0x3f, 0x7e, 0x2a, 0xfe, - 0xdb, 0x4a, 0x1b, 0x52, 0x53, 0x8d, 0xbc, 0x4f, 0x63, 0xe6, 0x05, 0xc2, 0xa4, 0x6c, 0x42, 0x23, - 0x0f, 0xda, 0x1a, 0xf5, 0x4d, 0xd1, 0x97, 0xcb, 0x59, 0xf1, 0xce, 0x9b, 0xe2, 0x2d, 0x93, 0xe0, - 0x03, 0xa7, 0xa1, 0x0a, 0x51, 0x85, 0xa8, 0xb5, 0xac, 0xd7, 0x47, 0x4c, 0x69, 0x57, 0x54, 0xb6, - 0x18, 0x49, 0xd9, 0xbb, 0xec, 0xe3, 0xa2, 0x76, 0xbc, 0x75, 0xa9, 0xba, 0xd0, 0x11, 0x93, 0xba, - 0x92, 0x02, 0x6a, 0x41, 0xe2, 0x4e, 0xc5, 0x14, 0x97, 0x75, 0xaa, 0x9d, 0x8a, 0xa9, 0x6c, 0x28, - 0x84, 0xf9, 0x7e, 0xd7, 0xed, 0x0d, 0x71, 0x45, 0x77, 0xb2, 0x48, 0x96, 0x93, 0x9e, 0x8c, 0xae, - 0xe7, 0xfa, 0xea, 0x9b, 0xa0, 0x4c, 0x22, 0xd1, 0xd9, 0x81, 0x4a, 0x9c, 0x14, 0xb2, 0x47, 0xb5, - 0xfb, 0x2a, 0xe8, 0x35, 0x92, 0x6b, 0xf7, 0xa3, 0x7c, 0xce, 0xcd, 0xe7, 0x73, 0x3e, 0x91, 0xcf, - 0xdb, 0x50, 0x4b, 0xa5, 0x87, 0x04, 0x11, 0x76, 0xc9, 0x8d, 0x21, 0xb5, 0x96, 0xba, 0x16, 0xf3, - 0xf5, 0x57, 0x6f, 0x8d, 0xa8, 0xb5, 0xf3, 0x1c, 0x6a, 0xa9, 0xc4, 0x58, 0x54, 0x81, 0x9d, 0x67, - 0x50, 0xeb, 0x08, 0x57, 0x4c, 0x96, 0xfc, 0x4d, 0xf1, 0x1f, 0x0b, 0xd6, 0x22, 0x8c, 0xa9, 0x31, - 0xbf, 0x84, 0xf2, 0x05, 0x0d, 0x05, 0xbd, 0x8a, 0xbb, 0x0e, 0x9e, 0x1f, 0x34, 0x3f, 0x2a, 0x04, - 0x89, 0x91, 0xe8, 0x1b, 0x28, 0x73, 0x65, 0x87, 0x46, 0x13, 0xcb, 0x67, 0x59, 0x2c, 0xb3, 0x5f, - 0x8c, 0x47, 0x4d, 0x28, 0xf8, 0x6c, 0xc0, 0xd5, 0x7b, 0xaf, 0x6e, 0x3d, 0xce, 0xe2, 0xbd, 0x63, - 0x03, 0xa2, 0x80, 0xe8, 0x2d, 0x94, 0x2f, 0xdd, 0x30, 0xf0, 0x82, 0x41, 0xf4, 0xb5, 0xfc, 0x34, - 0x8b, 0xf4, 0x83, 0xc6, 0x91, 0x98, 0xe0, 0xd4, 0xe4, 0x75, 0x39, 0x63, 0x26, 0x26, 0xce, 0x6f, - 0x64, 0xd6, 0x4a, 0xd1, 0xb8, 0x7f, 0x08, 0x35, 0x9d, 0xf9, 0x1f, 0x69, 0xc8, 0xe5, 0xfc, 0x67, - 0x2d, 0xbb, 0x9d, 0xbb, 0x49, 0x28, 0x49, 0x33, 0x9d, 0x4f, 0xa6, 0xb1, 0x45, 0x0a, 0x99, 0x4b, - 0x63, 0xb7, 0x37, 0x74, 0x07, 0xd1, 0x7b, 0x8a, 0x44, 0xf9, 0xe4, 0xc2, 0xec, 0xa7, 0x2f, 0x68, - 0x24, 0xca, 0xdc, 0x0c, 0xe9, 0x85, 0xc7, 0x67, 0xa3, 0x68, 0x2c, 0x6f, 0xfd, 0xa5, 0x04, 0xd0, - 0x8a, 0xcf, 0x83, 0x4e, 0x60, 0x45, 0xed, 0x87, 0x9c, 0xa5, 0x6d, 0x52, 0xf9, 0x6d, 0x3f, 0xbf, - 0x45, 0x2b, 0x45, 0x1f, 0x65, 0xf2, 0xab, 0xf1, 0x06, 0xbd, 0xc8, 0x2a, 0x08, 0xc9, 0x09, 0xc9, - 0x7e, 0x79, 0x03, 0xca, 0xd8, 0xfd, 0x00, 0x45, 0x9d, 0x05, 0x28, 0xab, 0xea, 0x25, 0xf3, 0xd6, - 0x7e, 0xb1, 0x1c, 0xa4, 0x8d, 0x7e, 0x61, 0x21, 0x62, 0x6a, 0x22, 0x72, 0x96, 0x34, 0x3d, 0x73, - 0x63, 0xb2, 0x02, 0x90, 0xea, 0x2f, 0x75, 0x0b, 0x7d, 0x0f, 0x45, 0x5d, 0xd5, 0xd0, 0x4f, 0x17, - 0x13, 0x22, 0x7b, 0xcb, 0x1f, 0xd7, 0xad, 0x2f, 0x2c, 0xf4, 0x1e, 0x0a, 0xb2, 0x9d, 0xa3, 0x8c, - 0xde, 0x94, 0x98, 0x05, 0x6c, 0x67, 0x19, 0xc4, 0x44, 0xf1, 0x13, 0xc0, 0x6c, 0xa8, 0x40, 0x19, - 0xff, 0x79, 0xcc, 0x4d, 0x27, 0x76, 0xfd, 0x66, 0xa0, 0xd9, 0xe0, 0xbd, 0xec, 0xa8, 0x67, 0x0c, - 0x65, 0xf6, 0xd2, 0xf8, 0x1a, 0xd9, 0xce, 0x32, 0x88, 0x31, 0x77, 0x0e, 0xb5, 0xd4, 0x7f, 0xa2, - 0xe8, 0xe7, 0xd9, 0x4e, 0x5e, 0xff, 0x8b, 0xd5, 0x7e, 0x75, 0x2b, 0xac, 0xd9, 0x49, 0x24, 0xa7, - 0x32, 0xf3, 0x18, 0x35, 0x6e, 0xf2, 0x3b, 0xfd, 0xff, 0xa6, 0xdd, 0xbc, 0x35, 0x5e, 0xef, 0xba, - 0x5b, 0xf8, 0x6d, 0x6e, 0xdc, 0xed, 0x16, 0xd5, 0x5f, 0xc5, 0x5f, 0xfd, 0x37, 0x00, 0x00, 0xff, - 0xff, 0xc1, 0x4b, 0x2d, 0x65, 0xc8, 0x16, 0x00, 0x00, + // 1895 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0xef, 0x6e, 0x1b, 0xc7, + 0x11, 0xef, 0x89, 0x14, 0xff, 0x0c, 0x45, 0x59, 0xde, 0xca, 0xee, 0xfa, 0xec, 0xc4, 0xf2, 0xd9, + 0x4e, 0x89, 0xba, 0xa0, 0x12, 0xa5, 0xae, 0xe2, 0x38, 0x01, 0x2a, 0x51, 0x22, 0xa4, 0xc0, 0x96, + 0x84, 0xa5, 0xec, 0xa0, 0x2d, 0xd0, 0xe0, 0x48, 0xae, 0xa8, 0x83, 0x8e, 0xb7, 0xec, 0xed, 0x52, + 0x7f, 0xfa, 0xa9, 0x5f, 0xfa, 0xad, 0xe8, 0x7b, 0x14, 0x7d, 0x84, 0x7e, 0xea, 0x4b, 0xf4, 0x31, + 0x8a, 0x3e, 0x42, 0xb1, 0xb3, 0x7b, 0xe4, 0x51, 0xe4, 0x51, 0x52, 0xf3, 0x89, 0x3b, 0x73, 0xbf, + 0xdf, 0xec, 0xce, 0xdc, 0xec, 0xcc, 0x1c, 0x61, 0xa5, 0x23, 0x22, 0x15, 0x8b, 0x30, 0xe4, 0x71, + 0x7d, 0x10, 0x0b, 0x25, 0xc8, 0x6a, 0x7b, 0x18, 0x84, 0xdd, 0xcb, 0x7a, 0xea, 0xc1, 0xf9, 0x17, + 0xee, 0xdb, 0x5e, 0xa0, 0x4e, 0x87, 0xed, 0x7a, 0x47, 0xf4, 0xd7, 0xfb, 0xa2, 0x7d, 0xb5, 0x8e, + 0xa8, 0xb3, 0x40, 0xad, 0xfb, 0x83, 0x60, 0x5d, 0xf2, 0xf8, 0x3c, 0xe8, 0x70, 0xb9, 0x6e, 0x49, + 0xc9, 0xaf, 0x31, 0xe9, 0xbe, 0xce, 0x24, 0x4b, 0x31, 0x8c, 0x3b, 0x7c, 0x20, 0xc2, 0xa0, 0x73, + 0xb5, 0x3e, 0x68, 0xaf, 0x9b, 0x95, 0xa1, 0x79, 0x35, 0x58, 0x7d, 0x17, 0x48, 0x75, 0x14, 0x8b, + 0x0e, 0x97, 0x92, 0x4b, 0xc6, 0xff, 0x38, 0xe4, 0x52, 0x91, 0x15, 0xc8, 0x31, 0x7e, 0x42, 0x9d, + 0x35, 0xa7, 0x56, 0x66, 0x7a, 0xe9, 0x1d, 0xc1, 0x83, 0x6b, 0x48, 0x39, 0x10, 0x91, 0xe4, 0x64, + 0x13, 0x16, 0xf7, 0xa3, 0x13, 0x21, 0xa9, 0xb3, 0x96, 0xab, 0x55, 0x36, 0x9e, 0xd5, 0x67, 0x39, + 0x57, 0xb7, 0x3c, 0x8d, 0x64, 0x06, 0xef, 0x49, 0xa8, 0xa4, 0xb4, 0xe4, 0x09, 0x94, 0x13, 0x71, + 0xc7, 0x6e, 0x3c, 0x56, 0x90, 0x26, 0x2c, 0xed, 0x47, 0xe7, 0xe2, 0x8c, 0x37, 0x44, 0x74, 0x12, + 0xf4, 0xe8, 0xc2, 0x9a, 0x53, 0xab, 0x6c, 0x78, 0xb3, 0x37, 0x4b, 0x23, 0xd9, 0x04, 0xcf, 0xfb, + 0x0e, 0xe8, 0x4e, 0x20, 0x3b, 0x22, 0x8a, 0x78, 0x27, 0x71, 0x26, 0xd3, 0xe9, 0xc9, 0x33, 0x2d, + 0x5c, 0x3b, 0x93, 0xf7, 0x18, 0x1e, 0xcd, 0xb0, 0x65, 0xc2, 0xe2, 0xfd, 0x01, 0x96, 0xb6, 0xf5, + 0xd9, 0xb2, 0x8d, 0x7f, 0x03, 0xc5, 0xc3, 0x81, 0x0a, 0x44, 0x24, 0xe7, 0x7b, 0x83, 0x66, 0x2c, + 0x92, 0x25, 0x14, 0xef, 0xdf, 0x15, 0xbb, 0x81, 0x55, 0x90, 0x35, 0xa8, 0x34, 0x44, 0xa4, 0xf8, + 0xa5, 0x3a, 0xf2, 0xd5, 0xa9, 0xdd, 0x28, 0xad, 0x22, 0x9f, 0xc1, 0xf2, 0x8e, 0xe8, 0x9c, 0xf1, + 0xf8, 0x24, 0x08, 0xf9, 0x81, 0xdf, 0xe7, 0xd6, 0xa5, 0x6b, 0x5a, 0xf2, 0xad, 0xf6, 0x3a, 0x88, + 0x54, 0x73, 0x18, 0x75, 0x68, 0x0e, 0x8f, 0xf6, 0x34, 0xeb, 0xad, 0x5a, 0x18, 0x1b, 0x33, 0xc8, + 0xef, 0xa1, 0xaa, 0xcd, 0x74, 0xed, 0xd6, 0x92, 0xe6, 0x31, 0x31, 0x5e, 0xdf, 0xec, 0x5d, 0x7d, + 0x82, 0xb7, 0x1b, 0xa9, 0xf8, 0x8a, 0x4d, 0xda, 0x22, 0xab, 0xb0, 0xb8, 0x15, 0x86, 0xe2, 0x82, + 0x2e, 0xae, 0xe5, 0x6a, 0x65, 0x66, 0x04, 0xf2, 0x6b, 0x28, 0x6e, 0x29, 0xc5, 0xa5, 0x92, 0xb4, + 0x80, 0x9b, 0x3d, 0x99, 0xbd, 0x99, 0x01, 0xb1, 0x04, 0x4c, 0x0e, 0xa1, 0x8c, 0xfb, 0x6f, 0xc5, + 0x3d, 0x49, 0x8b, 0xc8, 0xfc, 0xe2, 0x16, 0xc7, 0x1c, 0x71, 0xcc, 0x11, 0xc7, 0x36, 0xc8, 0x2e, + 0x94, 0x1b, 0x7e, 0xe7, 0x94, 0x37, 0x63, 0xd1, 0xa7, 0x25, 0x34, 0xf8, 0xf3, 0xd9, 0x06, 0x11, + 0x66, 0x0d, 0x5a, 0x33, 0x23, 0x26, 0xd9, 0x82, 0x22, 0x0a, 0xc7, 0x82, 0x96, 0xef, 0x66, 0x24, + 0xe1, 0x11, 0x0f, 0x96, 0x1a, 0xbd, 0x58, 0x0c, 0x07, 0x47, 0x7e, 0xcc, 0x23, 0x45, 0x01, 0x5f, + 0xf5, 0x84, 0x8e, 0xbc, 0x85, 0xe2, 0xee, 0xe5, 0x40, 0xc4, 0x4a, 0xd2, 0xca, 0xbc, 0xcb, 0x6b, + 0x40, 0x76, 0x03, 0xcb, 0x20, 0x9f, 0x02, 0xec, 0x5e, 0xaa, 0xd8, 0xdf, 0x13, 0x3a, 0xec, 0x4b, + 0xf8, 0x3a, 0x52, 0x1a, 0xd2, 0x84, 0xc2, 0x3b, 0xbf, 0xcd, 0x43, 0x49, 0xab, 0x68, 0xbb, 0x7e, + 0x8b, 0xc0, 0x1a, 0x82, 0xd9, 0xc8, 0xb2, 0x75, 0x5e, 0x1f, 0x70, 0x75, 0x21, 0xe2, 0xb3, 0xf7, + 0xa2, 0xcb, 0xe9, 0xb2, 0xc9, 0xeb, 0x94, 0x8a, 0xbc, 0x80, 0xea, 0x81, 0x30, 0xc1, 0x0b, 0x42, + 0xc5, 0x63, 0x7a, 0x0f, 0x0f, 0x33, 0xa9, 0xc4, 0xbb, 0x1c, 0xfa, 0xea, 0x44, 0xc4, 0x7d, 0x49, + 0x57, 0x10, 0x31, 0x56, 0xe8, 0x0c, 0x6a, 0xf1, 0x4e, 0xcc, 0x95, 0xa4, 0xf7, 0xe7, 0x65, 0x90, + 0x01, 0xb1, 0x04, 0x4c, 0x28, 0x14, 0x5b, 0xa7, 0xfd, 0x56, 0xf0, 0x27, 0x4e, 0xc9, 0x9a, 0x53, + 0xcb, 0xb1, 0x44, 0x24, 0xaf, 0x20, 0xd7, 0x6a, 0xed, 0xd1, 0x9f, 0xa2, 0xb5, 0x47, 0x19, 0xd6, + 0x5a, 0x7b, 0x4c, 0xa3, 0x08, 0x81, 0xfc, 0xb1, 0xdf, 0x93, 0x74, 0x15, 0xcf, 0x85, 0x6b, 0xf2, + 0x10, 0x0a, 0xc7, 0x7e, 0xdc, 0xe3, 0x8a, 0x3e, 0x40, 0x9f, 0xad, 0x44, 0xde, 0x40, 0xf1, 0x43, + 0x18, 0xf4, 0x03, 0x25, 0xe9, 0xc3, 0x79, 0x97, 0xd3, 0x80, 0x0e, 0x07, 0x8a, 0x25, 0x78, 0x7d, + 0x5a, 0x8c, 0x37, 0x8f, 0xe9, 0xcf, 0xd0, 0x66, 0x22, 0xea, 0x27, 0x36, 0x5c, 0x94, 0xae, 0x39, + 0xb5, 0x12, 0x4b, 0x44, 0x7d, 0xb4, 0xa3, 0x61, 0x18, 0xd2, 0x47, 0xa8, 0xc6, 0xb5, 0x79, 0xf7, + 0x3a, 0x0d, 0x8e, 0x86, 0xf2, 0x94, 0xba, 0xf8, 0x24, 0xa5, 0x19, 0x3f, 0x7f, 0x27, 0xfc, 0x2e, + 0x7d, 0x9c, 0x7e, 0xae, 0x35, 0x64, 0x1f, 0x96, 0x5a, 0xd8, 0x96, 0x8e, 0xb0, 0x19, 0xd1, 0x27, + 0xe8, 0xc7, 0xcb, 0xba, 0xee, 0x5c, 0xf5, 0xa4, 0x73, 0x69, 0x1f, 0xd2, 0xcd, 0xab, 0x6e, 0xc0, + 0x6c, 0x82, 0xaa, 0x0b, 0xc2, 0x0e, 0x6f, 0x0f, 0x7b, 0xf4, 0x13, 0xdc, 0xc5, 0x08, 0xee, 0x6f, + 0x80, 0x4c, 0xd7, 0x12, 0x5d, 0x83, 0xcf, 0xf8, 0x55, 0x52, 0x83, 0xcf, 0x38, 0xb2, 0xcf, 0xfd, + 0x70, 0x98, 0x54, 0x42, 0x23, 0x7c, 0xbd, 0xf0, 0x95, 0xe3, 0x7e, 0x03, 0xcb, 0x93, 0xd7, 0xfc, + 0x4e, 0xec, 0x37, 0x50, 0x49, 0xe5, 0xf2, 0x5d, 0xa8, 0xde, 0xbf, 0x1c, 0xa8, 0xa4, 0x2e, 0x1c, + 0xa6, 0xc6, 0xd5, 0x80, 0x5b, 0x32, 0xae, 0xc9, 0x36, 0x2c, 0x6e, 0x29, 0x15, 0xeb, 0xc6, 0xa1, + 0xb3, 0xeb, 0x97, 0x37, 0x5e, 0xdb, 0x3a, 0xc2, 0xcd, 0xc5, 0x32, 0x54, 0x7d, 0xaf, 0x76, 0xb8, + 0x54, 0x41, 0xe4, 0xeb, 0xbb, 0x87, 0x75, 0xbe, 0xcc, 0xd2, 0x2a, 0xf7, 0x2b, 0x80, 0x31, 0xed, + 0x4e, 0x3e, 0xfc, 0xc3, 0x81, 0xfb, 0x53, 0xb5, 0x69, 0xa6, 0x27, 0x7b, 0x93, 0x9e, 0x6c, 0xdc, + 0xb2, 0xce, 0x4d, 0xfb, 0xf3, 0x23, 0x4e, 0x7b, 0x00, 0x05, 0xd3, 0x10, 0x66, 0x9e, 0xd0, 0x85, + 0xd2, 0x4e, 0x20, 0xfd, 0x76, 0xc8, 0xbb, 0x48, 0x2d, 0xb1, 0x91, 0x8c, 0xdd, 0x08, 0x4f, 0x6f, + 0xa2, 0x67, 0x04, 0xcf, 0xdc, 0x7c, 0xb2, 0x0c, 0x0b, 0xa3, 0x49, 0x66, 0x61, 0x7f, 0x47, 0x83, + 0x75, 0x1b, 0x36, 0xae, 0x96, 0x99, 0x11, 0xbc, 0x26, 0x14, 0x4c, 0x2d, 0x99, 0xc2, 0xbb, 0x50, + 0x6a, 0x06, 0x21, 0xc7, 0x6e, 0x6e, 0xce, 0x3c, 0x92, 0xb5, 0x7b, 0xbb, 0xd1, 0xb9, 0xdd, 0x56, + 0x2f, 0xbd, 0xcd, 0x54, 0xd3, 0xd6, 0x7e, 0x60, 0x7f, 0xb7, 0x7e, 0x60, 0x57, 0x7f, 0x08, 0x85, + 0xa6, 0x88, 0xfb, 0xbe, 0xb2, 0xc6, 0xac, 0xe4, 0x79, 0xb0, 0xbc, 0x1f, 0xc9, 0x01, 0xef, 0xa8, + 0xec, 0xe1, 0xef, 0x10, 0xee, 0x8d, 0x30, 0x76, 0xec, 0x4b, 0x4d, 0x2f, 0xce, 0xdd, 0xa7, 0x97, + 0xbf, 0x3b, 0x50, 0x1e, 0xd5, 0x27, 0xd2, 0x80, 0x02, 0xbe, 0x8d, 0x64, 0x86, 0x7c, 0x75, 0x43, + 0x41, 0xab, 0x7f, 0x44, 0xb4, 0xed, 0x13, 0x86, 0xea, 0x7e, 0x0f, 0x95, 0x94, 0x7a, 0x46, 0x02, + 0x6c, 0xa4, 0x13, 0x20, 0xb3, 0xc0, 0x9b, 0x4d, 0xd2, 0xe9, 0xb1, 0x03, 0x05, 0xa3, 0x9c, 0x19, + 0x56, 0x02, 0xf9, 0x3d, 0x3f, 0x36, 0xa9, 0x91, 0x63, 0xb8, 0xd6, 0xba, 0x96, 0x38, 0x51, 0xf8, + 0x7a, 0x72, 0x0c, 0xd7, 0xde, 0x3f, 0x1d, 0xa8, 0xda, 0x81, 0xd0, 0x46, 0x90, 0xc3, 0x8a, 0xb9, + 0xa1, 0x3c, 0x4e, 0x74, 0xd6, 0xff, 0x37, 0x73, 0x42, 0x99, 0x40, 0xeb, 0xd7, 0xb9, 0x26, 0x1a, + 0x53, 0x26, 0xdd, 0x06, 0x3c, 0x98, 0x09, 0xbd, 0xd3, 0x15, 0x79, 0x09, 0xf7, 0xc7, 0xa3, 0x6e, + 0x76, 0x9e, 0xac, 0x02, 0x49, 0xc3, 0xec, 0x28, 0xfc, 0x14, 0x2a, 0xfa, 0xd3, 0x21, 0x9b, 0xe6, + 0xc1, 0x92, 0x01, 0xd8, 0xc8, 0x10, 0xc8, 0x9f, 0xf1, 0x2b, 0x93, 0x0d, 0x65, 0x86, 0x6b, 0xef, + 0x6f, 0x8e, 0xfe, 0x02, 0x18, 0x0c, 0xd5, 0x7b, 0x2e, 0xa5, 0xdf, 0xd3, 0x09, 0x98, 0xdf, 0x8f, + 0x02, 0x65, 0xb3, 0xef, 0xb3, 0xac, 0x2f, 0x81, 0xc1, 0x50, 0x69, 0x98, 0x65, 0xed, 0xfd, 0x84, + 0x21, 0x8b, 0x6c, 0x42, 0x7e, 0xc7, 0x57, 0xbe, 0xcd, 0x85, 0x8c, 0xb9, 0x47, 0x23, 0x52, 0x44, + 0x2d, 0x6e, 0x17, 0xf5, 0xe7, 0xce, 0x60, 0xa8, 0xbc, 0x17, 0xb0, 0x72, 0xdd, 0xfa, 0x0c, 0xd7, + 0xbe, 0x84, 0x4a, 0xca, 0x0a, 0xde, 0xdb, 0xc3, 0x26, 0x02, 0x4a, 0x4c, 0x2f, 0xb5, 0xaf, 0xa3, + 0x83, 0x2c, 0x99, 0x3d, 0xbc, 0x7b, 0x50, 0x45, 0xd3, 0xa3, 0x08, 0xfe, 0x79, 0x01, 0x8a, 0x89, + 0x89, 0xcd, 0x09, 0xbf, 0x9f, 0x65, 0xf9, 0x3d, 0xed, 0xf2, 0x6b, 0xc8, 0xeb, 0xfa, 0x61, 0x5d, + 0xce, 0x18, 0x1a, 0x9a, 0xdd, 0x14, 0x4d, 0xc3, 0xc9, 0xb7, 0x50, 0x60, 0x5c, 0xea, 0x01, 0xc7, + 0x7c, 0x0a, 0x3c, 0x9f, 0x4d, 0x34, 0x98, 0x31, 0xd9, 0x92, 0x34, 0xbd, 0x15, 0xf4, 0x22, 0x3f, + 0xa4, 0xf9, 0x79, 0x74, 0x83, 0x49, 0xd1, 0x8d, 0x62, 0x1c, 0xee, 0xbf, 0x38, 0x50, 0x99, 0x1b, + 0xea, 0xf9, 0x1f, 0x6b, 0x53, 0x1f, 0x90, 0xb9, 0xff, 0xf3, 0x03, 0xf2, 0x3f, 0xce, 0xa4, 0x21, + 0x9c, 0x75, 0xf4, 0x7d, 0x1a, 0x88, 0x20, 0x52, 0x36, 0x65, 0x53, 0x1a, 0x7d, 0xd0, 0x46, 0xbf, + 0x6b, 0x8b, 0xbe, 0x5e, 0x8e, 0x8b, 0x77, 0xce, 0x16, 0x6f, 0x9d, 0x04, 0x1f, 0x24, 0x8f, 0x31, + 0x44, 0x65, 0x86, 0x6b, 0x5d, 0xaf, 0x0f, 0x04, 0x6a, 0x17, 0x31, 0x5b, 0xac, 0x84, 0xf6, 0x2e, + 0xba, 0xb4, 0x60, 0x1c, 0x6f, 0x5c, 0x60, 0x17, 0x3a, 0x10, 0x5a, 0x57, 0x34, 0x23, 0x10, 0x0a, + 0x1a, 0x77, 0xac, 0xae, 0x68, 0xc9, 0xa4, 0xda, 0xb1, 0xba, 0xd2, 0x0d, 0x85, 0x89, 0x30, 0x6c, + 0xfb, 0x9d, 0x33, 0x5a, 0x36, 0x9d, 0x2c, 0x91, 0xf5, 0xfc, 0xa7, 0xa3, 0x1b, 0xf8, 0x21, 0x7e, + 0x29, 0x94, 0x58, 0x22, 0x7a, 0x5b, 0x50, 0x1e, 0x25, 0x85, 0xee, 0x51, 0xcd, 0x2e, 0x06, 0xbd, + 0xca, 0x16, 0x9a, 0xdd, 0x24, 0x9f, 0x17, 0xa6, 0xf3, 0x39, 0x97, 0xca, 0xe7, 0x4d, 0xa8, 0x4e, + 0xa4, 0x87, 0x06, 0x31, 0x71, 0x21, 0xad, 0x21, 0x5c, 0x6b, 0x5d, 0x43, 0x84, 0xe6, 0x5b, 0xb8, + 0xca, 0x70, 0xed, 0x3d, 0x87, 0xea, 0x44, 0x62, 0xcc, 0xaa, 0xc0, 0xde, 0x33, 0xa8, 0xb6, 0x94, + 0xaf, 0x86, 0x73, 0xfe, 0xbc, 0xf8, 0xaf, 0x03, 0xcb, 0x09, 0xc6, 0xd6, 0x98, 0x5f, 0x41, 0xe9, + 0x9c, 0xc7, 0x8a, 0x5f, 0x8e, 0xba, 0x0e, 0x9d, 0x1e, 0x3f, 0x3f, 0x22, 0x82, 0x8d, 0x90, 0xe4, + 0x6b, 0x28, 0x49, 0xb4, 0xc3, 0x93, 0x89, 0xe5, 0xd3, 0x2c, 0x96, 0xdd, 0x6f, 0x84, 0x27, 0xeb, + 0x90, 0x0f, 0x45, 0x4f, 0xe2, 0x7b, 0xaf, 0x6c, 0x3c, 0xce, 0xe2, 0xbd, 0x13, 0x3d, 0x86, 0x40, + 0xf2, 0x16, 0x4a, 0x17, 0x7e, 0x1c, 0x05, 0x51, 0x2f, 0xf9, 0x86, 0x7e, 0x9a, 0x45, 0xfa, 0xde, + 0xe0, 0xd8, 0x88, 0xe0, 0x55, 0xf5, 0x75, 0x39, 0x11, 0x36, 0x26, 0xde, 0x6f, 0x75, 0xd6, 0x6a, + 0xd1, 0xba, 0xbf, 0x0f, 0x55, 0x93, 0xf9, 0x1f, 0x79, 0x2c, 0xf5, 0xfc, 0xe7, 0xcc, 0xbb, 0x9d, + 0xdb, 0x69, 0x28, 0x9b, 0x64, 0x7a, 0x3f, 0xd8, 0xc6, 0x96, 0x28, 0x74, 0x2e, 0x0d, 0xfc, 0xce, + 0x99, 0xdf, 0x4b, 0xde, 0x53, 0x22, 0xea, 0x27, 0xe7, 0x76, 0x3f, 0x73, 0x41, 0x13, 0x51, 0xe7, + 0x66, 0xcc, 0xcf, 0x03, 0x39, 0x1e, 0x45, 0x47, 0xf2, 0xc6, 0x5f, 0x8b, 0x00, 0x8d, 0xd1, 0x79, + 0xc8, 0x11, 0x2c, 0xe2, 0x7e, 0xc4, 0x9b, 0xdb, 0x26, 0xd1, 0x6f, 0xf7, 0xf9, 0x2d, 0x5a, 0x29, + 0xf9, 0xa8, 0x93, 0x1f, 0xc7, 0x1b, 0xf2, 0x22, 0xab, 0x20, 0xa4, 0x27, 0x24, 0xf7, 0xe5, 0x0d, + 0x28, 0x6b, 0xf7, 0x03, 0x14, 0x4c, 0x16, 0x90, 0xac, 0xaa, 0x97, 0xce, 0x5b, 0xf7, 0xc5, 0x7c, + 0x90, 0x31, 0xfa, 0xb9, 0x43, 0x98, 0xad, 0x89, 0xc4, 0x9b, 0xd3, 0xf4, 0xec, 0x8d, 0xc9, 0x0a, + 0xc0, 0x44, 0x7f, 0xa9, 0x39, 0xe4, 0x3b, 0x28, 0x98, 0xaa, 0x46, 0x3e, 0x99, 0x4d, 0x48, 0xec, + 0xcd, 0x7f, 0x5c, 0x73, 0x3e, 0x77, 0xc8, 0x7b, 0xc8, 0xeb, 0x76, 0x4e, 0x32, 0x7a, 0x53, 0x6a, + 0x16, 0x70, 0xbd, 0x79, 0x10, 0x1b, 0xc5, 0x1f, 0x00, 0xc6, 0x43, 0x05, 0xc9, 0xf8, 0x27, 0x64, + 0x6a, 0x3a, 0x71, 0x6b, 0x37, 0x03, 0xed, 0x06, 0xef, 0x75, 0x47, 0x3d, 0x11, 0x24, 0xb3, 0x97, + 0x8e, 0xae, 0x91, 0xeb, 0xcd, 0x83, 0x58, 0x73, 0xa7, 0x50, 0x9d, 0xf8, 0xa7, 0x94, 0xfc, 0x22, + 0xdb, 0xc9, 0xeb, 0x7f, 0xbc, 0xba, 0xaf, 0x6e, 0x85, 0xb5, 0x3b, 0xa9, 0xf4, 0x54, 0x66, 0x1f, + 0x93, 0xfa, 0x4d, 0x7e, 0x4f, 0xfe, 0xeb, 0xe9, 0xae, 0xdf, 0x1a, 0x6f, 0x76, 0xdd, 0xce, 0xff, + 0x6e, 0x61, 0xd0, 0x6e, 0x17, 0xf0, 0x0f, 0xe4, 0x2f, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0xec, + 0xbb, 0xeb, 0x3f, 0xde, 0x16, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/controller/pb/controller.proto b/controller/pb/controller.proto index 2300b7ed..054d2b53 100644 --- a/controller/pb/controller.proto +++ b/controller/pb/controller.proto @@ -77,6 +77,8 @@ message BuildOptions { bool ExportPush = 26; bool ExportLoad = 27; moby.buildkit.v1.sourcepolicy.Policy SourcePolicy = 28; + + bool Debug = 29; } message ExportEntry {