Hi
I am new to managing Magento or any tool like this. Our current version of Magento is 2.1.7 and I need a minimum version of 2.2.0 so that I can integrate a Braintree extension so that it will be ready for Strong Customer Authentication (SCA) which is coming into effect on the 14th of Sept 2019.
Can I directly upgrade from 2.1.7 to 2.2.0 or do I need to upgrade to each version individually? Should I upgrade the available components version by version or can I upgrade straight to the latest version? What testing would be recommended after upgrading? In carrying out the upgrade, how will this effect the live website?
Any direction and help on this is greatly appreciated
Thanks
Jimmy
Hello @jimmy_smith ,
You don't need to upgrade the magento version one by one. It is good to upgrade your existing magento with the latest one directly.
Note: Please take the backup of old database and Magento code before upgrading to latest version
Then follow the below steps(execute the commands from magento root directory)
Step 1:
bin/magento maintenance:enable
Step 2: Backup the existingcomposer.json of your magento root folder
Step 3:
composer remove magento/product-community-edition --no-update
Step 4: Specify Magento packages
If your magento is community edition:
composer require magento/product-community-edition=2.3.2 --no-update
If your magento is of enterprise edition
composer require magento/product-enterprise-edition=2.3.2 --no-update
Step 5: Specify additional packages:
composer require --dev allure-framework/allure-phpunit:~1.2.0 friendsofphp/php-cs-fixer:~2.13.0 lusitanian/oauth:~0.8.10 magento/magento-coding-standard:~1.0.0 magento/magento2-functional-testing-framework:~2.3.14 pdepend/pdepend:2.5.2 phpunit/phpunit:~6.5.0 sebastian/phpcpd:~3.0.0 squizlabs/php_codesniffer:3.3.1 --sort-packages --no-update
Step 6: Remove unused packages:
composer remove --dev sjparkinson/static-review fabpot/php-cs-fixer --no-update
Step 7: Update autoload: Open composer.json and edit the "autoload": "psr-4" section to include "Zend\\Mvc\\Controller\\": "setup/src/Zend/Mvc/Controller/":
"autoload": { "psr-4": { "Magento\\Framework\\": "lib/internal/Magento/Framework/", "Magento\\Setup\\": "setup/src/Magento/Setup/", "Magento\\": "app/code/Magento/", "Zend\\Mvc\\Controller\\": "setup/src/Zend/Mvc/Controller/" }, //... }
Step 7: Backup theupdate/ directory of magento root folder
Step 8: Create composer project:
For community edition:
composer create-project --repository=https://repo.magento.com magento/project-community-edition=2.3.2 temp_dir --no-install
For Enterprise edition:
composer create-project --repository=https://repo.magento.com magento/project-enterprise-edition=2.3.2 temp_dir --no-install
Step 9:
rm -rf update
Step 10:
mv temp_dir/update .rm -rf temp_dir
Step 11:
rm -rf temp_dir
Step 12: Check the "name", "version", and "description" fields in the composer.json file as needed.
Step 13:
composer update
Step 14:
bin/magento cache:clean
Step 15:
rm -rf var/cache/* var/page_cache/* generated/code/*
Step 16:
bin/magento setup:upgrade
Step 17:
bin/magento maintenance:disable
This is all you need to do for version upgrade.
Note: It will upgrade your magento version, but you need to test the compatibility of third party modules or theme with the latest version.
If this helps you then please give us kudos and select it as solution.
Thanks sarvaga_pande
Is there any difference in running the upgrade from the Magento website?
Thanks
Jimmy
We have mentioned the standard CLI method of magento upgrade which we have used and it work fine for us.
There is another way also to upgrade magento version.
I am not sure which way you are using for upgrading magento version. It will be very helpful if you explain it a little more the method which you are using.
If it helps you then please accept it as solution and give us kudos.
Thank you.
Thanks for the response
If I run the upgrade via the Magento site it carries out readiniess checks, I presume this would validate whether i would have issues with any modules?
Thanks again
Jimmy
Thanks sarvagya_pande
I would prefer to upgrade via the Magento site as shown below:
Versions available:
:
Would there be any issues upgrading all components too? I presume the readiness check should validate any issues?
Thanks again
Jimmy
Thanks sarvagya_pande
I would prefer to upgrade via the Magento site as shown below:
Versions available:
:
Would there be any issues upgrading all components too? I presume the readiness check should validate any issues?
Thanks again
Jimmy
Thanks sarvagya_pande
As I am a new user, my images need to be moderated before they can be displayed, this may take a day or so.
I would prefer to upgrade via the Magento site. This goes through Readiness check, creates a backup and then does the system upgrade automtically. Would there be any issues upgrading all components too? Some of the components are many versions behind. Modules included all end with "sample-data", some examples:
I presume the readiness check should validate any issues? Can you see any problems using the site to upgrade as opposed to the CLI?
Thanks again
Jimmy
i know its very old topic
i get:
Problem 1
- Root composer.json requires magento/product-community-edition 2.3.2 -> satisfiable by magento/product-community-edition[2.3.2].
- magento/product-community-edition 2.3.2 requires php ~7.1.3||~7.2.0 -> your php version (7.3.33) does not satisfy that requirement.
Problem 2
- Root composer.json requires magento/magento2-functional-testing-framework ~2.3.14 -> satisfiable by magento/magento2-functional-testing-framework[2.3.14].
- magento/magento2-functional-testing-framework 2.3.14 requires php 7.0.2|7.0.4|~7.0.6|~7.1.0|~7.2.0 -> your php version (7.3.33) does not satisfy that requirement.
Problem 3
- friendsofphp/php-cs-fixer[v2.13.0, ..., v2.13.3] require php ^5.6 || >=7.0 <7.3 -> your php version (7.3.33) does not satisfy that requirement.
- Root composer.json requires friendsofphp/php-cs-fixer ~2.13.0 -> satisfiable by friendsofphp/php-cs-fixer[v2.13.0, v2.13.1, v2.13.2, v2.13.3].
But php -v shows PHP 7.2.34