From 3e349aee970bc24eca114b084a99cf5648cbf42a Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Wed, 3 Apr 2024 08:10:50 +0000 Subject: [PATCH] Migration from Docker Compose v1 to v2 --- .../workflows/actions/run-tests/action.yml | 6 +++--- .github/workflows/build-shop.yml | 8 ++++---- .github/workflows/test-sanity.yml | 6 +++--- .github/workflows/test-with-prebuilt-shop.yml | 20 +++++++++---------- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/actions/run-tests/action.yml b/.github/workflows/actions/run-tests/action.yml index 52b58ba9..cec74568 100644 --- a/.github/workflows/actions/run-tests/action.yml +++ b/.github/workflows/actions/run-tests/action.yml @@ -73,14 +73,14 @@ runs: - name: Export docker logs run: | mkdir -p ${{ inputs.ps_dir }}/var/docker-logs - docker logs my_prestashop_mysql_1 > ${{ inputs.ps_dir }}/var/docker-logs/mysql.log - docker logs my_prestashop_prestashop-git_1 > ${{ inputs.ps_dir }}/var/docker-logs/prestashop.log + docker logs my_prestashop-mysql-1 > ${{ inputs.ps_dir }}/var/docker-logs/mysql.log + docker logs my_prestashop-prestashop-git-1 > ${{ inputs.ps_dir }}/var/docker-logs/prestashop.log if: failure() shell: bash - name: Export docker keycloak logs run: | - docker logs my_prestashop_keycloak_1 > ${{ inputs.ps_dir }}/var/docker-logs/keycloak.log + docker logs my_prestashop-keycloak-1 > ${{ inputs.ps_dir }}/var/docker-logs/keycloak.log if: failure() && inputs.test_command == 'functional:API' shell: bash diff --git a/.github/workflows/build-shop.yml b/.github/workflows/build-shop.yml index 6fd564e6..393beb74 100644 --- a/.github/workflows/build-shop.yml +++ b/.github/workflows/build-shop.yml @@ -87,12 +87,12 @@ jobs: working-directory: ${{ env.PS_DIR }} run: | # Pull mysql image - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml pull -q mysql >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml pull -q mysql >& /dev/null & - name: Build PrestaShop image in background working-directory: ${{ env.PS_DIR }} run: | # Build prestashop image in background - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml build >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml build >& /dev/null & # Run composer install before building the assets since the themes come from composer - name: Get Composer Cache Directory @@ -188,7 +188,7 @@ jobs: until docker images | grep prestashop-git; do echo Waiting for prestashop-git image; sleep 1; done # Then build and start the docker echo Build docker via docker composer - USER_ID=$(id -u) GROUP_ID=$(id -g) docker-compose -f docker-compose.yml up -d --build prestashop-git + USER_ID=$(id -u) GROUP_ID=$(id -g) docker compose -f docker-compose.yml up -d --build prestashop-git echo Waiting for response from the FO bash -c 'while [[ "$(curl -L -s -o /dev/null -w %{http_code} ${{ env.URL_FO }}en/)" != "200" ]]; do sleep 1; done' @@ -210,7 +210,7 @@ jobs: "*/tests/Resources/**/*" \ "*/tests/Unit/**/*" \ "*/.git/**/*" - docker exec my_prestashop_mysql_1 /usr/bin/mysqldump -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }} ${{ env.DB_NAME }} > /tmp/shop-artifacts/db_dump.sql + docker exec my_prestashop-mysql-1 /usr/bin/mysqldump -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }} ${{ env.DB_NAME }} > /tmp/shop-artifacts/db_dump.sql - name: Upload shop artifacts if: always() diff --git a/.github/workflows/test-sanity.yml b/.github/workflows/test-sanity.yml index fbf9a3a0..464fb009 100644 --- a/.github/workflows/test-sanity.yml +++ b/.github/workflows/test-sanity.yml @@ -88,12 +88,12 @@ jobs: working-directory: ${{ env.PS_DIR }} run: | # Pull mysql image - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml pull -q mysql >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml pull -q mysql >& /dev/null & - name: Build PrestaShop image in background working-directory: ${{ env.PS_DIR }} run: | # Build prestashop image in background - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml build >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml build >& /dev/null & # Certificate - name: Generate a certificate @@ -158,7 +158,7 @@ jobs: until docker images | grep prestashop-git; do echo Waiting for prestashop-git image; sleep 1; done # Then build and start the docker, no need to wait the install page is accessible right away echo Build docker via docker composer - USER_ID=$(id -u) GROUP_ID=$(id -g) docker-compose -f docker-compose.yml up -d --build prestashop-git + USER_ID=$(id -u) GROUP_ID=$(id -g) docker compose -f docker-compose.yml up -d --build prestashop-git # Install node dependencies and build assets - name: Setup Node ${{ inputs.node_version }} diff --git a/.github/workflows/test-with-prebuilt-shop.yml b/.github/workflows/test-with-prebuilt-shop.yml index 8a7ca526..42adf908 100644 --- a/.github/workflows/test-with-prebuilt-shop.yml +++ b/.github/workflows/test-with-prebuilt-shop.yml @@ -81,18 +81,18 @@ jobs: working-directory: ${{ env.PS_DIR }} run: | # Pull mysql image - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml pull -q mysql >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml pull -q mysql >& /dev/null & - name: Pull keycloak in background if: inputs.test_command == 'functional:API' working-directory: ${{ env.PS_DIR }} run: | # Pull keycloak image - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml pull -q keycloak >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml pull -q keycloak >& /dev/null & - name: Build PrestaShop image in background working-directory: ${{ env.PS_DIR }} run: | # Build prestashop image in background - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml build >& /dev/null & + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml build >& /dev/null & # Certificate - name: Generate a certificate @@ -117,23 +117,23 @@ jobs: timeout-minutes: 5 run: | echo Starting mysql docker alone - USER_ID=$(id -u) GROUP_ID=$(id -g) docker-compose -f docker-compose.yml up -d --build mysql + USER_ID=$(id -u) GROUP_ID=$(id -g) docker compose -f docker-compose.yml up -d --build mysql echo Wait until mysql is accessible minimum 10 seconds before testing sleep 10 - until docker exec my_prestashop_mysql_1 /usr/bin/mysql -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }}; do echo "Sleep and retry to check"; sleep 2; done + until docker exec my_prestashop-mysql-1 /usr/bin/mysql -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }}; do echo "Sleep and retry to check"; sleep 2; done echo Copying dump into docker - docker cp /tmp/shop-artifacts/db_dump.sql my_prestashop_mysql_1:/tmp/db_dump.sql + docker cp /tmp/shop-artifacts/db_dump.sql my_prestashop-mysql-1:/tmp/db_dump.sql echo Creating ${{ env.DB_NAME }} database - docker exec my_prestashop_mysql_1 /usr/bin/mysql -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }} -e "CREATE DATABASE IF NOT EXISTS ${{ env.DB_NAME }};" + docker exec my_prestashop-mysql-1 /usr/bin/mysql -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }} -e "CREATE DATABASE IF NOT EXISTS ${{ env.DB_NAME }};" echo Load dump into DB - docker exec my_prestashop_mysql_1 /usr/bin/mysql -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }} ${{ env.DB_NAME }} -e "source /tmp/db_dump.sql;" + docker exec my_prestashop-mysql-1 /usr/bin/mysql -u ${{ env.DB_USER }} -p${{ env.DB_PASSWD }} ${{ env.DB_NAME }} -e "source /tmp/db_dump.sql;" - name: Build keycloak if: inputs.test_command == 'functional:API' working-directory: ${{ env.PS_DIR }} run: | until docker images | grep keycloak; do echo Waiting for keycloak image; sleep 1; done - USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker-compose -f docker-compose.yml up -d --build keycloak + USER_ID=$(id -u) GROUP_ID=$(id -g) nohup docker compose -f docker-compose.yml up -d --build keycloak - name: Start up shop docker working-directory: ${{ env.PS_DIR }} @@ -152,7 +152,7 @@ jobs: until docker images | grep mysql; do echo Waiting for mysql image; sleep 1; done until docker images | grep prestashop-git; do echo Waiting for prestashop-git image; sleep 1; done echo Build the remaining dockers - USER_ID=$(id -u) GROUP_ID=$(id -g) docker-compose -f docker-compose.yml up -d --build ${{ env.BUILT_CONTAINERS }} + USER_ID=$(id -u) GROUP_ID=$(id -g) docker compose -f docker-compose.yml up -d --build ${{ env.BUILT_CONTAINERS }} echo Waiting for response from the FO bash -c 'while [[ "$(curl -L -s -o /dev/null -w %{http_code} ${{ env.URL_FO }}en/)" != "200" ]]; do sleep 5; done'