此插件从Github
收集数据并通过Grafana
展示。我们可以为技术领导者回答诸如以下问题:
- 本月是否比以往更高产?
- 我们能多快地响应客户需求?
- 质量是否有提升?
以下是几个利用Github
数据的例子:
- 每个人的平均需求研发时间
- 千行代码Bug数
- 提交数依时间分布
配置界面需要填入以下字段
- Connection Name [
只读
]⚠️ 默认值为 "Github" 请不要改动。
- Endpoint URL (REST URL, 以
https://
或http://
开头)- 应当填入可用的REST API Endpoint。例如
https://api.github.com/
⚠️ url应当以/
结尾
- 应当填入可用的REST API Endpoint。例如
- Auth Token(s) (Personal Access Token)
- 如何创建personal access token,请参考官方文档GitHub Docs on Personal Tokens
- 填入至少一个token,可以填入多个token并以英文逗号
,
间隔,填入多个token可以加快数据采集速度
对于使用Basic Authentication
或者OAuth
的请求,限制为5000次/小时/token
- https://docs.github.com/en/rest/overview/resources-in-the-rest-api 通过在配置文件中设置多个token可以达到更高的请求速率
注意: 如果使用付费的企业版Github
可以达到15000次/小时/token。
关于GitHub REST API的更多信息请参考官方文档GitHub Docs on REST
点击Save Connection保存配置。
目前只有一个可选配置Proxy URL,如果你需要代理才能访问GitHub才需要配置此项
- GitHub Proxy URL [
可选
]- 输入可用的代理服务器地址,例如:
http://your-proxy-server.com:1080
- 输入可用的代理服务器地址,例如:
点击Save Settings保存配置。
在.env文件中,可以配置
- GITHUB_PR_BODY_CLOSE_PATTERN: 定义了pr body关联issue的关键字,可查看.env.example里面的示例
为了触发插件进行数据收集和计算,您需要构造一个 JSON, 通过 Pipelines
中的 Create Pipeline Run
选项来选择 Advanced Mode
, 发送请求触发收集计算任务:
[
[
{
"plugin": "github",
"options": {
"repo": "lake",
"owner": "merico-dev"
}
}
]
]
你也可以通过向 /pipelines
发起一个POST请求来触发数据收集。
curl --location --request POST 'localhost:8080/pipelines' \
--header 'Content-Type: application/json' \
--data-raw '
{
"name": "github 20211126",
"tasks": [[{
"plugin": "github",
"options": {
"repo": "lake",
"owner": "merico-dev"
}
}]]
}
'