When you create your project, you receive a cloned repository of Magento Commerce (Cloud) code.
Local project directory structure
Not including the Magento application itself, your local project has the following structure:
When you push your local environment to the remote server, our deploy script uses the values defined by configuration files in the
.magento directory, then the script deletes the directory and its contents. Your local development environment isn't affected.
Magento application root directory
The Magento application root directory is located in different locations depending on the environment.
- Integration environment: the Magento application is located in the
- Production environment: the Magento application is located in the
- Integration environment the Magento application is located in the
- Staging environment the Magento application is located in the
- Production environment the Magento application is located in the ` /
In Integration, Staging, and Production, only the following directories are writable due to security reasons:
In Production, each node in the three-node cluster has a
/tmp directory that is not shared with the other nodes.
Logs for all environments are located under the
/var/log directory. You can access that directory by opening an SSH tunnel to the environment using the
magento-cloud environment:ssh -e <environment id> command.
For Pro, the deployment log for Staging and Production is located in
Magento logs are located in the
<magento root dir>/var/log directory.
You can also set up log-based Slack and email notifications.
After pushing to your environment, you can see the results of the both hooks. Logs from the build hook are redirected to the output stream of
git push, so you can observe them in the terminal or capture them (along with error messages) with
git push > build.log 2>&1.
You can review these logs via SSH into the environment. Change to the directories listed below to review the logs.
Logs from the deploy hook are located on the server in the following locations:
The value of
<project ID> depends on the project ID and whether the environment is Staging or Production. For example, with a project ID of
yw1unoukjcawe, the Staging environment user is
yw1unoukjcawe_stg and the Production environment user is
For example, on the Staging environment for project
yw1unoukjcawe, the deploy log is located at
For Production, you have a three node structure. Logs are available with specific information for that node. For example, on the Production environment for project
yw1unoukjcawe, the deploy log is located at node 1
/var/log/platform/1.yw1unoukjcawe/post_deploy.log, node 2
/var/log/platform/2.yw1unoukjcawe/post_deploy.log, and node 3
Logs for all deployments that have occurred on this environment are appended to this file. Check the timestamps on log entries to verify and locate the logs you want for a specific deployment.
The actual log output is highly verbose to allow troubleshooting. The following is a condensed example:
The deploy log contains start and stop messages for each of the two hooks:
Start deploy., and
To review other application logs in Staging or Production, you can access and review those logs in
For Pro plan Staging, the project ID has
_stg at the end. For example, if you receive 500 errors in Staging and want to review the nginx logs, you can SSH to the Staging environment and locate the logs in
For Pro plan Production, you have three nodes to check for logs.