Skip to content

Commit 1db8f67

Browse files
authored
Merge pull request #2713 from jsternberg/gogoproto-remove
protobuf: remove gogoproto
2 parents 8e47387 + b35a0f4 commit 1db8f67

File tree

592 files changed

+45709
-109841
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

592 files changed

+45709
-109841
lines changed

bake/hcl.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func formatHCLError(err error, files []File) error {
5656
break
5757
}
5858
}
59-
src := errdefs.Source{
59+
src := &errdefs.Source{
6060
Info: &pb.SourceInfo{
6161
Filename: d.Subject.Filename,
6262
Data: dt,
@@ -72,7 +72,7 @@ func formatHCLError(err error, files []File) error {
7272

7373
func toErrRange(in *hcl.Range) *pb.Range {
7474
return &pb.Range{
75-
Start: pb.Position{Line: int32(in.Start.Line), Character: int32(in.Start.Column)},
76-
End: pb.Position{Line: int32(in.End.Line), Character: int32(in.End.Column)},
75+
Start: &pb.Position{Line: int32(in.Start.Line), Character: int32(in.Start.Column)},
76+
End: &pb.Position{Line: int32(in.End.Line), Character: int32(in.End.Column)},
7777
}
7878
}

bake/remote.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import (
1717
gwclient "github.com/moby/buildkit/frontend/gateway/client"
1818
"github.com/moby/buildkit/session"
1919
"github.com/pkg/errors"
20+
"google.golang.org/protobuf/proto"
2021
)
2122

2223
type Input struct {
@@ -106,7 +107,6 @@ func ReadRemoteFiles(ctx context.Context, nodes []builder.Node, url string, name
106107
}
107108
return nil, err
108109
}, ch)
109-
110110
if err != nil {
111111
return nil, nil, err
112112
}
@@ -178,8 +178,8 @@ func filesFromURLRef(ctx context.Context, c gwclient.Client, ref gwclient.Refere
178178
name := inp.URL
179179
inp.URL = ""
180180

181-
if len(dt) > stat.Size() {
182-
if stat.Size() > 1024*512 {
181+
if len(dt) > proto.Size(stat) {
182+
if proto.Size(stat) > 1024*512 {
183183
return nil, errors.Errorf("non-archive definition URL bigger than maximum allowed size")
184184
}
185185

build/build.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ import (
5050
fstypes "github.com/tonistiigi/fsutil/types"
5151
"go.opentelemetry.io/otel/trace"
5252
"golang.org/x/sync/errgroup"
53+
"google.golang.org/protobuf/proto"
5354
)
5455

5556
const (
@@ -1136,7 +1137,7 @@ func ReadSourcePolicy() (*spb.Policy, error) {
11361137
var pol spb.Policy
11371138
if err := json.Unmarshal(data, &pol); err != nil {
11381139
// maybe it's in protobuf format?
1139-
e2 := pol.Unmarshal(data)
1140+
e2 := proto.Unmarshal(data, &pol)
11401141
if e2 != nil {
11411142
return nil, errors.Wrap(err, "failed to parse source policy")
11421143
}

build/provenance.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import (
1515
controlapi "github.com/moby/buildkit/api/services/control"
1616
"github.com/moby/buildkit/client"
1717
provenancetypes "github.com/moby/buildkit/solver/llbsolver/provenance/types"
18+
digest "github.com/opencontainers/go-digest"
1819
ocispecs "github.com/opencontainers/image-spec/specs-go/v1"
1920
"github.com/pkg/errors"
2021
"golang.org/x/sync/errgroup"
@@ -124,8 +125,8 @@ func lookupProvenance(res *controlapi.BuildResultInfo) *ocispecs.Descriptor {
124125
for _, a := range res.Attestations {
125126
if a.MediaType == "application/vnd.in-toto+json" && strings.HasPrefix(a.Annotations["in-toto.io/predicate-type"], "https://slsa.dev/provenance/") {
126127
return &ocispecs.Descriptor{
127-
Digest: a.Digest,
128-
Size: a.Size_,
128+
Digest: digest.Digest(a.Digest),
129+
Size: a.Size,
129130
MediaType: a.MediaType,
130131
Annotations: a.Annotations,
131132
}

build/result.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -295,14 +295,14 @@ func (r *ResultHandle) build(buildFunc gateway.BuildFunc) (err error) {
295295
func (r *ResultHandle) getContainerConfig(cfg *controllerapi.InvokeConfig) (containerCfg gateway.NewContainerRequest, _ error) {
296296
if r.res != nil && r.solveErr == nil {
297297
logrus.Debugf("creating container from successful build")
298-
ccfg, err := containerConfigFromResult(r.res, *cfg)
298+
ccfg, err := containerConfigFromResult(r.res, cfg)
299299
if err != nil {
300300
return containerCfg, err
301301
}
302302
containerCfg = *ccfg
303303
} else {
304304
logrus.Debugf("creating container from failed build %+v", cfg)
305-
ccfg, err := containerConfigFromError(r.solveErr, *cfg)
305+
ccfg, err := containerConfigFromError(r.solveErr, cfg)
306306
if err != nil {
307307
return containerCfg, errors.Wrapf(err, "no result nor error is available")
308308
}
@@ -315,19 +315,19 @@ func (r *ResultHandle) getProcessConfig(cfg *controllerapi.InvokeConfig, stdin i
315315
processCfg := newStartRequest(stdin, stdout, stderr)
316316
if r.res != nil && r.solveErr == nil {
317317
logrus.Debugf("creating container from successful build")
318-
if err := populateProcessConfigFromResult(&processCfg, r.res, *cfg); err != nil {
318+
if err := populateProcessConfigFromResult(&processCfg, r.res, cfg); err != nil {
319319
return processCfg, err
320320
}
321321
} else {
322322
logrus.Debugf("creating container from failed build %+v", cfg)
323-
if err := populateProcessConfigFromError(&processCfg, r.solveErr, *cfg); err != nil {
323+
if err := populateProcessConfigFromError(&processCfg, r.solveErr, cfg); err != nil {
324324
return processCfg, err
325325
}
326326
}
327327
return processCfg, nil
328328
}
329329

330-
func containerConfigFromResult(res *gateway.Result, cfg controllerapi.InvokeConfig) (*gateway.NewContainerRequest, error) {
330+
func containerConfigFromResult(res *gateway.Result, cfg *controllerapi.InvokeConfig) (*gateway.NewContainerRequest, error) {
331331
if cfg.Initial {
332332
return nil, errors.Errorf("starting from the container from the initial state of the step is supported only on the failed steps")
333333
}
@@ -352,7 +352,7 @@ func containerConfigFromResult(res *gateway.Result, cfg controllerapi.InvokeConf
352352
}, nil
353353
}
354354

355-
func populateProcessConfigFromResult(req *gateway.StartRequest, res *gateway.Result, cfg controllerapi.InvokeConfig) error {
355+
func populateProcessConfigFromResult(req *gateway.StartRequest, res *gateway.Result, cfg *controllerapi.InvokeConfig) error {
356356
imgData := res.Metadata[exptypes.ExporterImageConfigKey]
357357
var img *specs.Image
358358
if len(imgData) > 0 {
@@ -403,7 +403,7 @@ func populateProcessConfigFromResult(req *gateway.StartRequest, res *gateway.Res
403403
return nil
404404
}
405405

406-
func containerConfigFromError(solveErr *errdefs.SolveError, cfg controllerapi.InvokeConfig) (*gateway.NewContainerRequest, error) {
406+
func containerConfigFromError(solveErr *errdefs.SolveError, cfg *controllerapi.InvokeConfig) (*gateway.NewContainerRequest, error) {
407407
exec, err := execOpFromError(solveErr)
408408
if err != nil {
409409
return nil, err
@@ -431,7 +431,7 @@ func containerConfigFromError(solveErr *errdefs.SolveError, cfg controllerapi.In
431431
}, nil
432432
}
433433

434-
func populateProcessConfigFromError(req *gateway.StartRequest, solveErr *errdefs.SolveError, cfg controllerapi.InvokeConfig) error {
434+
func populateProcessConfigFromError(req *gateway.StartRequest, solveErr *errdefs.SolveError, cfg *controllerapi.InvokeConfig) error {
435435
exec, err := execOpFromError(solveErr)
436436
if err != nil {
437437
return err

build/url.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
"github.com/moby/buildkit/client/llb"
1212
gwclient "github.com/moby/buildkit/frontend/gateway/client"
1313
"github.com/pkg/errors"
14+
"google.golang.org/protobuf/proto"
1415
)
1516

1617
func createTempDockerfileFromURL(ctx context.Context, d *driver.DriverHandle, url string, pw progress.Writer) (string, error) {
@@ -43,7 +44,7 @@ func createTempDockerfileFromURL(ctx context.Context, d *driver.DriverHandle, ur
4344
if err != nil {
4445
return nil, err
4546
}
46-
if stat.Size() > 512*1024 {
47+
if proto.Size(stat) > 512*1024 {
4748
return nil, errors.Errorf("Dockerfile %s bigger than allowed max size", url)
4849
}
4950

@@ -63,7 +64,6 @@ func createTempDockerfileFromURL(ctx context.Context, d *driver.DriverHandle, ur
6364
out = dir
6465
return nil, nil
6566
}, ch)
66-
6767
if err != nil {
6868
return "", err
6969
}

commands/build.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ import (
6161
"go.opentelemetry.io/otel/attribute"
6262
"go.opentelemetry.io/otel/metric"
6363
"google.golang.org/grpc/codes"
64+
"google.golang.org/protobuf/proto"
6465
)
6566

6667
type buildOptions struct {
@@ -408,7 +409,7 @@ func getImageID(resp map[string]string) string {
408409
}
409410

410411
func runBasicBuild(ctx context.Context, dockerCli command.Cli, opts *controllerapi.BuildOptions, printer *progress.Printer) (*client.SolveResponse, *build.Inputs, error) {
411-
resp, res, dfmap, err := cbuild.RunBuild(ctx, dockerCli, *opts, dockerCli.In(), printer, false)
412+
resp, res, dfmap, err := cbuild.RunBuild(ctx, dockerCli, opts, dockerCli.In(), printer, false)
412413
if res != nil {
413414
res.Done()
414415
}
@@ -458,7 +459,7 @@ func runControllerBuild(ctx context.Context, dockerCli command.Cli, opts *contro
458459
})
459460
}
460461

461-
ref, resp, inputs, err = c.Build(ctx, *opts, pr, printer)
462+
ref, resp, inputs, err = c.Build(ctx, opts, pr, printer)
462463
if err != nil {
463464
var be *controllererrors.BuildError
464465
if errors.As(err, &be) {
@@ -920,9 +921,9 @@ func printResult(w io.Writer, f *controllerapi.CallFunc, res map[string]string,
920921
}
921922

922923
if inp.DockerfileMappingSrc != "" {
923-
newSourceInfo := *sourceInfo
924+
newSourceInfo := proto.Clone(sourceInfo).(*solverpb.SourceInfo)
924925
newSourceInfo.Filename = inp.DockerfileMappingSrc
925-
return &newSourceInfo
926+
return newSourceInfo
926927
}
927928
return sourceInfo
928929
}
@@ -1012,7 +1013,7 @@ func (cfg *invokeConfig) runDebug(ctx context.Context, ref string, options *cont
10121013
return nil, errors.Errorf("failed to configure terminal: %v", err)
10131014
}
10141015
defer con.Reset()
1015-
return monitor.RunMonitor(ctx, ref, options, cfg.InvokeConfig, c, stdin, stdout, stderr, progress)
1016+
return monitor.RunMonitor(ctx, ref, options, &cfg.InvokeConfig, c, stdin, stdout, stderr, progress)
10161017
}
10171018

10181019
func (cfg *invokeConfig) parseInvokeConfig(invoke, on string) error {

commands/debug/root.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func RootCmd(dockerCli command.Cli, children ...DebuggableCmd) *cobra.Command {
6464
return errors.Errorf("failed to configure terminal: %v", err)
6565
}
6666

67-
_, err = monitor.RunMonitor(ctx, "", nil, controllerapi.InvokeConfig{
67+
_, err = monitor.RunMonitor(ctx, "", nil, &controllerapi.InvokeConfig{
6868
Tty: true,
6969
}, c, dockerCli.In(), os.Stdout, os.Stderr, printer)
7070
con.Reset()

commands/inspect.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,8 +122,11 @@ func runInspect(ctx context.Context, dockerCli command.Cli, in inspectOptions) e
122122
if rule.KeepDuration > 0 {
123123
fmt.Fprintf(w, "\tKeep Duration:\t%v\n", rule.KeepDuration.String())
124124
}
125-
if rule.KeepBytes > 0 {
126-
fmt.Fprintf(w, "\tKeep Bytes:\t%s\n", units.BytesSize(float64(rule.KeepBytes)))
125+
if rule.MinStorage > 0 {
126+
fmt.Fprintf(w, "\tMin Storage:\t%s\n", units.BytesSize(float64(rule.MinStorage)))
127+
}
128+
if rule.MaxStorage > 0 {
129+
fmt.Fprintf(w, "\tMax Storage:\t%s\n", units.BytesSize(float64(rule.MaxStorage)))
127130
}
128131
}
129132
for f, dt := range nodes[i].Files {

commands/prune.go

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,13 @@ import (
2222
)
2323

2424
type pruneOptions struct {
25-
builder string
26-
all bool
27-
filter opts.FilterOpt
28-
keepStorage opts.MemBytes
29-
force bool
30-
verbose bool
25+
builder string
26+
all bool
27+
filter opts.FilterOpt
28+
minStorage opts.MemBytes
29+
maxStorage opts.MemBytes
30+
force bool
31+
verbose bool
3132
}
3233

3334
const (
@@ -106,7 +107,7 @@ func runPrune(ctx context.Context, dockerCli command.Cli, opts pruneOptions) err
106107
return err
107108
}
108109
popts := []client.PruneOption{
109-
client.WithKeepOpt(pi.KeepDuration, opts.keepStorage.Value()),
110+
client.WithKeepOpt(pi.KeepDuration, opts.minStorage.Value(), opts.maxStorage.Value(), 0),
110111
client.WithFilter(pi.Filter),
111112
}
112113
if opts.all {
@@ -148,10 +149,14 @@ func pruneCmd(dockerCli command.Cli, rootOpts *rootOptions) *cobra.Command {
148149
flags := cmd.Flags()
149150
flags.BoolVarP(&options.all, "all", "a", false, "Include internal/frontend images")
150151
flags.Var(&options.filter, "filter", `Provide filter values (e.g., "until=24h")`)
151-
flags.Var(&options.keepStorage, "keep-storage", "Amount of disk space to keep for cache")
152+
flags.Var(&options.minStorage, "min-storage", "Minimum amount of disk space to keep for cache")
153+
flags.Var(&options.maxStorage, "max-storage", "Maximum amount of disk space to keep for cache")
152154
flags.BoolVar(&options.verbose, "verbose", false, "Provide a more verbose output")
153155
flags.BoolVarP(&options.force, "force", "f", false, "Do not prompt for confirmation")
154156

157+
flags.Var(&options.maxStorage, "keep-storage", "Amount of disk space to keep for cache")
158+
flags.MarkDeprecated("keep-storage", "keep-storage flag has been changed to max-storage")
159+
155160
return cmd
156161
}
157162

0 commit comments

Comments
 (0)