浏览代码

Merge pull request #45153 from neersighted/carry_45112

builder-next: disable mergeop and diffop
Bjorn Neergaard 2 年之前
父节点
当前提交
2cf6389142
共有 2 个文件被更改,包括 18 次插入0 次删除
  1. 3 0
      .github/workflows/buildkit.yml
  2. 15 0
      builder/builder-next/controller.go

+ 3 - 0
.github/workflows/buildkit.yml

@@ -70,6 +70,9 @@ jobs:
         name: Prepare
         name: Prepare
         run: |
         run: |
           disabledFeatures="cache_backend_azblob,cache_backend_s3"
           disabledFeatures="cache_backend_azblob,cache_backend_s3"
+          if [ "${{ matrix.worker }}" = "dockerd" ]; then
+            disabledFeatures="${disabledFeatures},merge_diff"
+          fi
           echo "BUILDKIT_TEST_DISABLE_FEATURES=${disabledFeatures}" >> $GITHUB_ENV
           echo "BUILDKIT_TEST_DISABLE_FEATURES=${disabledFeatures}" >> $GITHUB_ENV
       -
       -
         name: Checkout
         name: Checkout

+ 15 - 0
builder/builder-next/controller.go

@@ -49,6 +49,9 @@ import (
 	"github.com/pkg/errors"
 	"github.com/pkg/errors"
 	"go.etcd.io/bbolt"
 	"go.etcd.io/bbolt"
 	bolt "go.etcd.io/bbolt"
 	bolt "go.etcd.io/bbolt"
+
+	"github.com/moby/buildkit/solver/pb"
+	"github.com/moby/buildkit/util/apicaps"
 )
 )
 
 
 func newController(ctx context.Context, rt http.RoundTripper, opt Opt) (*control.Controller, error) {
 func newController(ctx context.Context, rt http.RoundTripper, opt Opt) (*control.Controller, error) {
@@ -165,6 +168,18 @@ func newGraphDriverController(ctx context.Context, rt http.RoundTripper, opt Opt
 	dist := opt.Dist
 	dist := opt.Dist
 	root := opt.Root
 	root := opt.Root
 
 
+	pb.Caps.Init(apicaps.Cap{
+		ID:                pb.CapMergeOp,
+		Enabled:           false,
+		DisabledReasonMsg: "only enabled with containerd image store backend",
+	})
+
+	pb.Caps.Init(apicaps.Cap{
+		ID:                pb.CapDiffOp,
+		Enabled:           false,
+		DisabledReasonMsg: "only enabled with containerd image store backend",
+	})
+
 	var driver graphdriver.Driver
 	var driver graphdriver.Driver
 	if ls, ok := dist.LayerStore.(interface {
 	if ls, ok := dist.LayerStore.(interface {
 		Driver() graphdriver.Driver
 		Driver() graphdriver.Driver