github.com/pdmccormick/importable-docker-buildx@v0.0.0-20240426161518-e47091289030/tests/workers/backend.go (about) 1 package workers 2 3 import ( 4 "os" 5 "strings" 6 7 "github.com/moby/buildkit/util/testutil/integration" 8 ) 9 10 type backend struct { 11 builder string 12 context string 13 unsupportedFeatures []string 14 } 15 16 var _ integration.Backend = &backend{} 17 18 func (s *backend) Address() string { 19 return s.builder 20 } 21 22 func (s *backend) DockerAddress() string { 23 return s.context 24 } 25 26 func (s *backend) ContainerdAddress() string { 27 return "" 28 } 29 30 func (s *backend) Snapshotter() string { 31 return "" 32 } 33 34 func (s *backend) Rootless() bool { 35 return false 36 } 37 38 func (s *backend) NetNSDetached() bool { 39 return false 40 } 41 42 func (s *backend) ExtraEnv() []string { 43 return nil 44 } 45 46 func (s backend) Supports(feature string) bool { 47 if enabledFeatures := os.Getenv("BUILDKIT_TEST_ENABLE_FEATURES"); enabledFeatures != "" { 48 for _, enabledFeature := range strings.Split(enabledFeatures, ",") { 49 if feature == enabledFeature { 50 return true 51 } 52 } 53 } 54 if disabledFeatures := os.Getenv("BUILDKIT_TEST_DISABLE_FEATURES"); disabledFeatures != "" { 55 for _, disabledFeature := range strings.Split(disabledFeatures, ",") { 56 if feature == disabledFeature { 57 return false 58 } 59 } 60 } 61 for _, unsupportedFeature := range s.unsupportedFeatures { 62 if feature == unsupportedFeature { 63 return false 64 } 65 } 66 return true 67 }