Applications
Introduction
Applications represent a Laravel application in a GitHub, Bitbucket, or GitLab repository that is deployed to Laravel Cloud. Applications can contain many environments and resources.
Creating Applications
When creating an application, you will need to select a source control repository that the application should be deployed from, assign the application a name, and select a region that the application should be deployed to. Currently, an application can only be deployed to a single region at a time.
If you have not already linked a source control provider account to your organization, you will be prompted to do so when you create your application. Typically, your Laravel Cloud organization structure should mirror your source control provider organization structure.
After a source control provider has been authenticated, the repository (or repositories) selected become available for all users in the organization to view and create applications from.
When creating an application, Laravel Cloud will automatically create a default environment for the application. Application environments can be assigned unique compute and deployment settings appropriate for that environment.
Regions
Laravel Cloud currently supports the following application regions:
- US East (Ohio) /
us-east-2
- EU Central (Frankfurt) /
eu-central-1
- EU West (London) /
eu-west-2
- Asia Pacific (Singapore) /
ap-southeast-1
For minimal latency, you should ensure that your application and its associated resources exist within the same region.
Laravel Cloud and GitHub
Laravel Cloud connects to GitHub by installing the “Laravel Cloud” GitHub app in either a GitHub personal account or organization account.
This installation can only be linked to single Laravel Cloud organization. It is best practice to have your Laravel Cloud organization structure match your GitHub organization structure. Otherwise, you may run into conflicts when trying to install repositories from the same GitHub organization across multiple Laravel Cloud organizations.
GitHub Permissions
Laravel Cloud’s GitHub app requests the following permissions during installation:
- Read and write access to administration and code
- Read-only access to Metadata
These permissions allow Laravel Cloud’s GitHub app to view and create repositories in your account. We request write access because 1) the ability to create repositories and deploy code (e.g. starter kits) directly from Cloud is coming soon and 2) GitHub does not offer the option to request different levels of permission in a GitHub app.
GitHub Organizations
Installing the Laravel Cloud app on a GitHub Organization requires admin-level permissions. If the Laravel Cloud user attempting to install the app does not have sufficient permissions to install the GitHub app directly, they can instead request for installation. This creates a “pending” source control provider in Laravel Cloud.
The administrator or owner of the GitHub organization will receive a notification to approve the installation of the app. Once approved, Laravel Cloud automatically changes the source control status and syncs the repository list with GitHub.
Deleting Applications
When deleting applications, all environments within that application will be deleted; however, resources such as databases, key-value stores ,and object storage buckets are not deleted, since they may be used by other applications within the environment. To delete these resources, navigate to your organization’s “Resources” tab.
Was this page helpful?