The Update Assistant module is available through the Command-Line Interface (CLI). Its main advantage is its ability to
integrate seamlessly with a CI/CD pipeline, enabling the automation of update, backup, and restore processes.
Additionally, it can be executed manually through the CLI to bypass common configuration constraints on Apache or Nginx,
such as php-cgi and php-fpm limitations (e.g., memory_limit, max_execution_time, etc.).
The CLI interface is a unified tool that provides a consistent interface for interacting with all Update Assistant module services.
To use this CLI, the Update Assistant module must be present in the /modules folder on your PrestaShop store server.
It is not necessary to have installed the module in order to use the associated CLI.
The CLI of the Update Assistant module is based on the Symfony console, and therefore follows the main principles of this technology.
Below you’ll find the Update Assistant CLI user guide, with descriptions, syntax and examples of use. All the commands are run from the module in the folder modules/autoupgrade of your store and must not be mistaken with the bin/console of PrestaShop.
The bin/console file acts as the entry point to the Update Assistant Command-Line interface. When run without any
parameters, it displays the available commands and associated general options.
Example of bin/console command execution:
$ php bin/console
Update Assistant 7.x.x
Usage:
command [options] [arguments]
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
completion Dump the shell completion script
help Display help for a command
list List commands
backup
backup:create Create backup.
backup:delete Delete a store backup file.
backup:list List all available backups.
backup:restore Restore the store to a previous state from a backup file.
update
update:check-modules Check module compatibility and updates.
update:check-new-version List Prestashop updates available for the store.
update:check-requirements Check all prerequisites for an update.
update:start Update your store.
This command lists the Update Assistant CLI commands.
Example of list command execution:
$ php bin/console list
Available commands:
completion Dump the shell completion script
help Display help for a command
list List commands
backup
backup:create Create backup.
backup:delete Delete a store backup file.
backup:list List all available backups.
backup:restore Restore the store to a previous state from a backup file.
update
update:check-modules Check module compatibility and updates.
update:check-new-version List Prestashop updates available for the store.
update:check-requirements Check all prerequisites for an update.
update:start Update your store.
This command allows you to access the documentation for a particular option. The help command is one of the Symfony Console component’s built-in global options, and is therefore available for all the Update Assistant CLI commands.
Example of help command execution:
$ php bin/console backup:list --help [command]
You can download backup, update and restore logs to keep track of any changes you made. These logs in
yyyy-dd-mm-hhmmss-process.txt format are available in the following folder on your PrestaShop store server:
/your-admin-directory/autoupgrade/logs. These CLI logs contain the date and time that correspond to the time zone
configured on your store server.
The Update Assistant CLI includes 4 commands dedicated to backup management:
backup:createbackup:listbackup:restorebackup:deleteThe backup:create command is used to create a backup of your PrestaShop store. These backup files are stored in the
/your-admin-directory/autoupgrade/backup folder on your server.
$ php bin/console backup:create --help
Description:
Create backup.
Usage:
backup:create [options] [--] <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
--config-file-path=CONFIG-FILE-PATH Configuration file location.
--include-images=INCLUDE-IMAGES Include, or not, images in the store backup.
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command triggers the creation of the files and database backup.
The <admin-dir> argument is mandatory and is used to target the correct resource.
The optional --include-images=[1|0] option allows you to include, or not, the image backup during the backup process.
By default, if the option is not set, images are included in the backup.
The optional --from-config-file=CONFIG-FILE-PATH option allows you to use the backup options specified in the configuration file.
You must specify the location (--from-config-file=.../folder1/configfile) of this CONFIG-FILE-PATH file.
Example of backup:create command execution:
$ php bin/console backup:create admin123 --include-images=1
Your files, database, and images will be backed up.
Starting backup...
The backup:list command lists the backups available for your PrestaShop store.
$ php bin/console backup:list --help
Description:
List all available backups.
Usage:
backup:list <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command list all available backups for the store.
The <admin-dir> argument is mandatory and is used to target the correct resource.
Example of the backup:list command execution:
$ php bin/console backup:list admin123
------------------+---------------+-----------------------------------------+
| Date | Version | File name |
+-----------------+---------------+-----------------------------------------+
| 15/07/2024 8:00 | 8.1.6 | autoupgrade_save_8.1.6_15/07/2024_8:00 |
| 14/07/2024 8:00 | 8.1.5 | autoupgrade_save_8.1.5_14/07/2024_8:00 |
The backup:restore command is used to restore your PrestaShop store from backup files in the /your-admin-directory/autoupgrade/backup folder on your server.
$ php bin/console backup:restore --help
Description:
Restore the store to a previous state from a backup file.
Usage:
backup:restore [options] [--] <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
--backup=BACKUP Specify the backup name to restore (this can be found in your folder <admin directory>/autoupgrade/backup/)
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command allows you to restore the store to a previous state from a backup file.See https://devdocs.prestashop-project.org/9/basics/keeping-up-to-date/upgrade-module/upgrade-cli/#rollback-cli for more details
The <admin-dir> argument is mandatory and is used to target the correct resource.
The [BACKUP] argument is intended to target the backup file (file_name) to be used for the store restore.
Example of backup:restore command execution:
$ php bin/console backup:restore admin123 autoupgrade_save_8.1.6_15/07/2024_8:00
The restoration of your store is complete
This command also supports the “interactive mode”, which provides you with a contextual action, such as:
$ php bin/console backup:restore admin123
Please select your backup:
[0] Date: 12/19/24 10:48:43, Version: 8.1.5, File name: V8.1.5_20241219-104843-XXX
[1] Date: 12/19/24 09:44:50, Version: 8.1.5, File name: V8.1.5_20241219-094450-XXX
[2] Exit the process
The backup:delete command is used to delete a backup file from your PrestaShop store.
$ php bin/console backup:delete --help
Description:
Delete a store backup file.
Usage:
backup:delete [options] [--] <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
--backup=BACKUP Specify the backup name to delete. The allowed values can be found with backup:list command)
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command allows you to delete a store backup file.
The <admin-dir> argument is mandatory and is used to target the correct resource.
The [BACKUP] argument is intended to target the backup file (file_name) to be deleted.
Example of backup:delete command execution:
$ php bin/console backup:delete admin123 autoupgrade_save_8.1.6_15/07/2024_8:00
The backup file has been successfully deleted
This command also supports the “interactive mode”, which provides you with a contextual action, such as:
$ php bin/console backup:delete admin123
Please select your backup:
[0] Date: 12/19/24 10:48:43, Version: 8.1.5, File name: V8.1.5_20241219-104843-XXX
[1] Date: 12/19/24 09:44:50, Version: 8.1.5, File name: V8.1.5_20241219-094450-XXX
[2] Exit the process
The Update Assistant CLI includes 4 commands dedicated to updates:
update:check-new-versionupdate:check-requirementsupdate:check-modulesupdate:startThe update:check-new-version command is used to check whether new updates are available for your store.
$ php bin/console update:check-new-version --help
Description:
List Prestashop updates available for the store.
Usage:
update:check-new-version <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command allows you to list Prestashop updates available for the store.
The <admin-dir> argument is mandatory and is used to target the correct resource.
Example of the update:check-new-version command execution:
$ php bin/console update:check-new-version admin123
+---------+--------------------+-------+--------------------------------------------------------------------------------------+
| Version | Channel | Type | Information |
+---------+--------------------+-------+--------------------------------------------------------------------------------------+
| 8.2.3 | online_recommended | minor | https://build.prestashop-project.org/news/2025/prestashop-8-2-3-security-release/ |
| 9.0.1 | online | major | https://build.prestashop-project.org/news/2025/prestashop-9-0-1-maintenance-release/ |
| 9.0.0 | local | major | Zip: 2024-10-17-develop-prestashop_9_0_0.zip |
| | | | Xml: prestashop_9.0.0.xml |
| 8.1.1 | local | patch | Zip: 8_1_1.zip |
| | | | Xml: 8.1.1-2.xml, 8.1.1.xml |
+---------+--------------------+-------+--------------------------------------------------------------------------------------+
The Channel column indicates the source and type of the available update:
online_recommended: The recommended update for your store, detected by PrestaShop APIs (major, minor or patch versions). This update corresponds to the most stable and well-tested version of PrestaShop compatible with the PHP version of your server. The recommended version represents the safest upgrade path for your store.online: The latest update available for your store, which corresponds to the most recent version of PrestaShop compatible with the PHP version of your server. This version may differ from the recommended version.local: Customized updates detected in your /your-admin-directory/autoupgrade/download folder on your server.Depending on the current state of PrestaShop releases, the command output may show:
online_recommended) and a latest version (channel online) when they differ.online_recommended) when the recommended version is also the latest.online) when no specific version is marked as recommended.local) in addition to online versions, if custom update files are detected on your server.The update:check-requirements command is used to check that your store meets the technical requirements before updating.
$ php bin/console update:check-requirements --help
Description:
Check all prerequisites for an update.
Usage:
update:check-requirements [options] [--] <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
--config-file-path=CONFIG-FILE-PATH Configuration file location for update.
--channel=CHANNEL Selects what update to run ('local' / 'online_recommended' / 'online')
--zip=ZIP Sets the archive zip file for a local update.
--xml=XML Sets the archive xml file for a local update.
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command allows you to check the prerequisites necessary for the proper functioning of an update.
The <admin-dir> argument is mandatory and is used to target the correct resource.
The --from-config-file=CONFIG-FILE-PATH option is used to check prerequisites based on information provided in the configuration file. You must specify the location (--from-config-file=.../folder1/configfile) of this CONFIG-FILE-PATH file.
The --zip=ZIP and --xml=XML options allow you to specify a .zip file and an .xml file to be used to check prerequisites from the “local” source. The “local” update, which displays customized updates detected in your /your-admin-directory/autoupgrade/download folder on your server.
You can download the desired .zip and .xml files from the Releases section of PrestaShop’s GitHub repository.
By default, if no option is set, the prerequisites will be checked from the “online_recommended” source. The official “online_recommended” update for your store, detected by PrestaShop APIs (major, minor or patch versions). This update corresponds to the most recent and stable version of PrestaShop compatible with the current store installation.
Example of execution of the update:check-requirements command, if all prerequisites have been successfully met:
$ php bin/console update:check-requirements admin123
Checking requirements...
✓ The requirements check is complete, you can update your store to this version of PrestaShop.
Example of execution of the update:check-requirements command, if some prerequisites are not met:
$ php bin/console update:check-requirements admin123
Checking requirements...
X PHP's "Safe mode" needs to be disabled.
X Maintenance mode needs to be enabled. Enable maintenance mode and add your maintenance IP in Shop parameters > General > Maintenance.
⚠ Your current version of the module is out of date. Update now Modules > Module Manager > Updates
The update:check-modules command is used to check that the modules installed on the store are compatible with the new version of PrestaShop. The command update:check-requirements will invite you to run it when it finds a module that requires attention.
$ bin/console update:check-modules admin-dev --help
Description:
Check module compatibility and updates.
Usage:
update:check-modules [options] [--] <admin-dir>
Arguments:
admin-dir Name of the admin directory.
Options:
--config-file-path=CONFIG-FILE-PATH Configuration file location for update.
--channel=CHANNEL Select which update channel to use ('local' / 'online_recommended' / 'online')
--zip=ZIP Sets the archive zip file for a local channel.
--xml=XML Sets the archive xml file for a local update.
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command checks the installed modules for compatibility with the target PrestaShop version and lists available updates.
The <admin-dir> argument is mandatory and is used to target the correct resource.
The --from-config-file=CONFIG-FILE-PATH option is used to check prerequisites based on information provided in the configuration file. You must specify the location (--from-config-file=.../folder1/configfile) of this CONFIG-FILE-PATH file.
The --zip=ZIP and --xml=XML options allow you to specify a .zip file and an .xml file to be used to check prerequisites from the “local” source. The “local” update, which displays customized updates detected in your /your-admin-directory/autoupgrade/download folder on your server.
You can download the desired .zip and .xml files from the Releases section of PrestaShop’s GitHub repository.
By default, if no option is set, the prerequisites will be checked from the “online_recommended” source. The official “online_recommended” update for your store, detected by PrestaShop APIs (major, minor or patch versions). This update corresponds to the most recent and stable version of PrestaShop compatible with the current store installation.
Example of execution of the update:check-modules command, if all modules are compatible:
$ php bin/console update:check-modules admin-dev
Prestashop version: 8.2.4
Retrieving modules informations, please wait...
Retrieving modules informations: Done.
✔ There is no action needed on the installed modules for this update.
Example of execution of the update:check-modules command, if some modules require attention:
$ php bin/console update:check-modules admin-dev
Prestashop version: 8.2.4
Retrieving modules informations, please wait...
Retrieving modules informations: Done.
✘ 5 incompatible modules
These modules are known to be incompatible with PrestaShop 8.2.4. They will be uninstalled before updating the store:
contactform
psgdpr
ps_edition_basic
ps_themecusto
statsdata
⚠ 1 uncertain modules
The compatibility of the following modules with the destination version of PrestaShop cannot be checked. It could be because they are homemade or have been unlisted from the Marketplace. Please review them via the Module Manager:
gamification
The update:start command is used to update your PrestaShop store.
$ php bin/console update:start --help
Description:
Update your store.
Usage:
update:start [options] [--] <admin-dir>
Arguments:
admin-dir The admin directory name.
Options:
--chain True by default. Allows you to chain update commands automatically. The command will continue executing subsequent tasks without requiring manual intervention to restart the process.
--no-chain Prevents chaining of update commands. The command will execute a task and then stop, logging the next command that needs to be run. You will need to manually restart the process to continue with the next step.
--channel=CHANNEL Selects what update to run ('local' / 'online_recommended' / 'online')
--zip=ZIP Sets the archive zip file for a local update
--xml=XML Sets the archive xml file for a local update
--disable-non-native-modules=DISABLE-NON-NATIVE-MODULES Disable all modules installed after the store creation (1 for yes, 0 for no). Ignored for PrestaShop v9 and above.
--regenerate-email-templates=REGENERATE-EMAIL-TEMPLATES Regenerate email templates. If you've customized email templates, your changes will be lost if you activate this option (1 for yes, 0 for no)
--disable-all-overrides=DISABLE-ALL-OVERRIDES Overriding is a way to replace business behaviors (class files and controller files) to target only one method or as many as you need. This option disables all classes & controllers overrides, allowing you to avoid conflicts during and after updates (1 for yes, 0 for no)
--config-file-path=CONFIG-FILE-PATH Configuration file location for update.
--action=ACTION Advanced users only. Sets the step you want to start from. Only the "UpdateInitialization" task updates the configuration. (Default: UpdateInitialization, see https://devdocs.prestashop-project.org/9/basics/keeping-up-to-date/update/update-from-the-cli for other values available)
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Help:
This command allows you to start the update process. Advanced users can refer to the https://devdocs.prestashop-project.org/9/basics/keeping-up-to-date/update/update-from-the-cli for further details on available actions
The <admin-dir> argument is mandatory and is used to target the correct resource.
The --from-config-file=CONFIG-FILE-PATH option is used to update from the information provided in the configuration file.
You must specify the location (--from-config-file=.../folder1/configfile) of this CONFIG-FILE-PATH file.
The --zip=ZIP and --xml=XML options allow you to specify a .zip file and an .xml file to be used for a “local” update.
The “local” update, which displays customized updates detected in your /your-admin-directory/autoupgrade/download folder on your server.
By default, if no option is set, the prerequisites will be checked from the “online_recommended” source. The official “online_recommended” update for your store, detected by PrestaShop APIs (major, minor or patch versions). This update corresponds to the most recent and stable version of PrestaShop compatible with the current store installation.
Example of update:start command execution:
$ php bin/console update:start admin123
Starting update...
Destination version: 9.0.0
Downloading step has been skipped, upgrade process will now unzip the local archive.
Store deactivated. Extracting files...
...
Store updated to 9.0.0. Congratulations! You can now reactivate your store.