Deploy your store

The process for deploying and going live begins with development, continues to Staging, and ends with going live in Production. To provide the best experience for developing, testing, and deploying your store with consistent configurations we provide an end-to-end environment solution. Every environment supports direct URL access to the store and Admin console and SSH access for CLI commands.

You can fully push, merge, and deploy through the Project Web Interface or CLI commands through a terminal application.

This section provides indepth instructions and information on the build and deploy process, migrating data and content, and testing.

Starter plan deployment

We recommend creating a Staging branch from the master to best support your Starter plan development and deployment. With this in place, you have two of your four active environments ready: master for Production and staging for Staging.

Now you are ready to develop and deploy:

  1. Create development branches from the staging branch. This allows you to merge up through Staging and Production.
  2. Develop on local: custom modules, Magento extensions, 3rd party integrations, and configurations.
  3. Push your local branch to the Git remote branch to test in a full environment.
  4. To fully test in a near-production level environment, push code to a Staging branch.
  5. Fully test in the Staging environment including payment gateways, shipping, price rules, various products, and full customer and admin interactions.
  6. Finally, deploy to the Production master to complete testing, go live steps, and start selling.

For detailed information of the process, see Starter Develop and Deploy Workflow.

Pro plan deployment

Pro comes with a large Integration environment with eight active branches and environments including master, Staging, and Production. When you create your project, code is ready to branch, develop, and push for building and deploying your site. Although the Integration environment can have many branches, Staging and Production have only one branch: the deployed Git master.

  1. Create development branches from the Integration master branch.
  2. Develop on local: custom modules, Magento extensions, 3rd party integrations, and configurations.
  3. Push your local branch to the Git remote branch to test in a full environment.
  4. Merge final code to the Integration master branch.
  5. To fully test in a near-production level environment, push code to the Staging environment.
  6. Fully test in the Staging environment including payment gateways, shipping, price rules, various products, and full customer and admin interactions.
  7. Finally, deploy to the Production environment to complete testing, go live steps, and start selling.

For detailed information of the process, see Pro Develop and Deploy Workflow.

Enter a ticket for deploying hooks

For technical reasons, you need to enter a ticket to have your .magento.app.yaml file file added to Staging and Production systems. This affects all Pro projects created before and after 10-23-2017.

Create a support ticket to let us help you migrate the file and implement any deployment hooks you set up.

Among the settings you can request us to enable are Xdebug and PHPUnit, which assists you in troubleshooting any coding issues you might have during deployment. Because of its memory requirements, we recommend you disable Xdebug before your site is live.

If you have your SSH keys added to Staging and Production environments per a ticket, you can also directly SSH into the environment to use Git CLI commands for deployments.

You can optionally replace the hooks section with a shell script that you can maintain without intervention. You need only to create a support ticket the first time you'd like to use the shell script.

Git and SSH URLs

For Pro, locate your Git and SSH URLs from the OneDrive onboarding document you received when you signed up for Magento Commerce.

After you know these URLs, you can access those environments without further intervention.

  • Use the URLs to access the store as a customer.
  • Use the URL /admin to access the Admin panel.
  • (Pro) Use SSH access and Git CLI commands to deploy updated code to Staging or Production. Magento Cloud CLI commands are not available in Staging and Production.

For more information, see SSH and sFTP.

Read-only environments

You should always deploy code by pushing your local Git branch to your environments. You should only directly modify configurations for a few key extensions directly in your Staging and Production environments. If you need to fix issues, fix them in local development, push to Git, and complete the full deployment.

Next steps

To learn more, check the following: