Find the Exponential Software extensions you want
| UNIX name | Owner | Status |
|---|---|---|
| platformsh-migration | 7x | stable |
| Version | Compatible with |
|---|---|
| N/A | N/A |
This utility allows very ealsy to transfer project from one Platform.sh instance/region to another and change organization.
domain1.com =>
domain2.com =>
domain3.com => .ccplatform.net =>
.... =>
domainX.com =>
You can migrate your project from one Platform.sh instance to another (including multiple environments), just by running this command:
./migrate.sh
Then answer questions to define:
Alternatively, you can run all those steps manually:
Setup Platform.sh project IDs (please ignore prompts to redeploy the project):
./steps/set_projects.sh
Copy project title, users, variables and setup deploy key:
./steps/copy_project.sh
For each environment you need to: copy it, update its settings, copy environment variables and copy GIT branches:
./steps/copy_environment.sh main
./steps/copy_environment.sh stage
Sync data (mounts, DB) for an environment:
./steps/copy_data.sh main app
./steps/copy_data.sh stage app
note: please provide environment (main | stage) and service (app) having the database relationship.
Remove all assigned domains from old project and assign them to new one:
./steps/project/transfer_domains.sh
Script will ask you to point project domains to edge host of new Platform.sh instance. You can do this later, but in this case, additional manual redeploy will be required to update SSL certificates.
At any point you can sync additional environments manually:
./steps/copy_environment.sh feature1
./steps/copy_data.sh feature1 app
./steps/copy_environment.sh feature2
./steps/copy_data.sh feature2 app
note: For `copy_data.sh script`` please provide environment (feature1 | feature2) and service (app) having the database relationship.
Please note, this script will ask to make some manual actions:
But there are some other things you need to set up manually, and there will be no prompt for them in the script:
comment: <> FHK: done as i add a new parameter to the copy_data.sh script to define which service contains the db, and then, platform db:dump do the trick to retrieve the corresponding relationship