diff --git a/.github/oxid-esales/defaults/defaults_light.yaml b/.github/oxid-esales/defaults/defaults_light.yaml index 68faa59b..9c31a5a1 100644 --- a/.github/oxid-esales/defaults/defaults_light.yaml +++ b/.github/oxid-esales/defaults/defaults_light.yaml @@ -144,7 +144,7 @@ global: # Run composer for every module in the install job if early is set to true # Do not use this with oxideshop-ce - early: false + early: &early false # Use these settings below to merge a json configuration with an existing # composer.json @@ -195,8 +195,12 @@ init: # This step installs the sdk, shop and module(s) install: + # This can be either 'legacy' or 'script' method: 'legacy' + # The path for the script to install the shop + script: 'source/vendor/oxid-esales/oxideshop-ce/.github/oxid-esales/install.sh' + # This step installs the sdk, shop and module(s) install_shop_with_modules: matrix: *matrix @@ -293,6 +297,7 @@ runscript: &runscript cache: bucket: *cache_bucket composer: + early: *early file: 'source/dev-packages/test-module/composer.json' backup: true transform: '' diff --git a/.github/oxid-esales/defaults/defaults_light.yml b/.github/oxid-esales/defaults/defaults_light.yml index 68faa59b..9c31a5a1 100644 --- a/.github/oxid-esales/defaults/defaults_light.yml +++ b/.github/oxid-esales/defaults/defaults_light.yml @@ -144,7 +144,7 @@ global: # Run composer for every module in the install job if early is set to true # Do not use this with oxideshop-ce - early: false + early: &early false # Use these settings below to merge a json configuration with an existing # composer.json @@ -195,8 +195,12 @@ init: # This step installs the sdk, shop and module(s) install: + # This can be either 'legacy' or 'script' method: 'legacy' + # The path for the script to install the shop + script: 'source/vendor/oxid-esales/oxideshop-ce/.github/oxid-esales/install.sh' + # This step installs the sdk, shop and module(s) install_shop_with_modules: matrix: *matrix @@ -293,6 +297,7 @@ runscript: &runscript cache: bucket: *cache_bucket composer: + early: *early file: 'source/dev-packages/test-module/composer.json' backup: true transform: '' diff --git a/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yaml b/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yaml index 6154b23a..88d08fd8 100644 --- a/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yaml +++ b/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yaml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.0"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yml b/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yml index 6154b23a..88d08fd8 100644 --- a/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yml +++ b/.github/oxid-esales/defaults/php8.0_mysql8.0_only.yml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.0"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yaml b/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yaml index f674cd26..331d0ee6 100644 --- a/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yaml +++ b/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yaml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.1"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yml b/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yml index f674cd26..331d0ee6 100644 --- a/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yml +++ b/.github/oxid-esales/defaults/php8.1_mysql8.0_only.yml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.1"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yaml b/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yaml index bc92a750..7a3a9d0d 100644 --- a/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yaml +++ b/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yaml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.2"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yml b/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yml index bc92a750..7a3a9d0d 100644 --- a/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yml +++ b/.github/oxid-esales/defaults/php8.2_mysql8.0_only.yml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.2"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yaml b/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yaml index 9c18256a..28e20b5e 100644 --- a/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yaml +++ b/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yaml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.3"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yml b/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yml index 9c18256a..28e20b5e 100644 --- a/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yml +++ b/.github/oxid-esales/defaults/php8.3_mysql8.0_only.yml @@ -1,7 +1,7 @@ prepare_shop: matrix: &matrix php: '["8.3"]' - mysql: '["8.0"]' + mysql: '["8.0.36"]' install_shop: matrix: *matrix diff --git a/.github/workflows/universal_workflow_light.yaml b/.github/workflows/universal_workflow_light.yaml index d4164773..1f02ca31 100644 --- a/.github/workflows/universal_workflow_light.yaml +++ b/.github/workflows/universal_workflow_light.yaml @@ -366,7 +366,7 @@ jobs: unset INPUT_FILES INPUT_INPUT_TYPE INPUT_JSON rm .composer_merge.tmp.json fi - echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runscript_${PREFIX}_path'\033[0m" + echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runscript_${PREFIX}_path, runscript_${PREFIX}_composer_early=='${EARLY}''\033[0m" docker compose ${{ steps.iltp.outputs.install_container_method }} -T \ ${{ steps.iltp.outputs.install_container_options }} \ ${{ steps.iltp.outputs.install_container_name }} \ @@ -395,7 +395,7 @@ jobs: unset INPUT_FILES INPUT_INPUT_TYPE INPUT_JSON rm .composer_merge.tmp.json fi - echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runslim_${PREFIX}_path'\033[0m" + echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runslim_${PREFIX}_path, runslim_${PREFIX}_composer_early=='${EARLY}''\033[0m" docker compose ${{ steps.iltp.outputs.install_shop_with_modules_container_method }} -T \ ${{ steps.iltp.outputs.install_shop_with_modules_container_options }} \ ${{ steps.iltp.outputs.install_shop_with_modules_container_name }} \ @@ -517,7 +517,7 @@ jobs: key: '${{ steps.iltp.outputs.install_cache_prepared_shop_prefix }}_${{steps.itn.outputs.matrix_suffix}}' - name: Debug cache preparedShop - if: ${{ inputs.debug == 'true' && steps.iltp.outputs.install_cache_prepared_shop == true }} + if: ${{ inputs.debug == 'true' && steps.iltp.outputs.install_cache_prepared_shop == 'true' }} shell: bash run: | # install: Debug cache current installation @@ -562,22 +562,25 @@ jobs: if: ${{ steps.iltp.outputs.install_method == 'script' && steps.iltp.outputs.install_skip_shop_installation == 'false' }} run: | echo "banner 'Install shop (script)'" >>debug/debug.sh - for E in $(env|grep -E "^global_|^install_|^custom_|^secrets_"|grep -v "_transform="); do - IFS=';' read -ra EXP <<< "$E" + VARS=$(env|grep -E "^global_|^install_|^custom_|^secrets_"|grep -v "^install_shop_with_modules_"|grep -v "|_transform=") + IFS=$'\n' + while read -r E ; do + IFS='=' read -ra EXP <<< "$E" VAL=("${EXP[@]:1}") # shellcheck disable=SC2145 echo "export ${EXP[0]}='${VAL[@]}'" >>debug/debug.sh - done - cat >>debug/debug.sh <>debug/debug.sh <<'EOF' SCRIPT="source/vendor/oxid-esales/oxideshop-ce/.github/oxid-esales/install.sh" if [ -f "${SCRIPT}" ]; then chmod a+x "${SCRIPT}" "${SCRIPT}" else - echo -e "\033[0;31mCould not finds ${SCRIPT}\033[0m" + echo -e "\033[0;31mCould not find ${SCRIPT}\033[0m" exit 1 fi EOF + - name: Activate modules shell: bash run: | diff --git a/.github/workflows/universal_workflow_light.yml b/.github/workflows/universal_workflow_light.yml index d4164773..1f02ca31 100644 --- a/.github/workflows/universal_workflow_light.yml +++ b/.github/workflows/universal_workflow_light.yml @@ -366,7 +366,7 @@ jobs: unset INPUT_FILES INPUT_INPUT_TYPE INPUT_JSON rm .composer_merge.tmp.json fi - echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runscript_${PREFIX}_path'\033[0m" + echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runscript_${PREFIX}_path, runscript_${PREFIX}_composer_early=='${EARLY}''\033[0m" docker compose ${{ steps.iltp.outputs.install_container_method }} -T \ ${{ steps.iltp.outputs.install_container_options }} \ ${{ steps.iltp.outputs.install_container_name }} \ @@ -395,7 +395,7 @@ jobs: unset INPUT_FILES INPUT_INPUT_TYPE INPUT_JSON rm .composer_merge.tmp.json fi - echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runslim_${PREFIX}_path'\033[0m" + echo -e "\033[0;35mRuning composer install for '${PREFIX}' in '${COMPOSER_PATH}' using 'runslim_${PREFIX}_path, runslim_${PREFIX}_composer_early=='${EARLY}''\033[0m" docker compose ${{ steps.iltp.outputs.install_shop_with_modules_container_method }} -T \ ${{ steps.iltp.outputs.install_shop_with_modules_container_options }} \ ${{ steps.iltp.outputs.install_shop_with_modules_container_name }} \ @@ -517,7 +517,7 @@ jobs: key: '${{ steps.iltp.outputs.install_cache_prepared_shop_prefix }}_${{steps.itn.outputs.matrix_suffix}}' - name: Debug cache preparedShop - if: ${{ inputs.debug == 'true' && steps.iltp.outputs.install_cache_prepared_shop == true }} + if: ${{ inputs.debug == 'true' && steps.iltp.outputs.install_cache_prepared_shop == 'true' }} shell: bash run: | # install: Debug cache current installation @@ -562,22 +562,25 @@ jobs: if: ${{ steps.iltp.outputs.install_method == 'script' && steps.iltp.outputs.install_skip_shop_installation == 'false' }} run: | echo "banner 'Install shop (script)'" >>debug/debug.sh - for E in $(env|grep -E "^global_|^install_|^custom_|^secrets_"|grep -v "_transform="); do - IFS=';' read -ra EXP <<< "$E" + VARS=$(env|grep -E "^global_|^install_|^custom_|^secrets_"|grep -v "^install_shop_with_modules_"|grep -v "|_transform=") + IFS=$'\n' + while read -r E ; do + IFS='=' read -ra EXP <<< "$E" VAL=("${EXP[@]:1}") # shellcheck disable=SC2145 echo "export ${EXP[0]}='${VAL[@]}'" >>debug/debug.sh - done - cat >>debug/debug.sh <>debug/debug.sh <<'EOF' SCRIPT="source/vendor/oxid-esales/oxideshop-ce/.github/oxid-esales/install.sh" if [ -f "${SCRIPT}" ]; then chmod a+x "${SCRIPT}" "${SCRIPT}" else - echo -e "\033[0;31mCould not finds ${SCRIPT}\033[0m" + echo -e "\033[0;31mCould not find ${SCRIPT}\033[0m" exit 1 fi EOF + - name: Activate modules shell: bash run: | diff --git a/prepare_shop/action.yaml b/prepare_shop/action.yaml index 20d7b67e..78cfadd6 100644 --- a/prepare_shop/action.yaml +++ b/prepare_shop/action.yaml @@ -384,7 +384,7 @@ runs: docker compose ps --all - name: Output docker logs if make up failed - if: failure() + if: always() shell: bash run: | # prepare_shop: Output docker logs if make up failed