-
Notifications
You must be signed in to change notification settings - Fork 12
/
issue.py
29 lines (22 loc) · 914 Bytes
/
issue.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import json
import os
import requests
def create_issue(title, body, milestone=None, labels=None, assignees=None):
url = 'https://api.github.com/repos/xueyuanl/daily-hackernews/issues'
headers = {'Content-Type': 'application/json', 'Authorization': 'token ' + os.getenv('ACCESS_TOKEN')}
body = {'title': title, 'body': body}
result = requests.post(url=url, json=body, headers=headers)
if result.status_code == 201:
j_str = result.text
issue_obj = json.loads(j_str)
return issue_obj['url']
return False
def lock_issue(issue_url):
url = issue_url + '/lock'
headers = {'Accept': 'application/vnd.github+json',
'Authorization': 'token ' + os.getenv('ACCESS_TOKEN')}
body = {'lock_reason': 'too heated'}
result = requests.put(url=url, json=body, headers=headers)
if result.status_code == 204:
return True
return False