Re: Issue 2712 in reviewboard: [rbtools] post-review command line flag --p4-client and --p4-port does not work when P4CONFIG file is used in a multiple workspaces (perforce servers) scenario

2014-01-30 Thread reviewboard

Updates:
Status: Fixed

Comment #4 on issue 2712 by trowb...@gmail.com: [rbtools] post-review  
command line flag --p4-client and --p4-port does not work when P4CONFIG  
file is used in a multiple workspaces (perforce servers) scenario

http://code.google.com/p/reviewboard/issues/detail?id=2712

Fixed in rbtools master (bc65437). This will ship with 0.6.

--
You received this message because this project is configured to send all  
issue notifications to this address.

You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups 
reviewboard-issues group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard-issues+unsubscr...@googlegroups.com.
To post to this group, send email to reviewboard-issues@googlegroups.com.
Visit this group at http://groups.google.com/group/reviewboard-issues.
For more options, visit https://groups.google.com/groups/opt_out.


Re: Issue 2712 in reviewboard: [rbtools] post-review command line flag --p4-client and --p4-port does not work when P4CONFIG file is used in a multiple workspaces (perforce servers) scenario

2012-12-23 Thread reviewboard

Updates:
Labels: Component-RBTools

Comment #2 on issue 2712 by trowb...@gmail.com: [rbtools] post-review  
command line flag --p4-client and --p4-port does not work when P4CONFIG  
file is used in a multiple workspaces (perforce servers) scenario

http://code.google.com/p/reviewboard/issues/detail?id=2712

(No comment was entered for this change.)

--
You received this message because you are subscribed to the Google Groups 
reviewboard-issues group.
To post to this group, send email to reviewboard-issues@googlegroups.com.
To unsubscribe from this group, send email to 
reviewboard-issues+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/reviewboard-issues?hl=en.



Issue 2712 in reviewboard: [rbtools] post-review command line flag --p4-client and --p4-port does not work when P4CONFIG file is used in a multiple workspaces (perforce servers) scenario

2012-08-21 Thread reviewboard

Status: New
Owner: 
Labels: Type-Defect Priority-Medium

New issue 2712 by qianyanj...@gmail.com: [rbtools] post-review command line  
flag --p4-client and --p4-port does not work when P4CONFIG file is used in  
a multiple workspaces (perforce servers) scenario

http://code.google.com/p/reviewboard/issues/detail?id=2712

* NOTE: Do not post confidential information in this bug report. *
*   If you need immediate support, please contact*
*   reviewbo...@googlegroups.com *

What version are you running?
1.6.11, rbtools

What's the URL of the page containing the problem?
It's the post-review command in rbtools has the problem, so no URL.

What steps will reproduce the problem?
1. suppose the following settings for two workspaces on two Perforce  
Servers. (PerforceServer1 and PerforceServer2)


PerforceServer1 settings:
  server port: PerforceServer1:1666
  workspace name: alice-workspace
  workspace root: d:\perforce1
  env variable P4CONFIG=config.txt
  configure file: d:\perforce1\config.txt
  content of the config file:
 P4PORT=PerforceServer1:1666
 P4CLIENT=alice-workspace
 P4USER=alice

PerforceServer2  settings:
  server port: PerforceServer2:1666
  workspace name: bob-workspace
  workspace root: d:\perforce2
  env variable P4CONFIG=config.txt
  configure file: d:\perforce2\config.txt
  content of the config file:
 P4PORT=PerforceServer2:1666
 P4CLIENT=bob-workspace
 P4USER=bob

2. run post-review from a path under d:\perforce1 to post a changelist that  
actually lives on PerforceServer2. Initiate the post-review command the  
following way:
   post-review --p4-port=PerforceServer2:1666 --p4-client=bob-workspace  
123456


What is the expected output? What do you see instead?
We expect post-review will post the PerforceServer2 changelist 123456; but  
it actually try to find the changelist on PerforceServer1


What operating system are you using? What browser?
Win7 + Python 2.6.

Please provide any additional information below.

I did the following research on this issue. Hopefully it will be useful for  
you to fix it.

--
According to the p4 manuals  
http://www.perforce.com/perforce/doc.current/manuals/p4guide/02_config.html,  
we can specify perforce settings such as server port, user, and workspace  
names using the following methods, listed in ORDER of precedence:


1. On the command line (p4.exe), using flags
2. In a config file, if P4CONFIG is set
3. User environment variables (on UNIX or Windows)
...

which means that cmd line flags  P4CONFIG  env variable.

But when running post-review, if the users has specified the --p4-client  
and --p4-port flags, the corresponding env variables will be set. In the  
postreview.py python code, I find the following code:


if options.p4_client:
   os.environ['P4CLIENT'] = options.p4_client

if options.p4_port:
   os.environ['P4PORT'] = options.p4_port

but because the env variable P4CONFIG is set and the config file exists,  
the perforce settings in the config file will override the env variables  
which was specified from the post-review command line.


For the example in the reproduce steps, because we're running the  
post-review from a path under d:\perforce1, the workspace root, the setting  
in the d:\perforce1\config.txt file will take effect and override the env  
variables, that's why those --p4-client and --p4-port option does not work.


To solve this issue, the post-review tool should, instead of setting env  
variables, append those flags to the p4 info and p4 describe command  
directly because command line flags have the highest precedence.





--
You received this message because you are subscribed to the Google Groups 
reviewboard-issues group.
To post to this group, send email to reviewboard-issues@googlegroups.com.
To unsubscribe from this group, send email to 
reviewboard-issues+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/reviewboard-issues?hl=en.