如果标签“准备合并”和“验证成功”应用于控制台,我会有一些代码将拉出请求打印到控制台。
如果与pull请求相关联的文件集中的任何文件具有'status'的值,我还想通过这些相同的pull请求来打印'True':'added'。
我下面的代码打印出每个单独文件的结果,但如果在与文件状态相关的任何文件中满足'添加'条件,我希望它只打印一行:True,否则文件状态:如果集合中的所有文件都没有'status',则返回false:'added'。
如果满足标签条件,我尝试使用与输出拉取请求标题相同的逻辑,但它不起作用
我希望这是有道理的。
我现在得到的输出:
Title: updates for blah
Files Status: False
Files Status: False
Files Status: True
Title: updates2
Files Status: False
Files Status: False
我希望根据这些结果输出:
Title: updates for blah
File Status: True
Title: updates2
File Status: False
代码:
for prs in repo.pull_requests():
getlabels = repo.issue(prs.number).as_dict()
if 'ready-to-merge' in [getlabels['name'] for getlabels in getlabels['labels']] and 'Validation Succeeded' in [getlabels['name'] for getlabels in getlabels['labels']]:
changes = repo.pull_request(prs.number).as_dict()
print("Title: ",changes['title'])
for data in repo.pull_request(prs.number).files():
files = data.as_dict()
if 'added' in [files['status'] for status in files]:
print("File Status: True")
else:
print("File Status: False")
迭代与pull请求关联的文件时返回的示例数据。我希望根据“状态”建立条件:“添加”:
[
{
"sha": "bbcd538c8e72b8c175046e27cc8f907076331401",
"filename": "file1.txt",
"status": "added",
"additions": 103,
"deletions": 21,
"changes": 124,
"blob_url": "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt",
"raw_url": "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt",
"contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e",
"patch": "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test"
}
]