Skip to content

Commit d28b12e

Browse files
crazy-maxiQQBot
authored andcommitted
hack(test): tidy create command and display invoked docker cmds
Signed-off-by: CrazyMax <[email protected]>
1 parent 8537199 commit d28b12e

File tree

2 files changed

+41
-9
lines changed

2 files changed

+41
-9
lines changed

hack/test

Lines changed: 34 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -92,25 +92,44 @@ fi
9292

9393
cacheVolume="buildkit-test-cache"
9494
if ! docker container inspect "$cacheVolume" >/dev/null 2>/dev/null; then
95-
docker create -v /root/.cache -v /root/.cache/registry -v /go/pkg/mod --name "$cacheVolume" alpine
95+
dockerCmd create -v /root/.cache -v /root/.cache/registry -v /go/pkg/mod --name "$cacheVolume" alpine
9696
fi
9797
if [ "$TEST_KEEP_CACHE" != "1" ]; then
9898
trap 'docker rm -v $cacheVolume' EXIT
9999
fi
100100

101+
baseCreateFlags="--rm --privileged \
102+
-v /tmp $testReportsVol \
103+
--volumes-from=$cacheVolume \
104+
-e CGO_ENABLED \
105+
-e GITHUB_REF \
106+
-e ACTIONS_RUNTIME_TOKEN \
107+
-e ACTIONS_CACHE_URL \
108+
-e TEST_DOCKERD \
109+
-e BUILDKIT_TEST_ENABLE_FEATURES \
110+
-e BUILDKIT_TEST_DISABLE_FEATURES \
111+
-e GOTESTSUM_FORMAT \
112+
-e BUILDKIT_REGISTRY_MIRROR_DIR=/root/.cache/registry \
113+
-e BUILDKIT_INTEGRATION_DOCKERD_FLAGS \
114+
-e GORACE"
115+
101116
if [ "$TEST_INTEGRATION" == 1 ]; then
102-
cid=$(docker create --rm -v /tmp $testReportsVol --volumes-from=$cacheVolume -e CGO_ENABLED -e GITHUB_REF -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e TEST_DOCKERD -e SKIP_INTEGRATION_TESTS -e BUILDKIT_TEST_ENABLE_FEATURES -e BUILDKIT_TEST_DISABLE_FEATURES -e GOTESTSUM_FORMAT ${BUILDKIT_INTEGRATION_SNAPSHOTTER:+"-eBUILDKIT_INTEGRATION_SNAPSHOTTER"} -e BUILDKIT_REGISTRY_MIRROR_DIR=/root/.cache/registry -e BUILDKIT_INTEGRATION_DOCKERD_FLAGS -e GORACE --privileged $TEST_IMAGE_ID gotestsum $gotestsumArgs --packages="${TESTPKGS:-./...}" -- $gotestArgs ${TESTFLAGS:--v})
117+
cid=$(dockerCmd create $baseCreateFlags \
118+
${BUILDKIT_INTEGRATION_SNAPSHOTTER:+"-eBUILDKIT_INTEGRATION_SNAPSHOTTER"} \
119+
-e SKIP_INTEGRATION_TESTS \
120+
$TEST_IMAGE_ID \
121+
gotestsum $gotestsumArgs --packages="${TESTPKGS:-./...}" -- $gotestArgs ${TESTFLAGS:--v})
103122
if [ "$TEST_DOCKERD" = "1" ]; then
104-
docker cp "$TEST_DOCKERD_BINARY" $cid:/usr/bin/dockerd
123+
dockerCmd cp "$TEST_DOCKERD_BINARY" $cid:/usr/bin/dockerd
105124
fi
106-
docker start -a $cid
125+
dockerCmd start -a $cid
107126
fi
108127

109128
if [ "$TEST_GATEWAY" == 1 ]; then
110129
# Build-test "github.com/moby/buildkit/frontend/gateway/client", which isn't otherwise built by CI
111130
# It really only needs buildkit-base. We have integration-tests in $TEST_IMAGE_ID, which is a direct child of buildkit-base.
112-
cid=$(docker create --rm --volumes-from=$cacheVolume --entrypoint="" $TEST_IMAGE_ID go build -v ./frontend/gateway/client)
113-
docker start -a $cid
131+
cid=$(dockerCmd create --rm --volumes-from=$cacheVolume --entrypoint="" $TEST_IMAGE_ID go build -v ./frontend/gateway/client)
132+
dockerCmd start -a $cid
114133
fi
115134

116135
DOCKERFILE_RELEASES_CUSTOM=""
@@ -139,11 +158,17 @@ if [ "$TEST_DOCKERFILE" == 1 ]; then
139158

140159
if [ -s $tarout ]; then
141160
if [ "$release" = "mainline" ] || [ "$release" = "labs" ] || [ -n "$DOCKERFILE_RELEASES_CUSTOM" ] || [ "$GITHUB_ACTIONS" = "true" ]; then
142-
cid=$(docker create -v /tmp $testReportsVol --rm --privileged --volumes-from=$cacheVolume -e CGO_ENABLED -e GITHUB_REF -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e TEST_DOCKERD -e BUILDKIT_TEST_ENABLE_FEATURES -e BUILDKIT_TEST_DISABLE_FEATURES -e GOTESTSUM_FORMAT -e BUILDKIT_REGISTRY_MIRROR_DIR=/root/.cache/registry -e BUILDKIT_WORKER_RANDOM -e BUILDKIT_INTEGRATION_DOCKERD_FLAGS -e FRONTEND_GATEWAY_ONLY=local:/$release.tar -e EXTERNAL_DF_FRONTEND=/dockerfile-frontend -e GORACE $TEST_IMAGE_ID gotestsum $gotestsumArgs --packages=./frontend/dockerfile -- $gotestArgs --count=1 -tags "$buildtags" ${TESTFLAGS:--v})
161+
cid=$(dockerCmd create $baseCreateFlags \
162+
-e BUILDKIT_WORKER_RANDOM \
163+
-e FRONTEND_GATEWAY_ONLY=local:/$release.tar \
164+
-e EXTERNAL_DF_FRONTEND=/dockerfile-frontend \
165+
$TEST_IMAGE_ID \
166+
gotestsum $gotestsumArgs --packages=./frontend/dockerfile -- $gotestArgs --count=1 -tags "$buildtags" ${TESTFLAGS:--v})
167+
dockerCmd cp $tarout $cid:/$release.tar
143168
if [ "$TEST_DOCKERD" = "1" ]; then
144-
docker cp "$TEST_DOCKERD_BINARY" $cid:/usr/bin/dockerd
169+
dockerCmd cp "$TEST_DOCKERD_BINARY" $cid:/usr/bin/dockerd
145170
fi
146-
docker start -a $cid
171+
dockerCmd start -a $cid
147172
fi
148173
fi
149174
rm $tarout

hack/util

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,13 @@
1111
: "${CACHE_FROM=}"
1212
: "${CACHE_TO=}"
1313

14+
dockerCmd() {
15+
(
16+
set -x
17+
docker "$@"
18+
)
19+
}
20+
1421
buildxCmd() {
1522
(
1623
set -x

0 commit comments

Comments
 (0)