Labels: Type-Defect Priority-Medium
New issue 3429 by determin...@gmail.com: rbt post does not work with CVS
when commiting from remote server (locally it works)
*** READ THIS BEFORE POSTING!
*** You must complete this form in its entirety, or your bug report will be
*** If you have a security issue to report, please send it confidentially
*** secur...@reviewboard.org. Posting security-related issues to this bug
*** tracker causes us to have to do an emergency release.
*** For customer support, please post to reviewbo...@googlegroups.com
*** If you have a patch, please submit it to
*** This bug tracker is public. Please check that any logs or other
*** that you include has been stripped of confidential information.
What version are you running?
Review Board 2.0.2
What's the URL of the page containing the problem?
What steps will reproduce the problem?
1. Install Review Board 2.0.2 on dedicated server A
2. Install CVS 1.12.13 on dedicated server B
3. Install RBTools 0.6 on server B
4. Add CVS hook on post commit (in script loginfo on server B)
5. Checkout a project on server B, make a change in a file, commit it -->
rbt post works as expected and request is created
6. Checkout a project on remote server C, make a change in a file, commit
it --> file is commited but rbt post reports an error and no review request
What is the expected output? What do you see instead?
the error displayed is:
Python 2.7.6 (default, Mar 22 2014, 22:59:38)
ERROR: The provided repository type was not detected in the current
Running on Linux-3.13.0-24-generic-i686-with-Ubuntu-14.04-trusty
Home = /root
Current directory = /var/tmp/cvs-serv9906
Checking for a CVS repository...
What operating system are you using? What browser?
CVS server and RBtools are on Ubuntu 14.04 LTS (GNU/Linux 3.13.0-24-generic
i686) (server A above)
ReviewBoard server is on Ubuntu 12.04.4 LTS (GNU/Linux 3.11.0-15-generic
x86_64) (server B above)
Remote CVS is on AIX Version 7.1 (server C above) and CVS version on C is
Please provide any additional information below.
I've noticed the following function cannot return info and is the root of
if not check_install(['cvs']):
logging.debug('Unable to execute "cvs": skipping CVS')
cvsroot_path = os.path.join("CVS", "Root")
if not os.path.exists(cvsroot_path):
fp = open(cvsroot_path, "r")
repository_path = fp.read().strip()
i = repository_path.find("@")
if i != -1:
repository_path = repository_path[i + 1:]
i = repository_path.rfind(":")
if i != -1:
host = repository_path[:i]
canon = socket.getfqdn(host)
repository_path = repository_path.replace('%s:' % host,
'%s:' % canon)
except socket.error, msg:
logging.error("failed to get fqdn for %s, msg=%s"
% (host, msg))
because when a remote commit is done from server C, the CVS on server B
(where RBtools are installed) uses a temporary directory (something
like '/var/tmp/cvs-serv9906') instead of a normal directory with
checked-out project like in step 5.
In the CVS hook I have the following call (some variables are precalculated
as $USER but they are not relevant here):
rbt post --debug --submit-as $USER --target-groups Reviewers_G1
--disable-proxy --server $REVIEWBOARD_URL --re
pository $REPOSITORY --username service_user --password some_password
--markdown --summary "$SUMMARY" --description "$DESC
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
You received this message because you are subscribed to the Google Groups
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to firstname.lastname@example.org.
Visit this group at http://groups.google.com/group/reviewboard-issues.
For more options, visit https://groups.google.com/d/optout.