Git deploys is in beta. Everyone can see
deepline git in CLI help, but using
it requires enablement for your Deepline workspace. If it is not enabled for
your workspace, contact the Deepline team to request enablement.CLI quickstart
After the Deepline team enables your workspace, sign in to that workspace withdeepline auth register. Then:
acme/growth with a repository from deepline git repos and
DEPLOYMENT_ID with an ID from the deployment list. Linking does not deploy
existing commits; the next push starts a deployment. GitHub App approval is
the browser step; linking, configuration, and deployment inspection are
available through the CLI. Add --json for machine-readable results.
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:- a Deepline workspace with Git deploys enabled
- workspace owner or admin access
- permission to install a GitHub App for the repository
- at least one
*.play.tsfile in the repository
Connect GitHub
1
Open Deploys or Repositories
In the Deepline dashboard, open Deploys or Repositories.
2
Start the connection
Select Connect GitHub.
3
Install the app
Install the Deepline GitHub App on the organization that owns the
repository.
4
Choose repository access
Grant access to all repositories or select specific repositories.
Link a repository
On the Repositories page, select Link repository. Set the production branch, root directory, and manifest for the linked repository. Pull-request checks are enabled by default. The CLI sets the same link settings:--manifest to use another manifest filename, or --no-pr-checks to
disable pull-request checks:
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.