Git deploys is in beta. For access, contact the Deepline team through the
support button on your dashboard.
How a linked repository works
A linked repository has four settings:
Each production push creates one deployment for the linked repository at that
commit. Deepline reads the manifest, then discovers the matching
*.play.ts files below the root directory.
Deepline validates every changed Play in that deployment before changing any
live revision. If one validation fails, the previous live revisions stay in
place. If validation succeeds, all changed Plays are promoted together.
Unchanged Plays are skipped by content hash.
This makes a production branch push the only way that link changes live Plays.
Pushes to other branches are ignored unless they are part of a pull request.
Before you start
You need:- workspace owner or admin access
- permission to install a GitHub App for the repository
- at least one
*.play.tsfile in the repository
Connect GitHub on the Web
In Deepline, open Deploys and select Connect GitHub:
1
Install the app
On GitHub, install the Deepline GitHub App on the account that owns the
repository. If an organization owns it, choose that organization.
2
Choose repository access
Grant access to all repositories or select specific repositories.
Link a repository
In the repository-linking dialog, select the repository and production branch. Set a root directory for a monorepo or a different manifest filename if needed. Pull-request checks are enabled by default. Confirm the link. Linking does not deploy existing commits; the next push to the production branch starts a deployment. The same repository can have separate links for different root directories or workspaces. Each link has its own settings and deployment history.CLI quickstart
Sign in to the workspace withdeepline auth register, then:
acme/growth with a repository from deepline git repos and
DEPLOYMENT_ID with an ID from the deployment list. Use --root-dir packages/growth for a monorepo, --manifest <filename> for another manifest,
or --no-pr-checks to disable pull-request checks. Add --json for
machine-readable results.
Select Plays with a manifest
Without adeepline.json file, Deepline finds every *.play.ts file under
the linked root directory.
Add a manifest when you need narrower matching:
...
The manifest describes the complete Play set for a link. A production
deployment evaluates that set together, but promotes only Plays whose content
changed. A deployment supports at most 100 Play files.
Each Play can import files from its own directory or a child directory.
An import cannot escape the Play’s directory.
Keep provider credentials and Play secrets in Deepline.
Do not commit credentials, customer data, or live provider responses.
Validate pull requests
Open a pull request from a branch in the linked repository. Deepline adds a Deepline Plays check run. A successful check:- builds and validates the changed Plays
- registers changed Plays as draft revisions
- leaves every live revision unchanged
Deploy to production
Merge the pull request or push directly to the configured production branch. Deepline creates a production deployment for the pushed commit. Watch deployments on the dashboard under Deploys, or use:succeeded, failed, superseded,
cancelled, or reconcile_failed.
Use deepline git cancel DEPLOYMENT_ID to cancel a queued or running
deployment.
Roll back a deployment
Revert the source commit and push the revert to the production branch. The revert creates a new, auditable deployment.Pause or remove a link
The dashboard lets you change the same settings, enable or disable pull-request checks, pause a link, or unlink it. The CLI provides the same controls. Pause new deployments:deepline git set. Run deepline git set --help for the complete options.
Unlink the repository:
Current limits
- Git deploys supports GitHub.com through the Deepline GitHub App.
- Fork pull requests are ignored.
- Non-production branch pushes without a pull request are ignored.
- Build compute is metered and deployment details show the build duration.