mirror of
https://gitea.com/Lydanne/buildx.git
synced 2025-07-24 20:28:02 +08:00
tests: test with buildx experimental
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
This commit is contained in:
@@ -68,6 +68,11 @@ func testBuild(t *testing.T, sb integration.Sandbox) {
|
||||
}
|
||||
|
||||
func testBuildStdin(t *testing.T, sb integration.Sandbox) {
|
||||
if isExperimental() {
|
||||
// FIXME: https://github.com/docker/buildx/issues/2368
|
||||
t.Skip("build from stdin hangs in experimental mode: https://github.com/docker/buildx/issues/2368")
|
||||
}
|
||||
|
||||
dockerfile := []byte(`
|
||||
FROM busybox:latest AS base
|
||||
COPY foo /etc/foo
|
||||
@@ -300,6 +305,11 @@ RUN echo foo > /bar`)
|
||||
require.NoError(t, err, string(out))
|
||||
require.True(t, buildDetailsPattern.MatchString(string(out)), fmt.Sprintf("expected build details link in output, got %q", out))
|
||||
|
||||
if isExperimental() {
|
||||
// FIXME: https://github.com/docker/buildx/issues/2382
|
||||
t.Skip("build details link not displayed in experimental mode when build fails: https://github.com/docker/buildx/issues/2382")
|
||||
}
|
||||
|
||||
// build erroneous dockerfile
|
||||
dockerfile = []byte(`FROM busybox:latest
|
||||
RUN exit 1`)
|
||||
|
@@ -3,6 +3,7 @@ package tests
|
||||
import (
|
||||
"os"
|
||||
"os/exec"
|
||||
"strconv"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
@@ -55,6 +56,9 @@ func buildxCmd(sb integration.Sandbox, opts ...cmdOpt) *exec.Cmd {
|
||||
if context := sb.DockerAddress(); context != "" {
|
||||
cmd.Env = append(cmd.Env, "DOCKER_CONTEXT="+context)
|
||||
}
|
||||
if isExperimental() {
|
||||
cmd.Env = append(cmd.Env, "BUILDX_EXPERIMENTAL=1")
|
||||
}
|
||||
|
||||
return cmd
|
||||
}
|
||||
@@ -95,3 +99,11 @@ func driverName(sbName string) (string, bool) {
|
||||
}
|
||||
return name, hasFeature
|
||||
}
|
||||
|
||||
func isExperimental() bool {
|
||||
if v, ok := os.LookupEnv("TEST_BUILDX_EXPERIMENTAL"); ok {
|
||||
vv, _ := strconv.ParseBool(v)
|
||||
return vv
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
Reference in New Issue
Block a user