Backward-incompatible changes
Backward-incompatible changes might require you to adjust Cloud configuration and processes for existing Cloud projects when you upgrade to the latest release of the ece-tools package or other Cloud Tools Suite for Commerce packages.
Changes to ece-tools package
Some functionality previously included in the ece-tools package is now provided in separate packages. These packages are composer dependencies for ece-tools, which are installed and updated automatically when you install or update ece-tools.
The new architecture should not affect your install or update processes. However, you might need to change some command syntax and processes when working with your Adobe Commerce on cloud infrastructure project. For details, review the following backward incompatible changes information and the Cloud Tools Suite release notes.
Service version requirement changes
We changed the minimum PHP version requirement from 7.0.x to 7.1.x for Cloud projects that use ece-tools v2002.1.0 and later. If your environment configuration specifies PHP 7.0, update the php configuration in the .magento.app.yaml file.
ece-tools 2002.1.0 supports only Adobe Commerce on cloud infrastructure projects running Adobe Commerce 2.1.15 or later. If your project uses an earlier release, you must upgrade before you update to ece-tools 2002.1.0.Environment configuration changes
The following table provides information about environment variables and other environment configuration files that were removed or deprecated in ece-tools v2002.1.0.
SCD_EXCLUDE_THEMES variableSTATIC_CONTENT_THREADS variableDO_DEPLOY_STATIC_CONTENT variableSTATIC_CONTENT_SYMLINK variablepub/static.build_options.ini fileUse the .magento.env.yaml file to configure environment variables to manage build-and-deploy actions across all your environments.
If you build a Cloud environment that includes the build_options.ini file, the build fails.
CLI command changes
The following table summarizes CLI command changes in ECE-Tools v2002.1.0 that might require you to update commands or scripts.
m2-ece-buildvendor/bin/ece-tools buildm2-ece-deployvendor/bin/ece-tools deploym2-ece-scd-dumpvendor/bin/ece-tools config:dumpvendor/bin/ece-tools patchvendor/bin/ece-patches applyvendor/bin/ece-tools docker:buildvendor/bin/ece-docker build:composevendor/bin/ece-tools docker:config:convertvendor/bin/ece-docker image:generate:phpIn earlier ECE-Tools releases, you could use the m2-ece-build and m2-ece-deploy commands to configure deployment hooks in the .magento.app.yaml file. When you update to v2002.1.0, check the hooks configuration in the .magento.app.yaml file for the obsolete commands, and replace them if needed.
Cloud Patches changes
-
Remove downloaded patches–The
magento/magento-cloud-patchespackage bundles all patches available from the software downloads page and applies them automatically when you deploy to the Cloud. To prevent patch conflicts after upgrading to ECE-Tools 2002.1.0 or later, remove any Adobe-supplied patches that you downloaded and added to your project manually. -
Updating the apply patches command–We moved the command for applying patches from the
vendor/bin/ece-toolsdirectory to thevendor/bin/ece-patchesdirectory. If you use this command to apply patches manually, use the new path.Manually apply patches
code language-bash php ./vendor/bin/ece-patches apply
Cloud Docker changes
-
The minimum PHP version requirement is now PHP 7.1–If your Cloud Docker for Commerce host is running an earlier version, upgrade to PHP v7.1 or later.
-
Cloud Docker for Commerce command changes–
-
Updating Cloud Docker for Commerce commands for Docker build operations–We moved the Cloud Docker for Commerce commands from the
vendor/bin/ece-toolsdirectory to thevendor/bin/ece-dockerdirectory. Update your scripts and commands to use the new path.After upgrading to
ece-tools2002.1.0, use the following command to view availableece-dockercommands.code language-bash php ./vendor/bin/ece-docker list -
Updating the Cloud docker-compose commands–We renamed the path to the command file from
./bin/dockerto./bin/magento-docker. Update your scripts and commands to use the new path. -
Cron container no longer included in default Docker configuration–Now, you must add the
--with-cronoption to theece-docker build:composecommand to include the Cron container in the Docker environment configuration. See Manage cron jobs in the Cloud Docker for Commerce guide.Scripts that previously generated containers with cron jobs are now without the cron container.
-
Using temporary containers–In previous versions, the containers created by
bin/magento-dockercommand operations were not removed, so you could use them for other operations. Now, themagento-dockercommands remove any containers they create after the command completes.If you want to keep a container created by a docker-compose operation, use the
docker-compose runcommand instead of thebin/magento-dockercommand. -
Running post-deploy hooks–The
cloud-deploycommand no longer runs post-deploy hooks. Use the newcloud-post-deploycommand to run post-deploy hooks after you deploy. Update your scripts to add the command to run post-deploy hooks.code language-shell bin/magento-docker ece-deploy bin/magento-docker ece-post-deployAlternatively, if you use
docker-composecommands directly, run thedocker-compose run deploy cloud-post-deploycommand after the deploy command.
-
-
Refreshing the database–The Database container is now stored in the
magento-dbpersistent Docker volume. When you refresh the Docker environment, the database is no longer deleted automatically. If needed, use one of the following commands to manually remove it.-
Remove the
magento-dbcontainer:code language-bash docker volume rm magento-db -
Remove all associated volumes when shutting down the Docker containers:
code language-bash docker-compose down -v
-
-
Override file synchronization settings for archive and backup files–Archive and backup files with the following extensions are no longer synchronized when using docker-sync or mutagen: SQL, GZ, ZIP, and BZ2. You can override the default file synchronization for these file types by renaming the file to end with a different extension. For example:
synchronize-me.zip-backup