{"id":25898433,"url":"https://github.com/upsun/bigfoot-multiapp-example","last_synced_at":"2025-10-08T09:58:52.385Z","repository":{"id":227624183,"uuid":"771604701","full_name":"upsun/bigfoot-multiapp-example","owner":"upsun","description":null,"archived":false,"fork":false,"pushed_at":"2024-03-14T09:24:35.000Z","size":1077,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-03-14T10:32:32.483Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/upsun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-13T15:52:40.000Z","updated_at":"2024-03-14T10:33:25.126Z","dependencies_parsed_at":"2024-03-14T10:32:55.729Z","dependency_job_id":"029bd1fb-9a70-44d6-8893-27591ce65982","html_url":"https://github.com/upsun/bigfoot-multiapp-example","commit_stats":null,"previous_names":["upsun/bigfoot-multiapp-example"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upsun%2Fbigfoot-multiapp-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upsun%2Fbigfoot-multiapp-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upsun%2Fbigfoot-multiapp-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upsun%2Fbigfoot-multiapp-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/upsun","download_url":"https://codeload.github.com/upsun/bigfoot-multiapp-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241587821,"owners_count":19986628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-03T00:18:44.933Z","updated_at":"2025-10-08T09:58:47.331Z","avatar_url":"https://github.com/upsun.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"right\"\u003e\n\u003ca href=\"https://platform.sh\"\u003e\n   \u003csvg viewBox=\"0 0 200 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\n      \u003cpath d=\"M200 0h-33.078v13.06H200V0zM200 28.422h-33.078v4.448H200v-4.448zM200 17.283h-33.078v6.701H200v-6.7zM0 16.222h4.183v2.49a6.21 6.21 0 012.201-2.073 6.06 6.06 0 013.082-.8 6.465 6.465 0 015.017 2.318 9.362 9.362 0 012.062 6.453 9.674 9.674 0 01-2.074 6.604 6.49 6.49 0 01-5.028 2.318c-.881.01-1.753-.18-2.55-.556a8.599 8.599 0 01-2.398-1.912v8.539H.012V16.199L0 16.222zm4.438 8.191a6.523 6.523 0 001.158 4.23 3.477 3.477 0 002.77 1.366 3.243 3.243 0 002.606-1.25 6.477 6.477 0 001.031-4.114 6.152 6.152 0 00-1.066-3.962 3.301 3.301 0 00-2.653-1.287A3.477 3.477 0 005.55 20.66a5.654 5.654 0 00-1.112 3.754zM18.619 33.23V9.78h4.484v23.45h-4.484zM29.544 21.4l-4.066-.73a6.35 6.35 0 012.317-3.637 8.655 8.655 0 014.982-1.159 10.775 10.775 0 014.472.707 4.461 4.461 0 012.074 1.807 9.27 9.27 0 01.603 4.02v5.238c-.027 1.105.046 2.21.22 3.302.17.804.443 1.582.81 2.317H36.52a14.315 14.315 0 01-.428-1.332c-.081-.267-.128-.44-.163-.522a8.11 8.11 0 01-2.456 1.68 7.103 7.103 0 01-2.792.556 5.794 5.794 0 01-4.125-1.425 4.716 4.716 0 01-1.506-3.591c-.017-.901.22-1.789.684-2.561a4.473 4.473 0 011.923-1.726 15.14 15.14 0 013.569-1.043 24.245 24.245 0 004.356-1.159v-.498a2.317 2.317 0 00-.637-1.842 3.835 3.835 0 00-2.41-.556 3.199 3.199 0 00-1.866.475 3.245 3.245 0 00-1.124 1.68zm6.002 3.639c-.58.185-1.483.417-2.734.683a8.343 8.343 0 00-2.445.777 1.876 1.876 0 00-.869 1.587 2.214 2.214 0 00.707 1.634 2.467 2.467 0 001.784.683 3.87 3.87 0 002.317-.8c.512-.36.887-.882 1.066-1.482.15-.72.208-1.456.174-2.19v-.892zM50.77 16.222v3.58H47.7v6.835c-.027.809.005 1.618.093 2.422.06.233.205.435.405.568.22.156.484.237.753.231a5.794 5.794 0 001.808-.44l.382 3.476a8.909 8.909 0 01-3.545.672 5.653 5.653 0 01-2.19-.406 3.174 3.174 0 01-1.425-1.054 4.193 4.193 0 01-.637-1.75 21.903 21.903 0 01-.14-3.162v-7.392h-2.062v-3.58h2.063V12.85l4.507-2.618v5.99h3.07-.012zM52.08 16.222h2.49v-1.275a8.53 8.53 0 01.453-3.198 3.592 3.592 0 011.68-1.714 6.43 6.43 0 013.093-.672c1.274 0 2.54.195 3.754.579l-.602 3.128a8.837 8.837 0 00-2.063-.255 1.84 1.84 0 00-1.402.452 2.618 2.618 0 00-.428 1.75v1.158h3.348v3.476h-3.348v13.58H54.57V19.754H52.08v-3.533zM63.249 24.472a9.177 9.177 0 011.158-4.322 7.589 7.589 0 013.117-3.198 9.268 9.268 0 014.507-1.158 8.457 8.457 0 016.303 2.502 8.63 8.63 0 012.468 6.315 8.736 8.736 0 01-2.48 6.384 8.412 8.412 0 01-6.256 2.537 9.814 9.814 0 01-4.45-1.054 7.219 7.219 0 01-3.22-3.094 10.301 10.301 0 01-1.147-4.912zm4.634.243a5.608 5.608 0 001.159 3.87 3.905 3.905 0 005.897 0 5.688 5.688 0 001.159-3.893 5.573 5.573 0 00-1.159-3.835 3.915 3.915 0 00-5.897 0 5.608 5.608 0 00-1.205 3.846l.046.012zM86.908 33.23h-4.484V16.222h4.16v2.41a7.126 7.126 0 011.923-2.248 3.476 3.476 0 011.934-.545 5.689 5.689 0 012.955.846l-1.39 3.916a3.917 3.917 0 00-2.11-.741 2.491 2.491 0 00-1.598.521c-.53.504-.89 1.16-1.031 1.877a26.716 26.716 0 00-.37 5.689v5.283h.01zM94.74 16.223h4.136v2.317a6.66 6.66 0 015.284-2.7 5.693 5.693 0 012.827.672 5.13 5.13 0 011.958 2.028 7.745 7.745 0 012.41-2.028 5.894 5.894 0 012.757-.672 6.152 6.152 0 013.163.753 4.637 4.637 0 011.935 2.236 9.574 9.574 0 01.463 3.476v10.926h-4.472v-9.698a7.232 7.232 0 00-.463-3.255 2.134 2.134 0 00-1.912-.962 3.06 3.06 0 00-1.773.58 3.173 3.173 0 00-1.158 1.68 12.221 12.221 0 00-.36 3.475v8.11h-4.495v-9.269a12.902 12.902 0 00-.232-3.186 2.027 2.027 0 00-.741-1.077 2.319 2.319 0 00-1.367-.348 3.28 3.28 0 00-1.866.556c-.553.395-.96.96-1.158 1.61a12.013 12.013 0 00-.36 3.477v8.307h-4.483V16.222h-.093zM121.921 33.23v-4.483h4.484v4.483h-4.484zM128.085 28.34l4.507-.683c.133.782.545 1.49 1.159 1.993.721.49 1.585.726 2.456.672a4.434 4.434 0 002.618-.637 1.423 1.423 0 00.591-1.159 1.146 1.146 0 00-.324-.846 3.536 3.536 0 00-1.506-.59c-3.615-.773-5.909-1.503-6.883-2.19a4.374 4.374 0 01-2.016-3.812 4.723 4.723 0 011.738-3.708 8.113 8.113 0 015.4-1.53c1.801-.12 3.6.283 5.178 1.16a5.792 5.792 0 012.318 3.348l-4.229.788a2.61 2.61 0 00-1.031-1.518 3.767 3.767 0 00-2.167-.521 4.864 4.864 0 00-2.537.498 1.06 1.06 0 00-.51.915 1.006 1.006 0 00.452.811 16.863 16.863 0 004.194 1.263c1.794.29 3.503.97 5.005 1.993a4.162 4.162 0 011.402 3.337 5.115 5.115 0 01-1.946 4.009 8.6 8.6 0 01-5.794 1.68 9.45 9.45 0 01-5.491-1.414 6.463 6.463 0 01-2.584-3.858zM150.226 9.78v8.608a6.72 6.72 0 017.983-1.97 4.529 4.529 0 011.877 1.472c.417.595.709 1.27.857 1.981.183 1.114.261 2.243.232 3.372v9.987h-4.495v-8.968a13.572 13.572 0 00-.255-3.383 2.227 2.227 0 00-.904-1.158 2.93 2.93 0 00-1.622-.418 3.685 3.685 0 00-1.993.545 3.103 3.103 0 00-1.286 1.634 9.793 9.793 0 00-.406 3.232v8.516h-4.483V9.78H150.226z\" fill=\"#171719\"\u003e\u003c/path\u003e\n\u003c/svg\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003e[DEMO] Deploy a multi-app project with Bigfoot website, API Platform admin (ReactJS), Gatsby website and Mercure.rocks server on Upsun\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n\u003cstrong\u003eContribute, request a feature, or check out our resources\u003c/strong\u003e\n\u003cbr /\u003e\n\u003cbr /\u003e\n\u003ca href=\"https://community.platform.sh\"\u003e\u003cstrong\u003eJoin our community\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"https://docs.upsun.com\"\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"https://platform.sh/blog\"\u003e\u003cstrong\u003eBlog\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/issues/new?assignees=\u0026labels=bug\u0026template=bug_report.yml\"\u003e\u003cstrong\u003eReport a bug\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/issues/new?assignees=\u0026labels=feature+request\u0026template=improvements.yml\"\u003e\u003cstrong\u003eRequest a feature\u003c/strong\u003e\u003c/a\u003e\n\u003cbr /\u003e\u003cbr /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/issues\"\u003e\n\u003cimg src=\"https://img.shields.io/github/issues/upsun/bigfoot-multiapp-example.svg?style=for-the-badge\u0026labelColor=f4f2f3\u0026color=ffd9d9\u0026label=Issues\" alt=\"Open issues\" /\u003e\n\u003c/a\u003e\u0026nbsp\u0026nbsp\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/pulls\"\u003e\n\u003cimg src=\"https://img.shields.io/github/issues-pr/upsun/bigfoot-multiapp-example.svg?style=for-the-badge\u0026labelColor=f4f2f3\u0026color=ffd9d9\u0026label=Pull%20requests\" alt=\"Open PRs\" /\u003e\n\u003c/a\u003e\u0026nbsp\u0026nbsp\n\u003c/p\u003e\n\n\n\u003chr\u003e\n\n\u003cp align=\"center\"\u003e\n\u003cstrong\u003eContents\u003c/strong\u003e\n\u003cbr /\u003e\u003cbr /\u003e\n\u003ca href=\"#about\"\u003e\u003cstrong\u003eAbout\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"#getting-started\"\u003e\u003cstrong\u003eGetting started\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"#migrate\"\u003e\u003cstrong\u003eMigrate\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"#learn\"\u003e\u003cstrong\u003eLearn\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"#contribute\"\u003e\u003cstrong\u003eContribute\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003cbr /\u003e\n\u003c/p\u003e\n\u003chr\u003e\n\n\u003e **_DISCLAIMER:_**\n\u003e \u003cBR\u003eThis is an example codebase to host a multiple applications project with \u003ca href=\"https://upsun.com/\"\u003eUpsun\u003c/a\u003e.\n\u003e \u003cBR\u003eThis repo is used in [this blogpost](https://upsun.com/blog/upsun-and-running-with-multiple-applications/) as a starting point for the users and is not meant to be updated along the way.\n\n## About\n\n\u003cp\u003e\n   We have just created a new multi-app project for you, based on \u003ca href=\"https://github.com/platformsh-templates/bigfoot-workshop\" target=\"_blank\"\u003eBigfoot Project\u003c/a\u003e, \u003ca href=\"https://api-platform.com/docs/admin/\" target=\"_blank\"\u003eAPI Platform Admin\u003c/a\u003e, \u003ca href=\"https://www.gatsbyjs.com/\" target=\"_blank\"\u003eGatsby\u003c/a\u003e and \u003ca href=\"https://mercure.rocks/\" target=\"_blank\"\u003eMercure.rocks server\u003c/a\u003e.\n   \u003cBR\u003eThe generated code has been setup for a typical web multi-application project hosted on \u003ca href=\"https://upsun.com/\"\u003eUpsun\u003c/a\u003e.\n\u003c/p\u003e\n\n### Features\n- PHP 8.3\n- PostgreSQL v15\n- Composer-based build\n- Yarn v1.22.17\n- GO 1.21\n- NodeJS v20\n- Mercure.rocks server v0.14.4\n\n## Getting started\n\n### Local development\n\nThis section provides instructions for running the `Bigfoot Multi-app Example`  locally, connected to a local database instance.\n\nIn all cases for developing with Upsun, it's important to develop on an isolated environment - do not connect to data on your production environment when developing locally.\n\nEach of the options below assume that you have already deployed this template to Upsun, as well as the following starting commands:\n\n1. Install the Upsun CLI\n\n   Follow the instructions to [install the Upsun CLI](https://docs.upsun.com/administration/cli.html) for your operating system.\n   You can verify the installation by logging in (`upsun login`) and listing your projects (`upsun project:list`).\n\n1. Find your `PROJECT_ID` by running the command `upsun project:list`\n\n   ```bash\n   +---------------+------------------------------------+------------------+---------------------------------+\n   | ID            | Title                              | Region           | Organization                    |\n   +---------------+------------------------------------+------------------+---------------------------------+\n   | PROJECT_ID    | Your Project Name                  | xx-3.platform.sh | your-username                   |\n   +---------------+------------------------------------+------------------+---------------------------------+\n   ```\n1. Get your Upsun project\n   ```\n   upsun get PROJECT_ID\n   cd \u003cPROJECT_FOLDER\u003e\n   ```\n\n   or fork this repo if you don't have any existing project and then clone your own repo\n   ```\n   git clone git@github.com:\u003cYOUR-ORGANIZATION\u003e/bigfoot-multiapp-example.git bigfoot-multiapp\n   cd bigfoot-multiapp\n   ```\n\n1. Start the API component:\n\n   1. `cd ./api`\n\n   1. Install \u003ca href=\"https://symfony.com/download\" target=\"_blank\"\u003eSymfony CLI\u003c/a\u003e\n\n   1. Start docker container for the database : `docker-compose up -d`\n\n   1. `symfony composer install`\n\n   1. check that your `api/.env` file contains a valid `DATABASE_URL` to let Symfony connect to your database\n       ``` {location=\"./api/.env\"\"}\n       DATABASE_HOST=127.0.0.1\n       DATABASE_PORT=52947\n       DATABASE_NAME=app\n       DATABASE_USER=symfony\n       DATABASE_PASSWORD=ChangeMe\n       DATABASE_URL=\"postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@${DATABASE_HOST}:${DATABASE_PORT}/${DATABASE_NAME}?serverVersion=14\u0026charset=utf8\"\n       ```\n\n   1. `symfony console doctrine:schema:create --dump-sql` (use `--force` if there any SQL requests displayed)\n\n   1. `symfony server:start -d`\n\n   1. `yarn install \u0026\u0026 yarn encore dev` \n\n   1. `symfony open:local` or you can go on `https://localhost:8000/api`\n\n   \u003e **Note:**\n   \u003e if symfony server does not start your app using default port 8000, please change `REACT_APP_PUBLIC_URL` from `./admin/.env` file to reflect new port in use\n\n1. Start Gatsby app in a new terminal tab\n\n   1. Open a new terminal using CTRL+T (to be on the same root folder)\n   \n   1. `cd ../gatsby`\n\n   1. [Install Gatsby CLI](https://www.gatsbyjs.com/docs/reference/gatsby-cli/)\n\n   1. Start Gatsby\n   ```\n   export SHARP_IGNORE_GLOBAL_LIBVIPS=true (optional if using a mac) \n   yarn\n   NODE_TLS_REJECT_UNAUTHORIZED=0  gatsby develop -p 8080\n   ```\n   \n   1. open \u003ca href=\"http://localhost:8080/\" target=\"_blank\"\u003ehttp://localhost:8080/\u003c/a\u003e in your browser\n\n1. Start Mercure server locally in a new terminal tab\n   1. Open a new terminal using CTRL+T (to be on the same root folder)\n   \n   1. ``cd ../mercure``\n   \n   1. create docker Mercure.rocks container \n      ```bash\n      docker run \\\n          -e MERCURE_PUBLISHER_JWT_KEY='!ChangeThisMercureHubJWTSecretKey!' \\\n          -e MERCURE_SUBSCRIBER_JWT_KEY='!ChangeThisMercureHubJWTSecretKey!' \\\n          -p 8006:80 \\\n          -p 8007:443 \\\n          dunglas/mercure caddy run --config /etc/caddy/Caddyfile.dev\n      ```\n   1. open [localhost:8007](https://localhost:8007) in your browser  \n  \n1. Start the ADMIN component in a new terminal tab\n\n   1. `cd ../admin` (assuming that you were in the `./mercure` folder)\n\n   1. `yarn install`\n\n   1. `yarn start`\n\n   1. a new browser tab should be opened automatically with url \u003ca href=\"http://localhost:3000/\" target=\"_blank\"\u003ehttp://localhost:3000\u003c/a\u003e\n\n1. Create a new branch\n   ```\n   upsun branch new_branch\n   ```\n1. Develop your feature and commit it in GIT\n1. Push your code to your environment (can be done multiple time)\n   ```\n   upsun push\n   ```\n1. Push to production\n   ```\n   upsun checkout main\n   upsun merge new_branch\n   ```\n\u003e **Note:**\n\u003e For many of the steps above, you may need to include the CLI flags `-p PROJECT_ID` and `-e ENVIRONMENT_ID` if you are not in the project directory or if the environment is associated with an existing pull request.\n### Deploying to Upsun\n\nThis repository has all the code it needs in order to deploy to Upsun.\n\n\u003cdetails\u003e\n\u003csummary\u003eDeploy directly to Upsun from the command line\u003c/summary\u003e\n\u003c!-- \u003cblockquote\u003e\n\u003cbr/\u003e --\u003e\n\n1. Create a free trial:\n\n   [Register for a 30 day free trial with Upsun](https://auth.api.upsun.com/register). When you have completed signup, select the **Create from scratch** project option. Give you project a name, and select a region where you would like it to be deployed. As for the *Production environment* option, make sure to match it to this repository's settings, or to what you have updated the default branch to locally.\n\n1. Install the Upsun CLI\n\n   Follow the instructions to [install the Upsun CLI](https://docs.upsun.com/administration/cli.html) for your operating system.\n   You can verify the installation by logging in (`upsun login`) and listing your projects (`upsun project:list`).\n\n1. Set the project remote\n\n   Find your `PROJECT_ID` by running the command `upsun project:list`\n\n   ```bash\n   +---------------+------------------------------------+------------------+---------------------------------+\n   | ID            | Title                              | Region           | Organization                    |\n   +---------------+------------------------------------+------------------+---------------------------------+\n   | PROJECT_ID    | Your Project Name                  | xx-5.platform.sh | your-username                   |\n   +---------------+------------------------------------+------------------+---------------------------------+\n   ```\n\n   Then from within your local copy, run the command `upsun project:set-remote PROJECT_ID`.\n\n1. Push using git\n\n   ```bash\n   git push upsun DEFAULT_BRANCH\n   ```\n\n1. or Push using Upsun CLI\n\n   ```bash\n   upsun push\n   ```\n\n\u003c!-- \u003cbr/\u003e\n\u003c/blockquote\u003e --\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eIntegrate with a GitHub repo and deploy pull requests\u003c/summary\u003e\n\u003c!-- \u003cblockquote\u003e\n\u003cbr/\u003e --\u003e\n\n1. Create a free trial:\n\n   [Register for a 30 day free trial with Upsun](https://auth.api.upsun.com/register). When you have completed signup, select the **Create from scratch** project option. Give you project a name, and select a region where you would like it to be deployed. As for the *Production environment* option, make sure to match it to whatever you have set at `https://YOUR_NAMESPACE/nextjs-drupal`.\n\n1. Install the Upsun CLI\n\n   Follow the instructions to [install the Upsun CLI](https://docs.upsun.com/administration/cli.html) for your operating system.\n   You can verify the installation by logging in (`upsun login`) and listing your projects (`upsun project:list`).\n\n1. Setup the integration:\n\n   Consult the [GitHub integration documentation](https://docs.upsun.com/integrations/source/github.html#setup) to finish connecting your repository to a project on Upsun. You will need to create an Access token on GitHub to do so.\n\n1. Then, just use regular GIT commands to push your code to your repository. It will automatically update your corresponding Upsun environment\n\u003c!-- \u003cbr/\u003e\n\u003c/blockquote\u003e --\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eIntegrate with a GitLab repo and deploy merge requests\u003c/summary\u003e\n\u003c!-- \u003cblockquote\u003e\n\u003cbr/\u003e --\u003e\n\n1. Create a free trial:\n\n   [Register for a 30 day free trial with Upsun](https://auth.api.upsun.com/register). When you have completed signup, select the **Create from scratch** project option. Give you project a name, and select a region where you would like it to be deployed. As for the *Production environment* option, make sure to match it to this repository's settings, or to what you have updated the default branch to locally.\n\n1. Install the Upsun CLI\n\n   Follow the instructions to [install the Upsun CLI](https://docs.upsun.com/administration/cli.html) for your operating system.\n   You can verify the installation by logging in (`upsun login`) and listing your projects (`upsun project:list`).\n\n1. Create the repository\n\n   Create a new repository on GitLab, set it as a new remote for your local copy, and push to the default branch.\n\n1. Setup the integration:\n\n   Consult the [GitLab integration documentation](https://docs.upsun.com/integrations/source/gitlab.html#setup) to finish connecting a repository to a project on Upsun. You will need to create an Access token on GitLab to do so.\n1. Then, just use regular GIT commands to push your code to your repository. It will automatically update your corresponding Upsun environment\n\n\u003c!-- \u003cbr/\u003e\n\u003c/blockquote\u003e --\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eIntegrate with a Bitbucket repo and deploy pull requests\u003c/summary\u003e\n\u003c!-- \u003cblockquote\u003e\n\u003cbr/\u003e --\u003e\n\n1. Create a free trial:\n\n   [Register for a 30 day free trial with Upsun](https://auth.api.upsun.com/register). When you have completed signup, select the **Create from scratch** project option. Give you project a name, and select a region where you would like it to be deployed. As for the *Production environment* option, make sure to match it to this repository's settings, or to what you have updated the default branch to locally.\n\n1. Install the Upsun CLI\n\n   Follow the instructions to [install the Upsun CLI](https://docs.upsun.com/administration/cli.html) for your operating system.\n   You can verify the installation by logging in (`upsun login`) and listing your projects (`upsun project:list`).\n\n1. Create the repository\n\n   Create a new repository on Bitbucket, set it as a new remote for your local copy, and push to the default branch.\n\n1. Setup the integration:\n\n   Consult the [Bitbucket integration documentation](https://docs.upsun.com/integrations/source/bitbucket.html#setup) to finish connecting a repository to a project on Upsun. You will need to create an Access token on Bitbucket to do so.\n1. Then, just use regular GIT commands to push your code to your repository. It will automatically update your corresponding Upsun environment\n\n\u003c!-- \u003cbr/\u003e\n\u003c/blockquote\u003e --\u003e\n\u003c/details\u003e\n\n### Migrating your data\n\nIf you are moving an existing site to Upsun, then in addition to code you also need to migrate your data. That means your database and your files.\n\n\u003cdetails\u003e\n\u003csummary\u003eImporting the database\u003c/summary\u003e\u003cbr/\u003e\n\nFirst, obtain a database dump from your current site and save your dump file as `database.sql`. Then, import the database into your Upsun site using the CLI:\n\n```bash\nupsun sql -e main \u003c database.sql\n```\n\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eImporting files\u003c/summary\u003e\u003cbr/\u003e\n\nYou first need to download your files from your current hosting environment.\nThe easiest way is likely with rsync, but consult your old host's documentation.\n\nThe `upsun mount:upload` command provides a straightforward way to upload an entire directory to your site at once to a `mount` defined in a `.upsun/config.yaml` file.\nUnder the hood, it uses an SSH tunnel and rsync, so it is as efficient as possible.\n(There is also a `upsun mount:download` command you can use to download files later.)\nRun the following from your local Git repository root (modifying the `--source` path if needed and setting `BRANCH_NAME` to the branch you are using).\n\nA few examples are listed below, but repeat for all directories that contain data you would like to migrate.\n\n```bash\nupsun mount:upload -e main --mount web/sites/default/files --source ./web/sites/default/files\nupsun mount:upload -e main --mount private --source ./private\n```\n\nNote that `rsync` is picky about its trailing slashes, so be sure to include those.\n\n\u003c/details\u003e\n\nWith your application now deployed on Upsun, things get more interesting.\nRun the command `upsun environment:branch new-feature` for your project, or open a trivial pull request off of your current branch.\n\nThe resulting environment is an *exact* copy of production (or corresponding parent environment).\nIt contains identical infrastructure to what's been defined in your configuration files, and even includes data copied from your production environment in its services.\nOn this isolated environment, you're free to make any changes to your application you need to, and really test how they will behave on production.\n\nAfter that, here are a collection of additional resources you might find interesting as you continue with your migration to Upsun:\n\n[comment]: \u003c\u003e (- [Local development]\u0026#40;#local-development\u0026#41;)\n- [Troubleshooting](#troubleshooting)\n- [Adding a domain and going live](https://docs.upsun.com/domains/steps.html)\n- [(CDN) Content Delivery Networks](https://docs.upsun.com/domains/cdn.html)\n- [Performance and observability with Blackfire.io](https://docs.upsun.com/integrations/observability/blackfire.html)\n- [Pricing](https://docs.upsun.com/overview/pricing.html)\n- [Security and compliance](https://docs.upsun.com/security.html)\n\n\n## Learn\n\n### Troubleshooting\n\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eAccessing logs\u003c/strong\u003e\u003c/summary\u003e\u003cbr/\u003e\n\nAfter the environment has finished its deployment, you can investigate issues that occured on startup, `deploy` and `post_deploy` hooks, and generally at runtime using the CLI. Run the command:\n\n```bash\nupsun ssh\n```\n\nIf you are running the command outside a local copy of the project, you will need to include the `-p` (project) and/or `-e` (environment) flags as well.\nOnce you have connected to the container, [logs](https://docs.upsun.com/development/logs.html#container-logs) are available within `/var/log/` for you to investigate.\n\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eRebuilding cache\u003c/strong\u003e\u003c/summary\u003e\u003cbr/\u003e\n\nYou may run into a database error after installing Symfony on your production environment initially.\nTo fix, SSH into the `api` application container (`upsun ssh`) and rebuild the cache using Symfony console:\n\n```bash\nphp bin/console cache:clear\nphp bin/console cache:pool:clear cache.app\n```\n\u003c/details\u003e\n\n### Blackfire.io: creating a Continuous Observability Strategy\n\nThis template includes a starting [`.blackfire.yml`](.blackfire.yml) file that can be used to enable [Application Performance Monitoring](https://blackfire.io/docs/monitoring-cookbooks/index), [Profiling](https://blackfire.io/docs/profiling-cookbooks/index), [Builds](https://blackfire.io/docs/builds-cookbooks/index) and [Performance Testing](https://blackfire.io/docs/testing-cookbooks/index) on your project. Upsun comes with Blackfire pre-installed on application containers, and [setting up requires minimal configuration](https://docs.upsun.com/integrations/observability/blackfire.html).\n\n* [What is Blackfire?](https://blackfire.io/docs/introduction)\n* [Configuring Blackfire.io on a Upsun project](https://docs.upsun.com/integrations/observability/blackfire.html)\n* [Blackfire.io Upsun documentation](https://blackfire.io/docs/integrations/paas/platformsh)\n* [Profiling Cookbooks](https://blackfire.io/docs/profiling-cookbooks/index)\n* [Monitoring Cookbooks](https://blackfire.io/docs/monitoring-cookbooks/index)\n* [Testing Cookbooks](https://blackfire.io/docs/testing-cookbooks/index)\n* [Using Builds](https://blackfire.io/docs/builds-cookbooks/index)\n* [Configuring Integrations](https://blackfire.io/docs/integrations/index)\n\n\n### Resources\n\n\n- [API Platform](https://api-platform.com/)\n\n- [Upsun PHP documentation](https://docs.upsun.com/languages/php.html)\n\n\n### Contact\n\nThis template is maintained by the Upsun Developer Relations team, and they will be notified of all issues and pull requests you open here.\n\n- **Discord:** If you haven't done so already, you can join Upsun's community on [Discord](https://discord.gg/z2YQzTeZqY) channels and ping the `@devrel_team` with any questions.\n\n\n### About Upsun\n\nThis template has been specifically designed to deploy on Upsun.\n\n\u003cdetails\u003e\n\u003csummary\u003eWhat is Upsun?\u003c/summary\u003e\u003cbr/\u003e\n\nUpsun is a unified, secure, enterprise-grade platform for building, running and scaling web applications. We’re the leader in Fleet Ops: Everything you need to manage your fleet of websites and apps is available from the start. Because infrastructure and workflows are handled from the start, apps just work, so teams can focus on what really matters: making faster changes, collaborating confidently, and scaling responsibly. Whether managing a fleet of ten or ten thousand sites and apps, Upsun is the Developer- preferred solution that scales right.\n\nOur key features include:\n\n* **GitOps: Git as the source of truth**\n\n  Every branch becomes a development environment, and nothing can change without a commit.\n\n* **Batteries included: Managed infrastructure**\n\n  [Simple abstraction in YAML](https://docs.upsun.com/configuration/yaml.html) for [committing and configuring infrastructure](https://docs.upsun.com/overview/structure.html), fully managed patch updates, and 24 [runtimes](https://docs.upsun.com/languages.html) \u0026 [services](https://docs.upsun.com/configuration/services.html) that can be added with a single line of code.\n\n* **Instant cloning: Branch, merge, repeat**\n\n  [Reusable builds](https://docs.upsun.com/overview/build-deploy.html) and automatically inherited production data provide true staging environments - experiment in isolation, test, then destroy or merge.\n\n* **FleetOps: Fleet management platform**\n\n  Leverage our public API along with custom tools like [Source Operations](https://docs.upsun.com/configuration/app/source-operations.html) and [Activity Scripts](https://docs.upsun.com/integrations/activity.html) to [manage thousands of applications](https://youtu.be/MILHG9OqhmE) - their dependency updates, fresh content, and upstream code.\n\n\u003c/details\u003e\n\n\u003ch2 align=\"center\"\u003eContribute\u003c/h2\u003e\n\n\u003ch3 align=\"center\"\u003eHelp us keep top-notch templates!\u003c/h3\u003e\n\nEvery one of our templates is open source, and they're important resources for users trying to deploy to Upsun for the first time or better understand the platform. They act as getting started guides, but also contain a number of helpful tips and best practices when working with certain languages and frameworks.\n\nSee something that's wrong with this template that needs to be fixed? Something in the documentation unclear or missing? Let us know!\n\n\u003cp align=\"center\"\u003e\n\u003cstrong\u003eHow to contribute\u003c/strong\u003e\n\u003cbr /\u003e\u003cbr /\u003e\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/issues/new?assignees=\u0026labels=bug\u0026template=bug_report.yml\"\u003e\u003cstrong\u003eReport a bug\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/issues/new?assignees=\u0026labels=feature+request\u0026template=improvements.yml\"\u003e\u003cstrong\u003eSubmit a feature request\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/pulls\"\u003e\u003cstrong\u003eOpen a pull request\u003c/strong\u003e\u003c/a\u003e\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\u0026nbsp\n\u003cbr /\u003e\n\u003c/p\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n\u003cstrong\u003eNeed help?\u003c/strong\u003e\n\u003cp/\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://discord.gg/z2YQzTeZqY\"\u003e\u003cstrong\u003eJoin us on Discord\u003c/strong\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr /\u003e\n\u003ch3 align=\"center\"\u003e\u003cstrong\u003eThanks to all of our amazing contributors!\u003c/strong\u003e\u003c/h3\u003e\n\u003cbr/\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/upsun/bigfoot-multiapp-example/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=upsun/bigfoot-multiapp-example\" /\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003cem\u003eMade with \u003ca href=\"https://contrib.rocks\"\u003econtrib.rocks\u003c/a\u003e\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cbr /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupsun%2Fbigfoot-multiapp-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fupsun%2Fbigfoot-multiapp-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupsun%2Fbigfoot-multiapp-example/lists"}