Skip to content

This GitHub Action was created during the 2020 GitHub Actions Hackathon. It allows you to get a list of issues that were recently closed via commits.

License

Notifications You must be signed in to change notification settings

TheBusyBiscuit/recently-closed-issues

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

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Action: Retrieve issues closed by commits

This simple Action provides you a way to retrieve issues that were recently closed via a commit.
The GitHub API currently does not allow us to retrieve that information in any easily accessible way, hence why I made this Action myself.

This Action adheres to the syntax of Closing issues via keywords provided by GitHub. It also works with multiple issues being closed in the same commit and it is case-insensitive.
Examples:

  • Fixed #123
  • Resolves #123
  • In this commit we closed #123
  • Closed #123 I have
  • Closed #123 but also fixed #124

This can be very useful if you want to assign labels to closed tickets for example.
You can find an example workflow right here

Inputs

token

Required The token is just a standard Access Token from GitHub, this is used for authentication.
You can use the built-in ${{ secrets.GITHUB_TOKEN }} variable for this.

max_commits

Required This parameter determines how many commits should be retrieved. The maximal value for this is 100.

Outputs

issues

The output of this is a JSON Array of numbers, corresponding to the issue numbers that were closed via commits.

Example usages

Print out recently closed tickets

on:
  issue:
    types:
      - closed

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: TheBusyBiscuit/recently-closed-issues@master
        id: my_step_id
        token: ${{ secrets.GITHUB_TOKEN }}
        max_commits: 20
      - run: echo $ {{ steps.my_step_id.outputs.issues }}

Assign a label to an issue if it was closed by a ticket

This example will add a "Resolved" label to any issue that was closed via a commit.
I am using the GitHub Action maxkomarychev/octions@master to add the label, any action that can add labels will suffice though, this is just an example.

You can use GitHub's expressions syntax to create a simple if-statement that will make a step only trigger if the currently closed issue was closed via a commit.

on:
  issue:
    types:
      - closed

jobs:
  label:
    runs-on: ubuntu-latest
    steps:
      - uses: TheBusyBiscuit/recently-closed-issues@master
        id: my_step_id
        token: ${{ secrets.GITHUB_TOKEN }}
        max_commits: 20
      - uses: maxkomarychev/octions/octions/issues/add-labels@master
        if: contains(toJson(steps.my_step_id.outputs.issues), github.event.issue.number)
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          issue_number: ${{ github.event.issue.number }}
          labels: 'Resolved'

About

This GitHub Action was created during the 2020 GitHub Actions Hackathon. It allows you to get a list of issues that were recently closed via commits.

Topics

Resources

License

Stars

Watchers

Forks