GitHub Actions powered Issue Bot 🦾
Work on a distributed team? Try using Issue Bot as a Scrum standup process automation bot to keep track of what you're all working on. 🤖
Have repeated tasks you're setting reminders for elsewhere? Issue Bot's got your back there, too. 👏
Or just need an issue created on a certain condition? Issue Bot is there when your CI build breaks. 💔
Issue Bot is a flexible GitHub action that takes care of a few issue related tasks:
- Opens new issue with
title,body,labels, andassignees - Uses Mustache templating syntax in
body, along with a couple of handy template variables:assigneesandpreviousIssueNumber - Closes most recent previous issue with all
labelsifclose-previousis true - Adds new issue to
project(user, organization, or repository project based on value ofproject-type),column, andmilestone - Pins new issue and unpins previous issue if
pinnedis true - Makes issue comments linking new and previous issues if
linked-commentsis true - Assigns new issue only to the next assignee in the list if
rotate-assigneesis true. Useful for duty rotation like first responder. - Pairs well with imjohnbo/extract-issue-template-fields if you'd prefer to open issues based on issue templates
v2 user, please note that these breaking changes were introduced in v3:
templatefunctionality has been moved to a separate action: https://github.com/imjohnbo/extract-issue-template-fields.labelsnow checks if all labels match. Before, it checked if any labels matched.
and these features were added 🎉:
projectandcolumnfor adding an issue to a repository project board.milestonefor adding an issue to a milestone.
As always, your feedback and contributions are welcome.
Simple example:
# ...
- name: Create new issue
uses: imjohnbo/issue-bot@v3
with:
assignees: "octocat, monalisa"
title: Hello, world
body: |-
:wave: Hi, {{#each assignees}}@{{this}}{{#unless @last}}, {{/unless}}{{/each}}!
pinned: true
# ...For more examples, see a GitHub-wide search or ./docs/example-workflows:
See action.yml
The issue body is treated as a Handlebars template, with support for template variables:
assignees: The array of issue assignees.previousIssueNumber: The previous issue number in the series.
The linked comments (linked-comments-new-issue-text, linked-comments-previous-issue-text) support these variables and:
newIssueNumber: The new issue number.
Feel free to open an issue, or better yet, a pull request!