This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 2630341  Fix compatibility issues with docker-compose 2 (#18725)
2630341 is described below

commit 2630341d0f5088215798719a5418a3e77abbc5c7
Author: Jarek Potiuk <[email protected]>
AuthorDate: Tue Oct 5 02:05:13 2021 +0200

    Fix compatibility issues with docker-compose 2 (#18725)
    
    Docker-compose 2 on linux introduced a number of problems and
    incompatibilities:
    
    * version is printed in different format
    * -f flag was failing after --log-level info was passed
    * environment variables were not correctly passed with _docker.env
      with missing values
    
    All those worked fine in 1.29.2 and even in MacOS version of
    docker-compose 2 (after raising and fixing some bugs by us
    docker/compose-cli#1917
    
    This PR:
    
    * fixes version regexp
    * removes --log-level info
    * adds copy of _docker.env with var="${var} assignments specifically
      for docker-compose (duplicated variables but this works as a
      workaround)
---
 breeze                                             |  2 +-
 scripts/ci/docker-compose/_docker_compose.env      | 49 ++++++++++++++++++++++
 scripts/ci/docker-compose/base.yml                 |  2 +-
 .../ci_run_single_airflow_test_in_docker.sh        |  2 +-
 4 files changed, 52 insertions(+), 3 deletions(-)

diff --git a/breeze b/breeze
index f3a44f4..0d81de4 100755
--- a/breeze
+++ b/breeze
@@ -593,7 +593,7 @@ function breeze::prepare_command_file() {
     cat <<EOF >"${file}"
 #!/usr/bin/env bash
 docker_compose_version=\$(docker-compose --version || true)
-if [[ \${docker_compose_version} =~ .*([0-9]+)\.([0-9]+)\.([0-9]+).+ ]]; then
+if [[ \${docker_compose_version} =~ .*([0-9]+)\.([0-9]+)\.([0-9]+).* ]]; then
     major=\${BASH_REMATCH[1]}
     minor=\${BASH_REMATCH[2]}
     patch=\${BASH_REMATCH[3]}
diff --git a/scripts/ci/docker-compose/_docker_compose.env 
b/scripts/ci/docker-compose/_docker_compose.env
new file mode 100644
index 0000000..d206af4
--- /dev/null
+++ b/scripts/ci/docker-compose/_docker_compose.env
@@ -0,0 +1,49 @@
+AIRFLOW_CI_IMAGE="${AIRFLOW_CI_IMAGE}"
+AIRFLOW_EXTRAS="${AIRFLOW_EXTRAS}"
+BACKEND="${BACKEND}"
+BREEZE="${BREEZE}"
+CI="${CI}"
+CI_BUILD_ID="${CI_BUILD_ID}"
+CI_JOB_ID="${CI_JOB_ID}"
+CI_EVENT_TYPE="${CI_EVENT_TYPE}"
+CI_TARGET_REPO="${CI_TARGET_REPO}"
+CI_TARGET_BRANCH="${CI_TARGET_BRANCH}"
+COMMIT_SHA="${COMMIT_SHA}"
+DB_RESET="${DB_RESET}"
+DEFAULT_BRANCH="${DEFAULT_BRANCH}"
+DEFAULT_CONSTRAINTS_BRANCH="${DEFAULT_CONSTRAINTS_BRANCH}"
+ENABLED_INTEGRATIONS="${ENABLED_INTEGRATIONS}"
+ENABLED_SYSTEMS="${ENABLED_SYSTEMS}"
+GITHUB_ACTIONS="${GITHUB_ACTIONS}"
+GITHUB_REGISTRY_PULL_IMAGE_TAG="${GITHUB_REGISTRY_PULL_IMAGE_TAG}"
+HOST_USER_ID="${HOST_USER_ID}"
+HOST_GROUP_ID="${HOST_GROUP_ID}"
+HOST_OS="${HOST_OS}"
+HOST_HOME="${HOST_HOME}"
+INIT_SCRIPT_FILE="${INIT_SCRIPT_FILE}"
+INSTALL_AIRFLOW_VERSION="${INSTALL_AIRFLOW_VERSION}"
+GENERATE_CONSTRAINTS_MODE="${GENERATE_CONSTRAINTS_MODE}"
+INSTALL_PROVIDERS_FROM_SOURCES="${INSTALL_PROVIDERS_FROM_SOURCES}"
+USE_AIRFLOW_VERSION="${USE_AIRFLOW_VERSION}"
+USE_PACKAGES_FROM_DIST="${USE_PACKAGES_FROM_DIST}"
+ISSUE_ID="${ISSUE_ID}"
+LOAD_DEFAULT_CONNECTIONS="${LOAD_DEFAULT_CONNECTIONS}"
+LOAD_EXAMPLES="${LOAD_EXAMPLES}"
+MYSQL_VERSION="${MYSQL_VERSION}"
+NUM_RUNS="${NUM_RUNS}"
+PACKAGE_FORMAT="${PACKAGE_FORMAT}"
+POSTGRES_VERSION="${POSTGRES_VERSION}"
+PRINT_INFO_FROM_SCRIPTS="${PRINT_INFO_FROM_SCRIPTS}"
+PYTHONDONTWRITEBYTECODE="${PYTHONDONTWRITEBYTECODE}"
+PYTHON_MAJOR_MINOR_VERSION="${PYTHON_MAJOR_MINOR_VERSION}"
+RUN_TESTS="${RUN_TESTS}"
+RUN_INTEGRATION_TESTS="${RUN_INTEGRATION_TESTS}"
+RUN_SYSTEM_TESTS="${RUN_SYSTEM_TESTS}"
+START_AIRFLOW="${START_AIRFLOW}"
+TEST_TYPE="${TEST_TYPE}"
+UPGRADE_TO_NEWER_DEPENDENCIES="${UPGRADE_TO_NEWER_DEPENDENCIES}"
+VERBOSE="${VERBOSE}"
+VERBOSE_COMMANDS="${VERBOSE_COMMANDS}"
+VERSION_SUFFIX_FOR_PYPI="${VERSION_SUFFIX_FOR_PYPI}"
+VERSION_SUFFIX_FOR_SVN="${VERSION_SUFFIX_FOR_SVN}"
+WHEEL_VERSION="${WHEEL_VERSION}"
diff --git a/scripts/ci/docker-compose/base.yml 
b/scripts/ci/docker-compose/base.yml
index cefb492..c9fed6a 100644
--- a/scripts/ci/docker-compose/base.yml
+++ b/scripts/ci/docker-compose/base.yml
@@ -27,7 +27,7 @@ services:
       - KUBECONFIG=/files/.kube/config
       - HOST_HOME=${HOME}
     env_file:
-      - _docker.env
+      - _docker_compose.env
     volumes:
       # Pass docker to inside of the container so that Kind and Moto tests can 
use it.
       - /var/run/docker.sock:/var/run/docker.sock
diff --git a/scripts/ci/testing/ci_run_single_airflow_test_in_docker.sh 
b/scripts/ci/testing/ci_run_single_airflow_test_in_docker.sh
index a88d061..f2af0b9 100755
--- a/scripts/ci/testing/ci_run_single_airflow_test_in_docker.sh
+++ b/scripts/ci/testing/ci_run_single_airflow_test_in_docker.sh
@@ -112,7 +112,7 @@ function run_airflow_testing_in_docker() {
     fi
     echo "Making sure docker-compose is down and remnants removed"
     echo
-    docker-compose --log-level INFO -f 
"${SCRIPTS_CI_DIR}/docker-compose/base.yml" \
+    docker-compose -f "${SCRIPTS_CI_DIR}/docker-compose/base.yml" \
         --project-name "airflow-${TEST_TYPE}-${BACKEND}" \
         down --remove-orphans \
         --volumes --timeout 10

Reply via email to