Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

🚢 action-linear-release-issue

Creates Linear issues for GitHub releases.

  • This GitHub action can be used to create a Linear issue for each new release in a GitHub project.
  • It will take the changelog from the GitHub release body and append it to the created Linear issue description.
  • It will try to find related Linear issues in the release body and link them to the created Linear issue.
  • It will attach a GitHub release link to the created Linear issue.
  • For the best results, use Linear issue templates. You can set the issue assignee, status, labels, etc., via the template.
  • Optionally, it can add a specified label to a Linear issue as a part of a label group. By default, label group name is "tag".

Prerequisites

  • You need to get a Linear API key and save it to your GitHub project secrets.
  • You need to get the teamId for a Linear team where issues will be created. You can get the list of teams for your workspace in the Linear API GraphQL explorer. (Use the API key for the Authorization header)

Example GitHub workflow

In your GitHub project, create a new workflow file, for example: .github/workflows/linear_release.yml

Important

name: Create Release issue in Linear

on:
  release:
    types: [created]

jobs:
  create_linear_release:
    runs-on: ubuntu-latest

    steps:
      - name: Create issue
        id: create_issue
        uses: samosad/action-linear-release-issue@v1
        with:
          linear-api-key: ${{ secrets.LINEAR_API_KEY }}
          linear-team-id: ${{ vars.LINEAR_TEAM_ID }}
          linear-workspace: ${{ vars.LINEAR_WORKSPACE }}
          linear-template-id: ${{ vars.LINEAR_TEMPLATE_ID }}
          linear-issue-title: "Release ${{ github.event.release.tag_name }}"
          linear-issue-body: ${{ github.event.release.body }}
          linear-attachment-url: ${{ github.event.release.html_url }}
          linear-label-release-tag: ${{ github.event.release.tag_name }}
          linear-label-release-group: ${{ vars.LINEAR_RELEASE_GROUP }}

Outputs

You can use outputs created by this action in other actions. For example, to send a Slack notification about the created Linear issue, you can use the following command:

curl -X POST -d '{"text": "Release task created: ${{ steps.create_issue.outputs.linear-release-issue-url }}"}' ${{ vars.SLACK_WEBHOOK_URL }}

Available outputs are defined in action.yml file.

About

Create Linear issue for GitHub release

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages