GitHub Actions Labeler 项目教程
1. 项目的目录结构及介绍
GitHub Actions Labeler 项目的目录结构如下:
.
├── .github
│ └── workflows
│ └── labeler.yml
├── .gitignore
├── LICENSE
├── README.md
├── action.yml
└── package.json
目录结构介绍:
- .github/workflows/labeler.yml: 这是 GitHub Actions 的工作流配置文件,定义了如何自动为仓库中的 PR 添加标签。
- .gitignore: 指定 Git 应该忽略的文件和目录。
- LICENSE: 项目的开源许可证文件。
- README.md: 项目的介绍文档,通常包含项目的概述、使用说明等。
- action.yml: GitHub Actions 的自定义动作配置文件,定义了动作的输入、输出和运行环境。
- package.json: Node.js 项目的配置文件,包含项目的元数据、依赖项等。
2. 项目的启动文件介绍
GitHub Actions Labeler 项目的主要启动文件是 .github/workflows/labeler.yml
。这个文件定义了 GitHub Actions 的工作流,当有新的 Pull Request 提交时,会自动触发该工作流,并根据配置的规则为 PR 添加标签。
labeler.yml 文件内容示例:
name: Labeler
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
label:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v2
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
启动文件介绍:
- name: 定义工作流的名称。
- on: 定义触发工作流的事件,这里是在 Pull Request 被打开、同步或重新打开时触发。
- jobs: 定义工作流中的任务。
- runs-on: 指定任务运行的环境,这里是 Ubuntu 最新版本。
- steps: 定义任务的具体步骤,这里使用了
actions/labeler
动作,并传递了repo-token
参数。
3. 项目的配置文件介绍
GitHub Actions Labeler 项目的主要配置文件是 action.yml
。这个文件定义了自定义动作的输入、输出和运行环境。
action.yml 文件内容示例:
name: 'Labeler'
description: 'Automatically label pull requests based on the files changed'
author: 'GitHub'
inputs:
repo-token:
description: 'Token to use to authorize label changes'
required: true
default: ${{ github.token }}
runs:
using: 'node12'
main: 'dist/index.js'
配置文件介绍:
- name: 定义动作的名称。
- description: 动作的描述,说明动作的功能。
- author: 动作的作者。
- inputs: 定义动作的输入参数,这里定义了
repo-token
参数,用于授权标签更改。 - runs: 定义动作的运行方式,这里使用 Node.js 12 环境,并指定主入口文件为
dist/index.js
。
通过以上配置,GitHub Actions Labeler 项目能够自动为仓库中的 Pull Request 添加标签,提高代码审查的效率。