You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@storm.apache.org by bo...@apache.org on 2014/07/25 22:13:12 UTC
[2/7] git commit: Fixed code to do pagination for github
Fixed code to do pagination for github
Project: http://git-wip-us.apache.org/repos/asf/incubator-storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-storm/commit/4550bbf5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-storm/tree/4550bbf5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-storm/diff/4550bbf5
Branch: refs/heads/master
Commit: 4550bbf59ad4bd68d249433235164bc00520aeb9
Parents: b50beb7
Author: Robert (Bobby) Evans <ev...@yahoo-inc.com>
Authored: Thu May 29 19:41:47 2014 +0000
Committer: Robert (Bobby) Evans <ev...@yahoo-inc.com>
Committed: Thu May 29 19:41:47 2014 +0000
----------------------------------------------------------------------
dev-tools/jira-github-join.py | 30 +++++++++++++++++++-----------
1 file changed, 19 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-storm/blob/4550bbf5/dev-tools/jira-github-join.py
----------------------------------------------------------------------
diff --git a/dev-tools/jira-github-join.py b/dev-tools/jira-github-join.py
index 0c66829..88630ba 100755
--- a/dev-tools/jira-github-join.py
+++ b/dev-tools/jira-github-join.py
@@ -256,18 +256,26 @@ class GitHub:
authstr = base64.encodestring('%s:%s' % (options.gituser, gitpassword)).replace('\n', '')
self.headers["Authorization"] = "Basic "+authstr
- def openPulls(self, user, repo):
- url = "https://api.github.com/repos/"+user+"/"+repo+"/pulls?state=open"
- req = urllib2.Request(url,None,self.headers)
- result = urllib2.urlopen(req)
- contents = result.read()
- if result.getcode() != 200:
- raise Exception(result.getcode() + " != 200 "+ contents)
+ def pulls(self, user, repo, type="all"):
+ page=1
ret = []
- for part in json.loads(contents):
- ret.append(GitPullRequest(part, self))
- return ret
-
+ while True:
+ url = "https://api.github.com/repos/"+user+"/"+repo+"/pulls?state="+type+"&page="+str(page)
+
+ req = urllib2.Request(url,None,self.headers)
+ result = urllib2.urlopen(req)
+ contents = result.read()
+ if result.getcode() != 200:
+ raise Exception(result.getcode() + " != 200 "+ contents)
+ got = json.loads(contents)
+ for part in got:
+ ret.append(GitPullRequest(part, self))
+ if len(got) == 0:
+ return ret
+ page = page + 1
+
+ def openPulls(self, user, repo):
+ return self.pulls(user, repo, "open")
def main():
parser = OptionParser(usage="usage: %prog [options]")