Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
openEuler-Advisor
提交
5c84f0f4
O
openEuler-Advisor
项目概览
openeuler
/
openEuler-Advisor
通知
47
Star
4
Fork
4
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
openEuler-Advisor
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
5c84f0f4
编写于
6月 10, 2020
作者:
S
Shinwell Hu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix lint issue
上级
ec00ce89
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
23 addition
and
3 deletion
+23
-3
tc_reminder.py
tc_reminder.py
+23
-3
未找到文件。
tc_reminder.py
浏览文件 @
5c84f0f4
...
...
@@ -14,17 +14,22 @@ import yaml
from
pprint
import
pprint
from
datetime
import
datetime
class
Advisor
:
class
Advisor
(
object
):
"""
This is a object abstract TC robot
"""
def
__init__
(
self
):
self
.
secret
=
open
(
os
.
path
.
expanduser
(
"~/.gitee_personal_token.json"
),
"r"
)
self
.
token
=
json
.
load
(
self
.
secret
)
# self.req = urllib.request.Request('https://gitee.com/api/v5/repos/#{owner}/issues')
self
.
header
=
{
"User-Agent"
:
"Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0"
}
self
.
tc_members
=
None
self
.
time_format
=
"%Y-%m-%dT%H:%M:%S%z"
def
get_json
(
self
,
url
):
"""
Return object parsed from remote json
"""
headers
=
self
.
header
.
copy
()
headers
[
"Content-Type"
]
=
"application/json;charset=UTF-8"
req
=
urllib
.
request
.
Request
(
url
=
url
,
...
...
@@ -37,6 +42,9 @@ class Advisor:
def
get_file
(
self
,
repo
,
path
):
"""
Get remote raw file
"""
url
=
"https://gitee.com/{repo}/raw/master/{path}"
.
format
(
repo
=
repo
,
path
=
path
)
req
=
urllib
.
request
.
Request
(
url
=
url
,
headers
=
self
.
header
,
...
...
@@ -48,23 +56,35 @@ class Advisor:
return
resp
def
get_prs
(
self
):
"""
Get list of PRs
"""
pulls_url
=
"https://gitee.com/api/v5/repos/openeuler/community/pulls"
list_url
=
pulls_url
+
"?access_token={token}&state=open&sort=created&direction=desc&page=1&per_page=100"
url
=
list_url
.
format
(
token
=
self
.
token
[
"access_token"
])
return
self
.
get_json
(
url
)
def
get_pr_comments
(
self
,
number
):
"""
Get Comments for a specific PR
"""
pulls_url
=
"https://gitee.com/api/v5/repos/openeuler/community/pulls"
desc_url
=
pulls_url
+
"/{number}/comments?access_token={token}&page=1&per_page=100"
url
=
desc_url
.
format
(
number
=
number
,
token
=
self
.
token
[
"access_token"
])
return
self
.
get_json
(
url
)
def
get_tc_members
(
self
):
"""
Get list of current TC members
"""
m
=
yaml
.
load
(
adv
.
get_file
(
"openeuler/community"
,
"sig/TC/OWNERS"
),
Loader
=
yaml
.
Loader
)
self
.
tc_members
=
m
[
"maintainers"
]
return
m
[
"maintainers"
]
def
filter_out_tc
(
self
,
users
):
"""
Pick TC members from users
"""
if
not
self
.
tc_members
:
self
.
get_tc_members
()
return
[
x
for
x
in
self
.
tc_members
if
x
in
users
]
...
...
@@ -83,7 +103,7 @@ if __name__ == "__main__":
commenters
.
append
(
pr
[
"user"
][
"login"
])
last_update
=
pr
[
"updated_at"
]
print
(
"URL: https://gitee.com/openeuler/community/pulls/{number}"
.
format
(
number
=
pr
[
"number"
]))
print
(
"Title: "
+
pr
[
"title"
])
print
(
"Title: "
+
pr
[
"title"
])
comments
=
adv
.
get_pr_comments
(
pr
[
"number"
])
last_update
=
datetime
.
strptime
(
comments
[
0
][
"updated_at"
],
adv
.
time_format
)
comments
.
reverse
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录