I realized it's getting a 401 on api/validation/diffs for `post` and an error on api/session/?expand=user for `status`:
$ ~/rbtools0.7.4/bin/rbt post --username=svc-reviewboard --password=`cat ~/.svc-reviewboard` --debug >>> RBTools 0.7.4 >>> Python 2.6.6 (r266:84292, Nov 21 2013, 10:50:32) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] >>> Running on Linux-2.6.32-504.23.4.el6.x86_64-x86_64-with-redhat-6.6-Santiago >>> Home = /home/<username> >>> Current directory = /home/<username>/rb_test >>> Running: git version >>> Checking for a Subversion repository... >>> Running: svn --non-interactive info >>> Command exited with rc 1: ['svn', '--non-interactive', u'info'] svn: '.' is not a working copy --- >>> Checking for a Git repository... >>> Running: git rev-parse --git-dir >>> Running: git config core.bare >>> Running: git rev-parse --show-toplevel >>> Running: git symbolic-ref -q HEAD >>> Running: git config --get branch.<username>_rb_test.merge >>> Command exited with rc 1: ['git', 'config', '--get', u'branch.<username> _rb_test.merge'] --- >>> Running: git config --get branch.<username>_rb_test.remote >>> Command exited with rc 1: ['git', 'config', '--get', u'branch.<username> _rb_test.remote'] --- >>> Running: git config --get remote.origin.url >>> repository info: Path: >>> https://<gitlabusername>:<gitlabpassword>@gitlab.company.com/<folder>/<repo>.git, >>> Base path: , Supports changesets: False >>> Making HTTP GET request to http://reviewboard.company.com/api/ >>> Running: git rev-parse refs/heads/<username>t_new_rb_test >>> Running: git merge-base 0acfafe86d9f898ae5eebfdd23a1fc26643c71ab origin/ <username>_rb_test >>> Running: git rev-parse e574f4d22b67539c7e192e08462fb260807e6ecd >>> Running: git status --porcelain --untracked-files=no >>> Running: git rev-parse --git-dir >>> Running: git -c core.quotepath=false -c diff.noprefix=false diff --no-color --full-index --ignore-submodules -M --no-ext-diff e574f4d22b67539c7e192e08462fb260807e6ecd..0acfafe86d9f898ae5eebfdd23a1fc26643c71ab >>> Making HTTP GET request to http://reviewboard.company.com/api/validation/diffs/ >>> Got HTTP error: 401: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>401 Authorization Required</title> </head><body> <h1>Authorization Required</h1> <p>This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.</p> </body></html> Traceback (most recent call last): File "/home/<username>/rbtools0.7.4/bin/rbt", line 9, in <module> load_entry_point('RBTools==0.7.4', 'console_scripts', 'rbt')() File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/commands/main.py", line 133, in main command.run_from_argv([RB_MAIN, command_name] + args) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/commands/__init__.py", line 612, in run_from_argv exit_code = self.main(*args) or 0 File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/commands/post.py", line 754, in main (msg_prefix, e)) rbtools.commands.CommandError: Error validating diff HTTP 401 $ ~/rbtools0.7.4/bin/rbt status --username=svc-reviewboard --password=`cat ~/.svc-reviewboard` --debug >>> RBTools 0.7.4 >>> Python 2.6.6 (r266:84292, Nov 21 2013, 10:50:32) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] >>> Running on Linux-2.6.32-504.23.4.el6.x86_64-x86_64-with-redhat-6.6-Santiago >>> Home = /home/<username> >>> Current directory = /home/<username>/rb_test >>> Running: git version >>> Checking for a Subversion repository... >>> Running: svn --non-interactive info >>> Command exited with rc 1: ['svn', '--non-interactive', u'info'] svn: '.' is not a working copy --- >>> Checking for a Git repository... >>> Running: git rev-parse --git-dir >>> Running: git config core.bare >>> Running: git rev-parse --show-toplevel >>> Running: git symbolic-ref -q HEAD >>> Running: git config --get branch.<username>_rb_test.merge >>> Command exited with rc 1: ['git', 'config', '--get', u'branch.<username>_rb_test.merge'] --- >>> Running: git config --get branch.<username>_rb_test.remote >>> Command exited with rc 1: ['git', 'config', '--get', u'branch.<username>_rb_test.remote'] --- >>> Running: git config --get remote.origin.url >>> repository info: Path: https://<gitlabusername>:<gitlabpassword>@gitlab.company.com/formulas/review-board.git, Base path: , Supports changesets: False >>> Making HTTP GET request to http://reviewboard.company.com/api/ >>> Making HTTP GET request to http://reviewboard.company.com/api/session/?expand=user >>> Got HTTP error: 401: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>401 Authorization Required</title> </head><body> <h1>Authorization Required</h1> <p>This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.</p> </body></html> Traceback (most recent call last): File "/home/<username>/rbtools0.7.4/bin/rbt", line 9, in <module> load_entry_point('RBTools==0.7.4', 'console_scripts', 'rbt')() File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/commands/main.py", line 133, in main command.run_from_argv([RB_MAIN, command_name] + args) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/commands/__init__.py", line 612, in run_from_argv exit_code = self.main(*args) or 0 File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/commands/status.py", line 41, in main username = get_username(api_client, api_root, auth_required=True) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/utils/users.py", line 64, in get_username user = get_user(api_client, api_root, auth_required) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/utils/users.py", line 54, in get_user session = get_authenticated_session(api_client, api_root, auth_required) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/utils/users.py", line 22, in get_authenticated_session session = api_root.get_session(expand='user') File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/api/resource.py", line 146, in <lambda> self._get_url(url, **kwargs))) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/api/decorators.py", line 27, in request_method *args, **kwargs) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/api/transport/sync.py", line 74, in execute_request_method return self._execute_request(request) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/api/transport/sync.py", line 83, in _execute_request rsp = self.server.make_request(request) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/api/request.py", line 577, in make_request self.process_error(e.code, e.read()) File "/home/<username>/rbtools0.7.4/lib/python2.6/site-packages/RBTools-0.7.4-py2.6.egg/rbtools/api/request.py", line 553, in process_error raise APIError(http_status, None, None, data) rbtools.api.errors.APIError: HTTP 401 On Tuesday, June 24, 2014 at 1:38:03 AM UTC-4, Pierre Mariani wrote: > > We use Review Board at work. It is installed on a web server that > is protected by HTTP Basic Authentication. > > We haven't been able to use RBTools to interact with it as we > couldn't find the right configuration to pass this authentication > wall. > > After looking through the code, I didn't see how it could be > configured at all, and came to the conclusion that this feature > wasn't supported. > > I also didn't find an obvious way to modify > ReviewBoardHTTPBasicAuthHandler or ReviewBoardHTTPPasswordMgr to > add that feature. > > I resorted to defining a new server option, and passing it > through RBClient, SyncTransport and finally to ReviewBoardServer, > where it is used to define a new urllib2.HTTPBasicAuthHandler > which gets added to the list of handlers. > You can see the diff at > https://github.com/pmariani/rbtools/compare/basic-auth-hack > > It's hacky but good enough for my use case. However, I would > rather not maintain a fork and would like to be able to push > similar changes back to the main RBTools repo. > > Can someone confirm that HTTP Basic Authentication isn't currently > supported > in RBTools? > > Are there design resources that would let me adapt my hack to > something acceptable by the project? > > Thank you > > > -- Supercharge your Review Board with Power Pack: https://www.reviewboard.org/powerpack/ Want us to host Review Board for you? Check out RBCommons: https://rbcommons.com/ Happy user? Let us know! https://www.reviewboard.org/users/ --- You received this message because you are subscribed to the Google Groups "reviewboard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
