Project structure
An Adobe Commerce on cloud infrastructure project includes essential files for credentials and application configuration. These files are available in as template according to the Adobe Commerce version. See the cloud templates based on Adobe Commerce version in the magento/magento-cloud
GitHub repository.
The following table describes the files included in a cloud project:
/.magento/routes.yaml
www
to the apex domain and php
application to serve HTTP. See Configure routes./.magento/services.yaml
/app
code
folder is used for custom modules. The design
folder is used for custom themes. The etc
folder contains configuration files for the application./m2-hotfixes
/update
.gitignore
.gitignore
reference..magento.app.yaml
.magento.env.yaml
ece-tools
package includes a sample of this file. See Configure environments.composer.json
composer.lock
magento-vars.php
.magento
directory, then the script deletes the directory and its contents. Your local development environment is not affected.Application root directory
The location of the application root directory depends on the environment.
- Starter and Pro Integration:
/app
- Starter Production:
/<project-ID>
- Pro Staging:
/<project-ID>_stg
- Pro Production:
/<project-ID>
Writable directories
The remote Integration, Staging, and Production environments are read only. The following directories are the only writable directories for security reasons:
var
pub/static
pub/media
app/etc
/tmp
/tmp
directory that is not shared with the other nodes.Ignore files
There is a base .gitignore
file with the Adobe Commerce on cloud infrastructure project repository. See the latest .gitignore file in the magento-cloud repository. To add a file that is in the .gitignore
list, you can use the -f
(force) option when staging a commit:
git add <path/filename> -f
Change base template
You can use the following steps to change the structure of an existing project to reflect the latest base template for Adobe Commerce on cloud infrastructure.
-
Clone the project to a local workstation.
-
Update the
composer.json
file with the following values for theextra
section.code language-json "extra": { "magento-force": true "magento-deploystrategy": "copy" }
-
Add the
.gitignore
file designed for the base template. For example, if you need the.gitignore
file for the version 2.2.6 template, use the .gitignore for 2.2.6 file as a reference. -
Clear the git cache.
code language-bash git rm -r --cached .
-
Add and commit changes.
code language-bash git add -A && git commit -m "Update base template"