Connect your deployments to Linear releases.
Automatically link issues to releases.
Note
This project is currently in beta and requires enrollment to use. If you're interested in trying it out or need assistance, please contact Linear support or your account manager. APIs and commands may change in future releases.
This action wraps the Linear Release CLI to integrate your CI/CD pipeline with Linear's release management. It automatically scans commits for Linear issue identifiers, detects pull request references, and creates or updates releases in Linear.
permissions:
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Required for commit history
- uses: linear/linear-release-action@v0
with:
access_key: ${{ secrets.LINEAR_ACCESS_KEY }}| Input | Required | Default | Description |
|---|---|---|---|
access_key |
Yes | Linear pipeline access key for authentication | |
command |
No | sync |
Command to run: sync, complete, or update |
name |
No | Custom release name (only used with sync command) |
|
version |
No | Release version identifier | |
stage |
No | Deployment stage such as staging or production (required for update) |
|
include_paths |
No | Filter commits by file paths (comma-separated globs for monorepos) | |
cli_version |
No | v0.2.0 |
Linear Release CLI version tag to install |
cli_version can be set to latest to always download the newest CLI release. This is opt-in and may include breaking changes.
| Output | Description |
|---|---|
release-id |
The Linear release ID |
release-name |
The Linear release name |
release-version |
The Linear release version |
release-url |
URL to the Linear release |
Outputs are empty when no release is created (e.g. no matching commits found).
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: linear/linear-release-action@v0
id: release
with:
access_key: ${{ secrets.LINEAR_ACCESS_KEY }}
- name: Use release outputs
if: steps.release.outputs.release-url
run: echo "Release URL is ${{ steps.release.outputs.release-url }}"Creates or updates a release by scanning commits for Linear issue identifiers.
- uses: linear/linear-release-action@v0
with:
access_key: ${{ secrets.LINEAR_ACCESS_KEY }}Marks the current release as complete. Only applicable to scheduled pipelines, as continuous pipelines create releases in the completed stage automatically.
- uses: linear/linear-release-action@v0
with:
access_key: ${{ secrets.LINEAR_ACCESS_KEY }}
command: completeUpdates the deployment stage of the current release. Only applicable to scheduled pipelines, as continuous pipelines create releases in the completed stage automatically.
- uses: linear/linear-release-action@v0
with:
access_key: ${{ secrets.LINEAR_ACCESS_KEY }}
command: update
stage: stagingFilter commits by file paths to track releases for specific packages:
- uses: linear/linear-release-action@v0
with:
access_key: ${{ secrets.LINEAR_ACCESS_KEY }}
include_paths: apps/web/**,packages/shared/**"Unsupported OS" or "Unsupported arch" error
The action only supports Linux x86_64 and macOS x86_64/arm64 runners. Windows is not supported.
"access_key input is required" error
Ensure you've set the access_key input with your Linear pipeline access key stored in GitHub Secrets.
Issues not being linked
Make sure your commits contain Linear issue identifiers (e.g., ENG-123) and that actions/checkout uses fetch-depth: 0.
MIT - see LICENSE