简介
本教程演示如何使用 imjohnbo/issue-bot
操作定期创建议题。 例如,您可以每周创建一个议题,用作团队会议的议程。
在本教程中,你将首先创建一个使用 imjohnbo/issue-bot
操作的工作流文件。 然后,您将自定义工作流以适应您的需要。
创建工作流程
-
选择要应用此项目管理工作流程的仓库。 您可以使用您有写入权限的现有仓库,或者创建一个新的仓库。 有关创建存储库的详细信息,请参阅“创建新仓库”。
-
在存储库中,创建一个名为
.github/workflows/YOUR_WORKFLOW.yml
的文件,将YOUR_WORKFLOW
替换为你选择的名称。 这是一个工作流程文件。 有关在 GitHub 上创建新文件的详细信息,请参阅“创建新文件”。 -
将以下 YAML 内容复制到工作流程文件中。
YAML # 此工作流使用未经 GitHub 认证的操作。 # 它们由第三方提供,并受 # 单独的服务条款、隐私政策和支持 # 文档。 # GitHub 建议将操作固定到提交 SHA。 # 若要获取较新版本,需要更新 SHA。 # 还可以引用标记或分支,但该操作可能会更改而不发出警告。 name: Weekly Team Sync on: schedule: - cron: 20 07 * * 1 jobs: create_issue: name: Create team sync issue runs-on: ubuntu-latest permissions: issues: write steps: - name: Create team sync issue uses: imjohnbo/issue-bot@3d96848fb5e9a4a473bb81ae62b4b4866a56e93a with: assignees: "monalisa, doctocat, hubot" labels: "weekly sync, docs-team" title: "Team sync" body: | ### Agenda - [ ] Start the recording - [ ] Check-ins - [ ] Discussion points - [ ] Post the recording ### Discussion Points Add things to discuss below - [Work this week](https://github.com/orgs/github/projects/3) pinned: false close-previous: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# 此工作流使用未经 GitHub 认证的操作。 # 它们由第三方提供,并受 # 单独的服务条款、隐私政策和支持 # 文档。 # GitHub 建议将操作固定到提交 SHA。 # 若要获取较新版本,需要更新 SHA。 # 还可以引用标记或分支,但该操作可能会更改而不发出警告。 name: Weekly Team Sync on: schedule: - cron: 20 07 * * 1 jobs: create_issue: name: Create team sync issue runs-on: ubuntu-latest permissions: issues: write steps: - name: Create team sync issue uses: imjohnbo/issue-bot@3d96848fb5e9a4a473bb81ae62b4b4866a56e93a with: assignees: "monalisa, doctocat, hubot" labels: "weekly sync, docs-team" title: "Team sync" body: | ### Agenda - [ ] Start the recording - [ ] Check-ins - [ ] Discussion points - [ ] Post the recording ### Discussion Points Add things to discuss below - [Work this week](https://github.com/orgs/github/projects/3) pinned: false close-previous: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
自定义工工作流程文件中的参数:
- 更改
on.schedule
的值以指示你希望何时运行此工作流。 在上面的示例中,工作流将于每周一 7:20 UTC 运行。 有关计划工作流的详细信息,请参阅“触发工作流的事件”。 - 将
assignees
的值更改为你想要分配给此议题的 GitHub 用户名。 - 将
labels
的值更改为你想要应用于此议题的标签列表。 - 将
title
的值更改为你希望该议题拥有的标题。 - 将
body
的值更改为你想要用于议题正文的文本。 使用|
字符可以为此参数使用多行值。 - 如果想要将这个议题固定在存储库中,请将
pinned
设置为true
。 有关固定问题的详细信息,请参阅“将议题固定到仓库”。 - 如果你想在每次新建议题时关闭此工作流生成的上一个议题,请将
close-previous
设置为true
。 工作流将关闭具有labels
字段中定义的标签的最新议题。 为避免关闭错误的议题,请使用独特的标签或标签组合。
- 更改
-
将工作流程文件提交到仓库的默认分支。 有关详细信息,请参阅“创建新文件”。
预期结果
根据 schedule
参数(例如,每周一 7:20 UTC),你的工作流将使用你指定的受理人、标签、标题和正文创建新议题。 如果将 pinned
设置为 true
,工作流会将此议题固定到存储库。 如果将 close-previous
设置为 true,工作流将关闭具有匹配标签的最新议题。
注意:schedule
事件在 GitHub Actions 工作流运行期间负载过高时可能会延迟。 高负载时间包括每小时的开始时间。 如果负载足够高,可能会删除一些排队作业。 为了降低延迟的可能性,将您的工作流程安排在不同时间运行。
您可以查看工作流程运行的历史记录,以便定期查看此工作流程运行。 有关详细信息,请参阅“查看工作流程运行历史记录”。
后续步骤
- 若要详细了解可以使用
imjohnbo/issue-bot
操作执行的其他操作,例如轮换受理人或使用议题模板,请参阅imjohnbo/issue-bot
操作文档。 - 搜索 GitHub 以获取使用此操作的工作流示例。