Description: |
|
---|
Beanstalk post-receive web hook
Review Request #5698 — Created April 10, 2014 and submitted
Information | |
---|---|
b.ramnani | |
Review Board | |
master | |
b77457d... | |
Reviewers | |
reviewboard | |
chipx86, david, mike_conley, smacleod |
This is a Beanstalk post-receive hook that will automatically close review requests as "submitted" after a push. To determine which review requests should be closed, it scans through each commit's commit message for the following strings (case-insensitive): "Reviewed at <reviewboard_url>/r/<id>" or "Review request #<id>".
This is what the JSON payload looks like:
http://support.beanstalkapp.com/customer/portal/articles/75753-trigger-a-url-on-commit-with-web-hooks
Test carried out on git and svn repos.
1) Push with the review request id in the commit message. Review request closed. [PASSED]
2) Push without a review request id in the commit message. (Review request closed based on the commit_id for git and error looged for svn) [PASSED].
3) Push with non existent review request id. (Error: Review request does not exist) [PASSED]
4) Push with review id in the message that is already submitted. (logged a warning: request id already submitted.) [PASSED]
5) Push with review id in the message that has been marked as discarded. (review request marked as submitted.) [PASSED]
Description | From | Last Updated |
---|---|---|
Remove this line. |
|
|
Remove this line. |
|
|
We've switched over to using the new exception syntax: try: ... except KeyError as e: ... |
|
|
We've switched over to using the new exception syntax: try: ... except KeyError as e: ... |
|
|
How would you feel about introducing another method that could do this check and fan out to the individual implementations? |
|
|
So the individual implementations close the review requests or they just return the review_id_to_commits map as they do now ? |
B. b.ramnani | |
dict.get() defaults to None if the key doesn't exist, so you don't need to specify this second parameter. |
|
|
Two blank lines between top-level things. |
|
|
Can you try to shorten and/or re-wrap this to keep it under 80 columns? |
|
|
dict.get() defaults to None if the key doesn't exist, so you don't need to specify this second parameter. |
|
|
dict.get() defaults to None if the key doesn't exist, so you don't need to specify this second parameter. |
|
|
Two blank lines between top-level things. |
|
|
Can you try to shorten and/or re-wrap this to keep it under 80 columns? |
|
|
dict.get() defaults to None if the key doesn't exist, so you don't need to specify this second parameter. |
|
Description: |
|
||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Testing Done: |
|
||||||||||||||||||||||||
Commit: |
|
||||||||||||||||||||||||
Diff: |
Revision 2 (+82) |
-
-
-
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) We've switched over to using the new exception syntax:
try: ... except KeyError as e: ...
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) We've switched over to using the new exception syntax:
try: ... except KeyError as e: ...
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) How would you feel about introducing another method that could do this check and fan out to the individual implementations?
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) dict.get()
defaults to None if the key doesn't exist, so you don't need to specify this second parameter. -
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) Can you try to shorten and/or re-wrap this to keep it under 80 columns?
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) dict.get()
defaults to None if the key doesn't exist, so you don't need to specify this second parameter. -
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) dict.get()
defaults to None if the key doesn't exist, so you don't need to specify this second parameter. -
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) Can you try to shorten and/or re-wrap this to keep it under 80 columns?
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) dict.get()
defaults to None if the key doesn't exist, so you don't need to specify this second parameter.
-
-
reviewboard/hostingsvcs/beanstalk.py (Diff revision 2) So the individual implementations close the review requests or they just return the review_id_to_commits map as they do now ?
Change Summary:
Added support for SVN and tested for the same.
Testing Done: |
|
|||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Commit: |
|
|||||||||||||||||||||||||||
Diff: |
Revision 3 (+83) |
Testing Done: |
|
---|