You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by vi...@apache.org on 2015/05/21 02:01:42 UTC
mesos git commit: Updated post-reviews.py to auto set 'depends on'
field.
Repository: mesos
Updated Branches:
refs/heads/master f1b3c095e -> 4dd48490d
Updated post-reviews.py to auto set 'depends on' field.
Review: https://reviews.apache.org/r/34503
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/4dd48490
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/4dd48490
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/4dd48490
Branch: refs/heads/master
Commit: 4dd48490dfd931ce857d1e7331f6141970baa6b0
Parents: f1b3c09
Author: Vinod Kone <vi...@gmail.com>
Authored: Wed May 20 15:21:00 2015 -0700
Committer: Vinod Kone <vi...@gmail.com>
Committed: Wed May 20 16:12:21 2015 -0700
----------------------------------------------------------------------
support/post-reviews.py | 27 ++++++++++++++++-----------
1 file changed, 16 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/4dd48490/support/post-reviews.py
----------------------------------------------------------------------
diff --git a/support/post-reviews.py b/support/post-reviews.py
index 4849725..e871ceb 100755
--- a/support/post-reviews.py
+++ b/support/post-reviews.py
@@ -26,15 +26,9 @@ import atexit
import os
import sys
-from subprocess import *
-
-
-def readline(prompt):
- try:
- return raw_input(prompt)
- except KeyboardInterrupt:
- sys.exit(1)
+from distutils.version import LooseVersion
+from subprocess import call, Popen, PIPE, STDOUT
def execute(command, ignore_errors=False):
process = None
@@ -67,6 +61,7 @@ def execute(command, ignore_errors=False):
post_review = None
rbt_version = execute(['rbt', '--version'], ignore_errors=True)
if rbt_version:
+ rbt_version = LooseVersion(rbt_version)
post_review = ['rbt', 'post']
elif execute(['post-review', '--version'], ignore_errors=True):
post_review = ['post-review']
@@ -141,6 +136,7 @@ for line in log.split('\n'):
previous = parent_branch
+parent_review_request_id = None
for i in range(len(shas)):
sha = shas[i]
@@ -188,6 +184,7 @@ for i in range(len(shas)):
except KeyboardInterrupt:
i = i + 1
previous = sha
+ parent_review_request_id = review_request_id
continue
revision_range = previous + ':' + sha
@@ -199,9 +196,14 @@ for i in range(len(shas)):
command = command + ['--review-request-id=' + review_request_id]
# Determine how to specify the revision range.
- if 'rbt' in post_review and not rbt_version.startswith('RBTools 0.5'):
- # rbt >= 0.6 revisions are passed in as args.
- command = command + sys.argv[1:] + [previous, sha]
+ if 'rbt' in post_review and rbt_version >= LooseVersion('RBTools 0.6'):
+ # rbt >= 0.6.1 supports '--depends-on' argument.
+ # Only set the "depends on" if this is not the first review in the chain.
+ if rbt_version >= LooseVersion('RBTools 0.6.1') and parent_review_request_id:
+ command = command + ['--depends-on=' + parent_review_request_id]
+
+ # rbt >= 0.6 revisions are passed in as args.
+ command = command + sys.argv[1:] + [previous, sha]
else:
# post-review and rbt < 0.6 revisions are passed in using the revision
# range option.
@@ -213,9 +215,11 @@ for i in range(len(shas)):
print output
+
if review_request_id is not None:
i = i + 1
previous = sha
+ parent_review_request_id = review_request_id
continue
lines = output.split('\n')
@@ -263,3 +267,4 @@ for i in range(len(shas)):
execute(['git', 'update-ref', 'refs/heads/' + branch, new_sha, old_sha])
i = i + 1
+ parent_review_request_id = review_request_id