|
||
---|---|---|
base_api | ||
common | ||
config | ||
controller | ||
jobs | ||
mock | ||
service | ||
.gitignore | ||
Pipfile | ||
Pipfile.lock | ||
README.md | ||
main.py |
README.md
一、如何安装Bot
方法一:bot市场安装
bot已经成功上架到bot市场了,我们可以访问Bot市场,找到bot进行安装。
方法二:通过bot主页安装
我们可以直接访问Bot主页进行安装。
二、Bot权限说明
该bot仅针对代码库时间-推送具备权限。可以有效监测到代码库任意分支的commit记录。
三、Bot运作原理介绍
-
Bot成功安装后,会自动在仓库的webhook列表新增一条webhook记录。
-
当仓库存在push事件后,会触发webhook推送,我们可以在该webhook下面查看到推送内容。
-
服务器接受到webhook的推送,会根据指定Issue关键字"[BOT_CONFIG]定时任务配置"去已安装bot仓库搜索Issue,默认取搜索出来的第一个Issue,读取Issue内容中对定时任务的配置信息。
-
Issue里面定时任务的配置信息,需要按照如下要求格式填写:
- 触发器类型=interval { "trigger": "interval", "weeks": 0, "days": 0, "hours": 1, "seconds": 0, "minutes": 0, "start_date": None, "end_date": None, "jitter": 0, }
- 触发器类型=corn { "trigger": "corn", "year": 1, "day": 1, "week": 1, "day_of_week": 1, "hour": 0, "minute": 0, "second": 1, "start_date": 0, "end_date": None, "timezone": None, "jitter": 0, }
定时任务配置参数不明白的,可以参考文档:APScheduler定时任务介绍
-
服务获取到webhook推送,并且读取到定时任务配置后,对根据仓库的定时任务配置,触发发行版的创建。 举例说明: 1)仓库存在push事件,获取到webhook推送内容 2)读取到定时任务配置,如下: { "trigger": "interval", "weeks": 0, "days": 0, "hours": 1, "seconds": 0, "minutes": 0, "start_date": None, "end_date": None, "jitter": 0, } 3)根据定时任务配置(每间隔1小时检测到有推送则触发发行版的创建), 1个小时候,会自动触发发行版的创建。
-
创建的发行版信息如下:
- 发行版所属标签:当前分支名 - 时间戳
- 发行版名称:当前分支名 || 当前时间:bot触发创建
- 发行版内容: bot检测到过去24小时仓库有推送,触发发行版的自动创建 1. {author}/{email} 于 {commit_time} 在分支 {branch} 提交了代码。commit_id} ||{commit_message} 2. ......
- 发行版创建操作完成后,会在仓库保存定时任务配置的Issue下进行评论,用户可以通过评论查看创建发行版的结果。如果创建发行版失败,会告知用户失败的原因。
四、联系我
如果有任何问题,欢迎联系我~