From 4312340798680a2b148847b124fcf737e5839c2e Mon Sep 17 00:00:00 2001 From: "M. R" <2947595+m-roberts@users.noreply.github.com> Date: Tue, 2 May 2023 20:00:45 +0100 Subject: Add support for skipping `docker-compose` v1 operations during Docker feature install script (#533) * Add support for skipping docker-compose operations * Move changes from auto-generated files to templates and bump version * Add test * Add test conditions * Add test conditions for docker-outside-of-docker * install.sh set -x for debugging * set -x * Move compose-switch check in docker-outside-of-docker test * Put into correct test * Test for correct path --- test/docker-in-docker/docker_build.sh | 3 +++ test/docker-in-docker/docker_build_no_compose.sh | 16 ++++++++++++++++ test/docker-in-docker/scenarios.json | 10 ++++++++++ test/docker-outside-of-docker/docker_build.sh | 2 ++ test/docker-outside-of-docker/docker_build_no_compose.sh | 15 +++++++++++++++ test/docker-outside-of-docker/docker_dash_compose_v2.sh | 2 ++ test/docker-outside-of-docker/scenarios.json | 9 +++++++++ 7 files changed, 57 insertions(+) mode change 100644 => 100755 test/docker-in-docker/docker_build.sh create mode 100755 test/docker-in-docker/docker_build_no_compose.sh mode change 100644 => 100755 test/docker-outside-of-docker/docker_build.sh create mode 100755 test/docker-outside-of-docker/docker_build_no_compose.sh (limited to 'test') diff --git a/test/docker-in-docker/docker_build.sh b/test/docker-in-docker/docker_build.sh old mode 100644 new mode 100755 index 742b222..d51e7d6 --- a/test/docker-in-docker/docker_build.sh +++ b/test/docker-in-docker/docker_build.sh @@ -9,5 +9,8 @@ source dev-container-features-test-lib check "docker-buildx" docker buildx version check "docker-build" docker build ./ +check "installs docker-compose v1 install" bash -c "type docker-compose" +check "installs compose-switch" bash -c "[[ -f /usr/local/bin/compose-switch ]]" + # Report result reportResults diff --git a/test/docker-in-docker/docker_build_no_compose.sh b/test/docker-in-docker/docker_build_no_compose.sh new file mode 100755 index 0000000..e913be3 --- /dev/null +++ b/test/docker-in-docker/docker_build_no_compose.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +set -e + +# Optional: Import test library +source dev-container-features-test-lib + +# Definition specific tests +check "docker-buildx" docker buildx version +check "docker-build" docker build ./ + +check "not installing compose skips docker-compose v1 install" bash -c "! type docker-compose" +check "not installing compose skips compose-switch" bash -c "[[ ! -f /usr/local/bin/compose-switch ]]" + +# Report result +reportResults diff --git a/test/docker-in-docker/scenarios.json b/test/docker-in-docker/scenarios.json index 5123d09..9c44478 100644 --- a/test/docker-in-docker/scenarios.json +++ b/test/docker-in-docker/scenarios.json @@ -58,5 +58,15 @@ } }, "remoteUser": "node" + }, + "docker_build_no_compose": { + "image": "mcr.microsoft.com/devcontainers/javascript-node:0-18", + "features": { + "docker-in-docker": { + "dockerDashComposeVersion": "none" + } + }, + "remoteUser": "node" } + } diff --git a/test/docker-outside-of-docker/docker_build.sh b/test/docker-outside-of-docker/docker_build.sh old mode 100644 new mode 100755 index 742b222..056a764 --- a/test/docker-outside-of-docker/docker_build.sh +++ b/test/docker-outside-of-docker/docker_build.sh @@ -9,5 +9,7 @@ source dev-container-features-test-lib check "docker-buildx" docker buildx version check "docker-build" docker build ./ +check "installs docker-compose v1 install" bash -c "type docker-compose" + # Report result reportResults diff --git a/test/docker-outside-of-docker/docker_build_no_compose.sh b/test/docker-outside-of-docker/docker_build_no_compose.sh new file mode 100755 index 0000000..477bf21 --- /dev/null +++ b/test/docker-outside-of-docker/docker_build_no_compose.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +set -e + +# Optional: Import test library +source dev-container-features-test-lib + +# Definition specific tests +check "docker-buildx" docker buildx version +check "docker-build" docker build ./ + +check "not installing compose skips docker-compose v1 install" bash -c "! type docker-compose" + +# Report result +reportResults diff --git a/test/docker-outside-of-docker/docker_dash_compose_v2.sh b/test/docker-outside-of-docker/docker_dash_compose_v2.sh index 8f2a104..b24238f 100755 --- a/test/docker-outside-of-docker/docker_dash_compose_v2.sh +++ b/test/docker-outside-of-docker/docker_dash_compose_v2.sh @@ -9,5 +9,7 @@ source dev-container-features-test-lib check "docker compose" bash -c "docker compose version | grep -E '2.[0-9]+.[0-9]+'" check "docker-compose" bash -c "docker-compose --version | grep -E '2.[0-9]+.[0-9]+'" +check "installs compose-switch as docker-compose" bash -c "[[ -f /usr/local/bin/docker-compose ]]" + # Report result reportResults diff --git a/test/docker-outside-of-docker/scenarios.json b/test/docker-outside-of-docker/scenarios.json index be63470..3b82c6c 100644 --- a/test/docker-outside-of-docker/scenarios.json +++ b/test/docker-outside-of-docker/scenarios.json @@ -115,5 +115,14 @@ } }, "containerUser": "vscode" + }, + "docker_build_no_compose": { + "image": "mcr.microsoft.com/devcontainers/javascript-node:0-18", + "features": { + "docker-in-docker": { + "dockerDashComposeVersion": "none" + } + }, + "remoteUser": "node" } } -- cgit v1.2.3