ECE-Tools release notes

The ece-tools package is a set of scripts and tools designed to manage and deploy Cloud projects. These release notes describe the latest improvements to this package, which is part of the Cloud Tools Suite for Commerce.

NOTE
See Upgrade ECE-Tools for information about updating to the latest release of the ece-tools package.

The ece-tools package uses the following release versioning sequence: 200<major>.<minor>.<patch>

The release notes include:

  • new icon New features
  • fix icon Fixes and improvements

v2002.2.0 latest

Release date: October 7, 2024

  • new icon MariaDB 11.4-Added support of MariaDB 11.4.
  • fix icon Refactored code-Removed support of old PHP versions 7.4, 7.3, 7.2 and related libraries.
  • fix icon Upgraded Monolog version-Added support for monolog 3.6.
  • fix icon Validator for RabbitMQ, MariaDB, and PHP-Fixed the validator that produced a misleading message about the wrong version of service.

v2002.1.19

Release date: May 21, 2024

  • new icon Lua—Added option useLua for CACHE_CONFIGURATION.
  • fix icon Validator—Updated validators for new versions of Redis and RabbitMQ.

v2002.1.18

Release date: April 8, 2024

  • new icon PHP — Added support for PHP 8.3.
  • fix icon Validator - Updated EOL validator.

v2002.1.17

Release date: January 16, 2024

  • fix icon Validator for Elasticsearch & OpenSearch—Fixed the validator that produced a misleading message to install a search service when LiveSearch is enabled.
  • fix icon Deployment warning—Fixed an issue that resulted in deployment warnings about non-empty folders.

v2002.1.16

Release date: October 16, 2023

  • new icon ENABLE_WEBHOOKS global environment variable—Added the ENABLE_WEBHOOKS global variable for use with Commerce webhooks to connect to an external endpoint, such as App Builder runtime action or a third-party inventory management system.

v2002.1.15

Release date: July 31, 2023

  • fix icon Error codes—Updated error code schema and error code document generator.
  • fix icon Validator for custom Redis model-Updated the validator for custom Redis backend models. See the example for cache configuration.
  • fix icon Validator for RabbitMQ-Added support for RabbitMQ 3.11
  • fix icon Fixed the wrong link-Fixed the wrong link to the onboarding documentation in the welcome email template.

v2002.1.14

Release date: March 10, 2023

  • new icon PHP—Added support for PHP 8.2.
  • new icon Validators for Services—Updated validators for Commerce 2.4.6 required services: MariaDB 10.6, Redis 7.0, PHP 8.2, OpenSearch 2.x, and RabbitMQ 3.9.
  • fix icon ece-tools db-dump—Fixed an issue that caused the db-dump operation to stop prematurely.

v2002.1.13

Release date: October 27, 2022

  • new icon Added support for Adobe I/O Events for Adobe Commerce. Extension developers can now use the Adobe I/O Events framework to send Commerce event information from Cloud instances to their applications written for Adobe App Builder. Adobe I/O Events for Adobe Commerce is in Partner Preview.
  • new icon Validator for OPcache configuration—Added a validator to check the OPcache configuration for excluded paths.
  • fix icon Fixed an issue with GraphQL cache configuration—Now ECE-Tools keeps the GraphQL id_salt value in cache configuration in the app/etc/env.php file.

v2002.1.12

Release date: September 13, 2022

  • new icon Enable synchronous_replication—ECE-Tools sets synchronous_replication=>true in the app/etc/env.php file when MYSQL_USE_SLAVE_CONNECTION is enabled. This configuration affects only Commerce 2.4.6+. See the MYSQL_USE_SLAVE_CONNECTION variable description in the Deploy variables.
  • new icon OpenSearch—Added functionality to configure and set the opensearch engine for the next Adobe Commerce release 2.4.6. See Set up OpenSearch service.

v2002.1.11

Release date: August 4, 2022

  • fix icon ElasticSuite Validator and OpenSearch—Fixed ElasticSuite integrity check validator issue when OpenSearch is installed.
  • fix icon Return types for deploy commands—Fixed return types for deploy commands.
  • fix icon RabbitMQ issue with new Commerce 2.4.5 installation—Fixed RabbitMQ crash issue on new Commerce 2.4.5. installation.

v2002.1.10

Release date: March 31, 2022

  • fix icon Elasticsearch 7.10—Updated validators to support the 7.10 version of Elasticsearch.

v2002.1.9

Release date: March 10, 2022

  • new icon OpenSearch—Added support for OpenSearch for Adobe Commerce versions 2.4.4, 2.4.3-p2, and 2.3.7-p3.

  • new icon PHP—Added support for PHP 8.1.

  • fix icon symfony/process—Added the compatibility with symfony/process ^5.3.

  • new icon Consumer multiple processes—Added a multiple_processes option so that you can specify the number of processes to spawn for each consumer. See the CRON_CONSUMERS_RUNNER variable description in the Deploy variables.

  • new icon OpenSearch scheme and full host path—Added the ability to configure an Elasticsearch scheme and full host path.

  • fix icon AWS S3—Changed the method of AWS S3 enablement.

  • fix icon Fix driver_options reader—Added reading driver_options configuration for DB connection from the env.php file by ece-tools for validators.

v2002.1.8

Release date: October 25, 2021

  • new icon Alternative dump location—Added the --dump-directory option so that you can choose a target directory for a DB dump. Now /app/var/dump-main is the default target directory for a DB dump. See Backup management: Dump your database
  • fix icon Update Monolog—Updated the minimum version required for the monolog package to ^2.3.
  • fix icon Update Symfony—Updated the Symfony dependencies to be compatible with Adobe Commerce 2.4.4.
  • fix icon Feature/resolve autoload—Fixed an issue when deploying to an integration environment and seeing the CRITICAL: [9] Required configuration is missed in autoload section of composer.json file. error.

v2002.1.7

Release date: July 29, 2021

Configuration updates

  • new icon Added support for Composer 2.0.

  • fix icon Updated composer requirements for symphony/console—Updated the ECE-Tools composer.json version requirements for the symphony/console package to fix an issue that caused the di:compile commands to fail with the following error: Incompatible argument type: Required type: int. Actual type: string

  • fix icon Updated the end-of-life software checks (eol.yaml) to include Elasticsearch 7.9.x.

v2002.1.6

Release date: April 20, 2021

  • new icon Redis authentication credentials—Added the ability to read Redis authorization credentials from the relationships property during the deploy phase.

  • new icon Elasticsearch authorization credentials—Added the ability to read Elasticsearch authorization credentials from the relationships property during the deploy phase.

  • new icon Dedicated session storage service—Added redis-session as a second option for session storage. You can use the redis-session service to store session information and use the redis service for cache to provide better performance.

  • new icon Deprecated SPLIT_DB messages—Added validator warning and critical messages for the deprecated SPLIT_DB option for Adobe Commerce 2.4.2 and its removal in Adobe Commerce 2.5.0.

  • fix icon Elasticsearch version from relationships—Fixed Service validator to retrieve the correct version of Elasticsearch from the relationships properties in Cloud Docker and integration environments.

  • fix icon Flexible Redis port validation—Redis can now validate the port in a custom cache connection from the server URL. For example, you can add your port number to your server URL as follows: server: 'tcp://rfs-store-simple-page-cache:26379'. This helps prevent validation errors where the port option is either missing or incorrect.

  • fix icon Upgrading to Adobe Commerce 2.4.2—Fixed the issue that required users to manually run bin/magento setup:upgrade to make their sites operational after upgrading to Adobe Commerce 2.4.2.

v2002.1.5

Release date: February 1, 2021

  • new icon Remote storage—Added the REMOTE_STORAGE environment variable to enable Cloud Projects for remote storage of media files using a storage service, such as AWS S3. This configuration option is part of the ECE-Tools package, but is not supported on Adobe Commerce on cloud infrastructure.

  • new icon New cloud:config:validate command—Added command php vendor/bin/ece-tools cloud:config:validate to validate the .magento.env.yaml configuration before pushing changes to the remote Cloud environment.

  • new icon Flushing the opcache—Added support for the opcache.enable_cli PHP option to flush the OPcache before running the deploy hook. This configuration resets the cache configuration to ensure that the current configuration settings are applied on each deployment.

  • new icon Validation of Aurora DB—Updated the database service validation so that it is compatible with the Aurora database.

  • new icon New SCD_NO_PARENT environment variable—Added the SCD_NO_PARENT environment variable (for Adobe Commerce >=2.4.2) to manage the generation of static content for parent themes.

  • fix icon Memory limits and commands—Fixed an issue where php vendor/bin/ece-tools commands would not work if the size of the cloud.log file exceeded the PHP memory_limit. Instead of reading the entire cloud.log file into memory, we now only read a smaller subset of data from the log file.

  • fix icon Custom database connections—Fixed a .magento.env.yaml configuration issue in which custom database connections defined for DATABASE_CONFIGURATION were not used. The connection settings were not being added to app/etc/env.php.

  • fix icon Empty error logs—Fixed an issue that caused deployments to fail if the cloud.error.log was empty.

  • fix icon MariaDB 10.3 validation—Fixed validation of MariaDB 10.3 for Adobe Commerce 2.3.6-p1.

  • fix icon Cache:flush logging—Improved log entries to indicate the start and finish of the cache:flush step.

v2002.1.4

Release date: November 19, 2020

  • fix icon Fixed an issue that caused deployment failure when the search engine specified in the SEARCH_CONFIGURATION environment variable is a value other than elasticsearch.

v2002.1.3

Release date: November 9, 2020

Infrastructure updates

  • new icon Added ECE-Tools support for the read-only pub/static directory when static content is set to deploy in the build stage.

  • new icon Added support for Elasticsearch 7.9 and Redis 6 for compatibility with upcoming Adobe Commerce releases.

  • fix icon Updated the ECE-Tools composer.json to add a required dependency for the Quality Patches Tool. This fixes a circular dependency that existed between the ECE-Tools and magento-cloud-patches packages.

Validation and log improvements

  • new icon Added search-engine validation to ensure that elasticsearch is set for Adobe Commerce on cloud infrastructure 2.4 and later. If the validation fails, the deployment is stopped with a critical error message that suggests fixes for the issue. See Critical Errors, Deploy stage.

  • new icon Added Elasticsearch validation to check the compatibility between the Elasticsearch service version and the Adobe Commerce version.

  • new icon Updated the Elasticsearch compatibility error message to show the versions of Elasticsearch that are compatible with the Adobe Commerce Elasticsearch module. The error message now provides the specific Elasticsearch versions to install in your Cloud infrastructure so that it is compatible with the Elasticsearch module used by your version of Adobe Commerce. See Warning Errors, Deploy stage.

  • new icon Added warning errors 2026 and 2027 for invalid MAGE_MODE environment variable setting. The only valid value is production. Before this fix, MAGE_MODE could be set to developer without deployment errors, only to cause errors later when trying to write to read-only files. See Warning Errors.

  • fix icon Fixed validation for Redis, RabbitMQ, and MySQL services to ensure that these versions are compatible with the Adobe Commerce version. Valid versions of these services are now written to the cloud.log.

  • fix icon Updated the cloud.log to include the concurrent requests limit for sending requests during cache warmup. This value is configured in the WARM_UP_CONCURRENCY post-deploy variable.

CLI command updates

  • new icon Added CLI commands (cloud:config:create and cloud:config:update) to create and update the .magento.env.yaml file with a configuration that can include one or more build, deploy, and post-deploy variables. See Create configuration file from CLI.

Environment variable updates

  • new icon Added the SKIP_COMPOSER_DUMP_AUTOLOAD build variable. Setting the variable to true stops the application from running the composer dump-autoload command during a Cloud Docker for Commerce installation. The variable is only relevant to Cloud Docker for Commerce containers with writable file systems (created for testing and development using ./vendor/bin/ece-docker build:compose --with-test). With such installations, skipping the composer dump-autoload command prevents errors when running other commands that try to access files from a deleted generated directory.

v2002.1.2

Release date: August 5, 2020

Validation and log improvements

  • new icon Added the schema.error.yaml file that includes all error and warning notifications that can occur during the build, deploy, and post-deploy process along with suggestions for resolving the errors. The information in this file is also available in the Cloud Guide for Commerce. See Error message reference for ece-tools.

  • new icon Changed the Cloud error log (/var/log/cloud.error.log) entries to JSON format to make the log easier to parse programmatically.

  • new icon Added additional error checks to build, deploy, and post-deploy processing and improved existing checks:

    • Error code 2026—Failed to restore some data generated during the build phase to the mounted directories

    • Error code 3004—Cannot create backup files

    • Error code 102—Added additional checks for issues that occur when the env.php file is not writable

  • new icon Added the QUALITY_PATCHES environment variable to specify one or more quality patches to apply during the deployment process. See Build variables.

v2002.1.1

Release date: June 25, 2020

  • new icon Infrastructure updates

    • new icon Logging improvements—Improved log-tracking capability by assigning exit codes to critical deploy errors and exposing the exit codes in error message notifications and log events. See Error message reference for ece-tools.

    • new icon Improved the process for database dumps (vendor/bin/ece-tools db-dump) and updated log messages to clarify that the database dump operation switches the application to maintenance mode, stops consumer queue processes, and disables cron jobs before the dump begins.

    • fix icon Fixed an issue to ensure that the project URL is updated correctly when deploying to Staging and Production environments. Now, ece-tools uses the URL for the route with the primary:true attribute set in the project route configuration. See Deploy variables.

    • fix icon Updated the generate.xml build scenario workflow for applying patches. Patches must be applied earlier to update Adobe Commerce to fix any issues that might cause the di:compile and module:refresh steps to fail.

    • fix icon Fixed an issue in the installation process that incorrectly returns the Crypt key missing error. The crypt/key value is generated automatically during the installation.

  • new icon Service updates

    • new icon Added support for PHP 7.4 and MariaDB 10.4.
  • new icon Environment variable updates

    • new icon Added the SCD_USE_BALER variable to enable the Baler module for JavaScript bundling during the Adobe Commerce on cloud infrastructure build process. See the variable description in the build variables.

    • new icon Added the REDIS_BACKEND environment variable to configure the Redis backend model for Redis cache for Adobe Commerce 2.3.5 or later. See the variable description in the deploy variables.

  • new icon CLI command updates

    • new icon Updated the following CLI commands with an option for more detailed logging:

      • app:config:dump
      • app:config:import
      • module:enable

      The logging level for each call is determined by the configuration of the VERBOSE_COMMANDS variable in the .magento.env.yaml file.

  • new icon Validation improvements

    • new icon Elasticsearch 7.x compatibility checks—Updated Elasticsearch validation for Elasticsearch 7.x software compatibility checks.

    • new icon Updated service version and EOL validation checks—Updated validation to check installed service versions against Adobe Commerce 2.4. requirements.

    • fix icon Fixed a validation issue so that the following post-deploy warning message displays only if the post-deploy hook configuration is missing from the .magento.app.yaml file:

      code language-text
      Your application does not have the "post_deploy" hook enabled.
      
    • new icon Added validation for Zend Framework dependencies—Added composer dependency validation for the Zend Framework which has migrated to the Laminas project. If the required dependencies are missing, the following error message displays during the build process.

      code language-text
      Required configuration is missing from the autoload section of the composer.json file.
      Add ("Laminas\Mvc\Controller\Zend\": "setupsrc/ Zend/Mvc/Controller/") to
      the `autoload -> psr-4` section. Then, re-run the "composer update" command locally, and
      commit the updated composer.json and composer.lock files.
      

      See Verify Zend Framework dependencies.

    • new icon Added validation for env.php file and data—Added checks for the env.php file and data during the install and upgrade process.

      • If the env.php file is missing from the installation, and the crypt/key value is not specified in the .magento.app.yaml file, the deployment fails with the following notification:

        code language-text
        The crypt/key key value does not exist in the ./app/etc/env.php file or the CRYPT_KEY cloud environment variable``Missing crypt key for upgrading Magento`.
        
      • If the installation does not include the env.php file, or the configuration contains only one cache type, the cron:enable command runs during the upgrade process to restore the file with all cache_types. The following notification is added to the log:

        code language-text
        Magento state indicated as installed but configuration file app/etc/env.php was empty or did not exist.
        Required data will be restored from environment configurations and from the .magento.env.yaml file.
        

v2002.1.0

Release date: February 6, 2020

05f2f56e-ac5d-4931-8cdb-764e60e16f26