Sync Upsun Cloud with your local environments to start contributing.
When you develop a Symfony project, a significant amount of work takes place
locally rather than on an active Upsun Cloud environment. You want to ensure
that the process of local development is as close as possible to a deployed
environment.You can achieve this through various approaches. For example, you can use
Symfony Server with tethered data.To do so, when testing changes locally, you can connect your locally running
Symfony Server to service containers on an active Upsun Cloud environment.This methodology has several advantages:
It avoids installing anything on your local machine except PHP.
It ensures that you are using the same versions of all services on your local
machine and in production.
Warning
Never use this method on the main environment as changes made on your local
machine will impact production data.
A local copy of the repository for a project running on Upsun Cloud.
You can clone an integrated source repository and set the remote branch.
To do so, run symfony cloud:project:set-remote PROJECT_ID.
Open an SSH tunnel to the new environment’s services:
symfony tunnel:open
This command returns the addresses for SSH tunnels to all of your services:
symfony tunnel:open SSH tunnel opened to rediscache at: redis://127.0.0.1:30000 SSH tunnel opened to database at: pgsql://main:main@127.0.0.1:30001/main Logs are written to: /Users/acmeUser/.platformsh/tunnels.log List tunnels with: symfony tunnels View tunnel details with: symfony tunnel:info Close tunnels with: symfony tunnel:close Save encoded tunnel details to the PLATFORM_RELATIONSHIPS variable using: export PLATFORM_RELATIONSHIPS="$(symfony tunnel:info --encode)"
To expose Upsun Cloud services to your Symfony app, run the following
command:
symfony var:expose-from-tunnel
This automatically configures your local Symfony app to use all your
remote Upsun Cloud services (remote database, remote Redis component, etc.).To check that you’re now using remote data and components from Upsun Cloud,
reload your local app within your browser.
When you’ve finished your work,
close the tunnels to your services by running the following command: