为了更好的展示功能,下面以实际场景举例,请灵活参考。
add-assignees
当一个 issue 新增或修改时,将这个 issue 指定某人或多人。
name: Add Assignesson:issues:types: [opened, edited]jobs:add-assigness:runs-on: ubuntu-lateststeps:- name: Add assignessuses: actions-cool/issues-helper@v2.2.1with:actions: 'add-assignees'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}assignees: 'xxx' or 'xx1,xx2'random-to: 1
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
assignees | 指定人。当不填或者为空字符时,不操作 | string | ✖ |
random-to | 当设置时,会在 assignees 中随机选择 | number | ✖ |
actions
支持多个,需用逗号隔开。如:add-assignees,add-labels
name
可根据自行根据实际情况修改${{ github.event.issue.number }}
表示当前 issue,更多参考assignees
支持多个,需用逗号隔开add-labels
当一个新增的 issue 内容不包含指定格式时,为这个 issue 添加 labels。
name: Add Labelson:issues:types: [opened]jobs:add-labels:runs-on: ubuntu-latestif: contains(github.event.issue.body, 'xxx') == falsesteps:- name: Add labelsuses: actions-cool/issues-helper@v2.2.1with:actions: 'add-labels'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}labels: 'bug' or 'bug1,bug2'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
labels | 新增的 labels。当不填或者为空字符时,不新增 | string | ✖ |
labels
支持多个,需用逗号隔开close-issue
关闭指定 issue。
- name: Close issueuses: actions-cool/issues-helper@v2.2.1with:actions: 'close-issue'token: ${{ secrets.GITHUB_TOKEN }}issue-number: xxxbody: 'This is auto closed.'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
create-comment
当新增一个指定 label 时,对该 issue 进行评论。
name: Create Commenton:issues:types: [labeled]jobs:create-comment:runs-on: ubuntu-latestif: github.event.label.name == 'xxx'steps:- name: Create commentuses: actions-cool/issues-helper@v2.2.1with:actions: 'create-comment'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}body: |Hello ${{ github.event.issue.user.login }}. Add some comments.你好 ${{ github.event.issue.user.login }}。巴拉巴拉。contents: '+1' or '+1,heart'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
body | 新增评论的内容 | string | ✖ |
contents | 为新增评论的增加 reaction | string | ✖ |
body
默认为:Currently at ${owner}/${repo}. And this is default comment.
${owner}/${repo}
表示当前仓库comment-id
,可用于之后操作。用法参考${{ github.event.issue.user.login }}
表示该 issue 的创建者contents
支持多个,需用逗号隔开create-issue
感觉新增 issue 使用场景不多。这里举例,每月 1 号 UTC 00:00 新增一个 issue。
name: Create Issueon:schedule:- cron: "0 0 1 * *"jobs:create-issue:runs-on: ubuntu-lateststeps:- name: Create issueuses: actions-cool/issues-helper@v2.2.1with:actions: 'create-issue'token: ${{ secrets.GITHUB_TOKEN }}title: 'xxxx'body: 'xxxx'labels: 'xx'assignees: 'xxx'contents: '+1'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
title | 新增 issue 的标题 | string | ✖ |
body | 新增 issue 的内容 | string | ✖ |
labels | 为新增 issue 添加 labels | string | ✖ |
assignees | 为新增 issue 添加 assignees | string | ✖ |
random-to | 当设置时,会在 assignees 中随机选择 | number | ✖ |
contents | 为新增 issue 增加 reaction | string | ✖ |
title
默认为:Default Title
issue-number
,用法参考create-label
新增 label。若想批量维护 labels,可查看。
- name: Create labeluses: actions-cool/issues-helper@v2.2.1with:actions: 'create-label'token: ${{ secrets.GITHUB_TOKEN }}label-name: 'xx'label-color: '0095b3'label-desc: 'xx'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
label-name | 标签名称,支持 emoji | string | ✔ |
label-color | 标签颜色,格式为 16 进制色码,不加 # | string | ✖ |
label-desc | 标签描述 | string | ✖ |
label-name
:若已存在,则无操作label-color
:默认为 ededed
delete-comment
根据 comment-id
删除指定评论。
- name: Delete commentuses: actions-cool/issues-helper@v2.2.1with:actions: 'delete-comment'token: ${{ secrets.GITHUB_TOKEN }}comment-id: xxx
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
comment-id | 指定的 comment | number | ✔ |
out-comments | find-comments 的输出,若查找多个,则操作多个 | string | ✖ |
out-comments
输入时,comment-id
不起作用lock-issue
当新增 invalid
label 时,对该 issue 进行锁定。
name: Lock Issueon:issues:types: [labeled]jobs:lock-issue:runs-on: ubuntu-latestif: github.event.label.name == 'invalid'steps:- name: Lock issueuses: actions-cool/issues-helper@v2.2.1with:actions: 'lock-issue'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
lock-reason | 锁定 issue 的原因 | string | ✖ |
lock-reason
:可选值有 off-topic
too heated
resolved
spam
mark-duplicate
快捷标记重复问题,仅作用于 issue 新增编辑评论。
name: Issue Mark Duplicateon:issue_comment:types: [created, edited]jobs:mark-duplicate:runs-on: ubuntu-lateststeps:- name: mark-duplicateuses: actions-cool/issues-helper@v2.2.1with:actions: 'mark-duplicate'token: ${{ secrets.GITHUB_TOKEN }}
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
duplicate-command | 可设置简洁命令,如:/d | string | ✖ |
duplicate-labels | 为该 issue 额外增加 labels | string | ✖ |
remove-labels | 设置可移除的 labels | string | ✖ |
labels | 替换该 issue 的 labels | string | ✖ |
contents | 为该评论的增加 reaction | string | ✖ |
close-issue | 是否同时关闭该 issue | string | ✖ |
require-permission | 要求权限,默认为 write | string | ✖ |
duplicate-command
:当设置简洁命令时,同时仍支持原有 Duplicate of
。屏蔽内容包含 ?
labels
:优先级最高close-issue
:true
或 'true'
均可生效require-permission
:可选值有 admin
,write
,read
,none
read
权限,则为 read
read
权限,则为 read
read
权限write
后,admin
和 write
满足条件open-issue
打开指定 issue。
- name: Open issueuses: actions-cool/issues-helper@v2.2.1with:actions: 'open-issue'token: ${{ secrets.GITHUB_TOKEN }}issue-number: xxx
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
remove-assignees
移除 issue 指定人员。
- name: Remove assigneesuses: actions-cool/issues-helper@v2.2.1with:actions: 'remove-assignees'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}assignees: 'xx'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
assignees | 移除的指定人。当为空字符时,不进行移除 | string | ✔ |
remove-labels
移除指定 labels。
- name: Remove labelsuses: actions-cool/issues-helper@v2.2.1with:actions: 'remove-labels'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}labels: 'xx'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
labels | 移除的 labels。当为空字符时,不进行移除 | string | ✔ |
labels
支持多个,如 x1,x2,x3
,只会移除 issue 已添加的 labelsset-labels
替换 issue 的 labels。
- name: Set labelsuses: actions-cool/issues-helper@v2.2.1with:actions: 'set-labels'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}labels: 'xx'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
labels | labels 设置。当空字符时,会移除所有 | string | ✔ |
unlock-issue
解锁指定 issue。
- name: Unlock issueuses: actions-cool/issues-helper@v2.2.1with:actions: 'unlock-issue'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
update-comment
根据 comment-id
更新指定评论。
下面的例子展示的是,为每个新增的 comment 增加 👀 。
name: Add eyes to each commenton:issue_comment:types: [created]jobs:update-comment:runs-on: ubuntu-lateststeps:- name: Update commentuses: actions-cool/issues-helper@v2.2.1with:actions: 'update-comment'token: ${{ secrets.GITHUB_TOKEN }}comment-id: ${{ github.event.comment.id }}contents: 'eyes'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
comment-id | 指定的 comment | number | ✔ |
out-comments | find-comments 的输出,若查找多个,则操作多个 | string | ✖ |
body | 更新 comment 的内容 | string | ✖ |
update-mode | 更新模式。默认 replace 替换,append 附加 | string | ✖ |
contents | 增加 reaction | string | ✖ |
body
不填时,会保持原有update-mode
为 append
时,会进行附加操作。非 append
都会进行替换。仅对 body
生效out-comments
输入时,comment-id
不起作用update-issue
根据 issue-number
更新指定 issue。
- name: Update issueuses: actions-cool/issues-helper@v2.2.1with:actions: 'update-issue'token: ${{ secrets.GITHUB_TOKEN }}issue-number: ${{ github.event.issue.number }}state: 'open'title: 'xxx'body: 'xxxx'update-mode: 'replace'labels: 'xx'assignees: 'xxx'contents: '+1'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
issue-number | 指定的 issue | number | ✔ |
state | 修改 issue 的状态,可选值 open closed | string | ✖ |
title | 修改 issue 的标题 | string | ✖ |
body | 修改 issue 的内容 | string | ✖ |
update-mode | 更新模式。默认 replace 替换,append 附加 | string | ✖ |
labels | 替换 issue 的 labels | string | ✖ |
assignees | 替换 issue 的 assignees | string | ✖ |
contents | 增加 reaction | string | ✖ |
state
默认为 open
welcome
当一个 issue 新建时,对首次新建 issue 的用户进行欢迎。若用户非首次新建,则无操作。
name: Issue Welcomeon:issues:types: [opened]jobs:issue-welcome:runs-on: ubuntu-lateststeps:- name: welcomeuses: actions-cool/issues-helper@v2.2.1with:actions: 'welcome'token: ${{ secrets.GITHUB_TOKEN }}body: hi @${{ github.event.issue.user.login }}, welcome!labels: 'welcome1, welcome2'assignees: 'xx1'issue-contents: '+1, -1, eyes'
参数 | 描述 | 类型 | 必填 |
---|---|---|---|
actions | 操作类型 | string | ✔ |
token | token 说明 | string | ✔ |
body | 评论欢迎的内容,不填则不评论 | string | ✖ |
labels | 为该 issue 增加 labels | string | ✖ |
assignees | 为该 issue 增加 assignees | string | ✖ |
issue-contents | 为该 issue 增加 reaction | string | ✖ |