为了更好的展示功能,下面以实际场景举例,请灵活参考。
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.3.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-labelsname 可根据自行根据实际情况修改${{ 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.3.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.3.1with:actions: 'close-issue'token: ${{ secrets.GITHUB_TOKEN }}issue-number: xxx
| 参数 | 描述 | 类型 | 必填 |
|---|---|---|---|
| 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.3.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.3.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 Titleissue-number,用法参考create-label新增 label。若想批量维护 labels,可查看。
- name: Create labeluses: actions-cool/issues-helper@v2.3.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:默认为 edededdelete-comment根据 comment-id 删除指定评论。
- name: Delete commentuses: actions-cool/issues-helper@v2.3.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.3.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 spammark-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.3.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,noneread 权限,则为 readread 权限,则为 readread 权限write 后,admin 和 write 满足条件
open-issue打开指定 issue。
- name: Open issueuses: actions-cool/issues-helper@v2.3.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.3.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.3.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.3.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.3.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.3.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.3.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 默认为 openwelcome当一个 issue 新建时,对首次新建 issue 的用户进行欢迎。若用户非首次新建,则无操作。
name: Issue Welcomeon:issues:types: [opened]jobs:issue-welcome:runs-on: ubuntu-lateststeps:- name: welcomeuses: actions-cool/issues-helper@v2.3.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 | ✖ |