.github/actions/deploy is a composite GitHub Action that deploys an already-built image to a Levelrail app and waits for the rollout to converge before the job finishes. It wraps two CLI commands, apps deploy and apps wait, so anything it does you can also script in a shell step.
The action’s own README has a complete example workflow. The short version:
image.
The
status output is succeeded, failed, or skipped (when wait is false).
The action installs a prebuilt levelrail-cli from GitHub Releases (Linux and macOS, amd64 and arm64), verifies its checksum, and by default picks the newest release, pre-releases included while no stable release exists. Pin one with cli-version: v0.2.0-beta.15.
To run other CLI commands in a job, install the CLI on its own with the setup-cli action. Its input is version:
Not tied to GitHub Actions
apps deploy and apps wait are ordinary levelrail-cli commands with real exit codes, so the same pattern works in GitLab CI, CircleCI, Jenkins, or a shell script.
Getting the API token and URL into GitHub
Set two secrets in your GitHub repository or environment:LEVELRAIL_API_URL: your control plane’s base URL, for example the domain fronting it orhttps://host:8080.LEVELRAIL_API_TOKEN: a token with at least thedeployability. Create it under Settings > Tokens or withlevelrail-cli tokens create --name github-actions --abilities deploy. Storing it as a secret keeps it out of workflow logs.
Next steps
CLI reference
apps deploy and apps wait in full.Identity and access
Token creation and abilities.
Git integrations
Webhook-based deploys as an alternative.
Deploying apps
The full app lifecycle.