bzr-svn push problem with authentification (sourceforge)

Asked by Jens-Malte Gottfried on 2011-11-07

I have a bzr checkout of some sourceforge SVN project.
Checkout and pull work fine, but to push the changesets to SF's SVN repo, authentification fails with the following error:

Using saved push location: https://charon-suite.svn.sourceforge.net/svnroot/charon-suite/charon/trunk
bzr: ERROR: Permission denied: ".": MKACTIVITY of '/svnroot/charon-suite/!svn/act/3f81038f-0765-4edb-a4a6-1e2bb41d5748': authorization failed: Could not authenticate to server: rejected Basic challenge (https://charon-suite.svn.sourceforge.net)

After googling around, I already tried using plain SVN (without bzr), worked fine without problems (checkout and commit).
Also using svn+https:// prefix and using with or without user-name in the URL did also not solve the problem.

Log message about the problem (user names or similar replaced by xxx):
Mon 2011-11-07 14:50:00 +0100
0.034 bazaar version: 2.4.2
0.035 bzr arguments: [u'push']
0.054 looking for plugins in /home/xxx/.bazaar/plugins
0.054 looking for plugins in /usr/lib/python2.7/dist-packages/bzrlib/plugins
0.077 encoding stdout as sys.stdout encoding 'ANSI_X3.4-1968'
0.103 opening working tree '/home/xxx/Dokumente/Sources/charon-suite/charon'
1.218 bzr-svn: using Subversion 1.6.12 (), subvertpy 0.8.9
9.135 pushing 'xxx-20111107134209-t5bh1p64p0hxl92d' (['svn-v4:7d56a235-2f8b-4627-957e-5f30cc86da59:charon/trunk:1813'])
12.831 Obtaining username and password for SVN connection '<https://charon-suite.svn.sourceforge.net:443> SourceForge Subversion area'(username: 'xxx')
12.839 Unable to obtain credentials for {'protocol': 'https', 'user': 'xxx', 'server': 'charon-suite.svn.sourceforge.net'} from GNOME keyring: NoMatchError()

Removing the gnome keyring (as proposed as solution in various forums) also has no effect.
From using plain SVN, in the gnome keyring there is the correct entry stored with domain and user name (same information as in line starting with 12.831) but without protocol or server tags. Could this be the reason for the NoMatchError?

Is it possible to disable the keyring-lookup feature as a workaround?
On ubuntu natty, bzr asked for the SF passphrase on push, but at least it was possible to push.
After upgrading to oneiric, I did not get bzr push to work without the mentioned error.
Please provide some information how to avoid this error since it is a real show-stopper for using bzr that is really needed to
keep the SF repos and launchpad branches (for autobuilding) synchronized.

I am using Xubuntu 11.10 with the latest bzr release from the bzr ppa. bzr --version:
Bazaar (bzr) 2.4.2
  Python interpreter: /usr/bin/python 2.7.2
  Python standard library: /usr/lib/python2.7
  Platform: Linux-3.0.0-13-generic-x86_64-with-Ubuntu-11.10-oneiric
  bzrlib: /usr/lib/python2.7/dist-packages/bzrlib

Question information

Language:
English Edit question
Status:
Open
For:
Bazaar Edit question
Assignee:
No assignee Edit question
Last query:
2011-12-16
Last reply:

To check if the described key-match error is causing the problem, I found the project gkeyring (https://launchpad.net/gkeyring). With this tool, it was possible, to add a key to the keyring that is matched and provides the correct credentials for the subversion authentification.

The command to add this key was:
bzr branch lp:gkeyring
python gkeyring/gkeyring.py -s -p protocol='https',user='xxx',server='charon-suite.svn.sourceforge.net' -n "some description"
Password: xxxxx

After adding this key, bzr push works. But in my opinion that is a very hackish way to get bzr push to SF working.

In the meanwhile, even with added key to the gnome-keyring, authentication does not work anymore (i do not know why).
Error message is as above, the log output:

Fr 2011-12-16 14:53:36 +0100
0.019 bazaar version: 2.4.2
0.019 bzr arguments: [u'push']
0.031 looking for plugins in /export/home/jgottfri/.bazaar/plugins
0.031 looking for plugins in /usr/lib/python2.7/dist-packages/bzrlib/plugins
0.046 encoding stdout as sys.stdout encoding 'UTF-8'
0.061 opening working tree '/export/home/jgottfri/Dokumente/Sources/charon-suite/charon-utils'
0.802 bzr-svn: using Subversion 1.6.12 (), subvertpy 0.8.9
4.220 potential branching layouts: [('trunk1', 292), ('root', 9)]
4.220 Guessed repository layout: TrunkLayout(1), guess layout to use: TrunkLayout(1)
8.764 pushing 'xxx-20111216134057-ytn0p1yvlro7eyiq' (['xxx-20111216123645-gk7blnwmglhocb02'])
11.800 Obtaining username and password for SVN connection '<https://charon-suite.svn.sourceforge.net:443> SourceForge Subversion area'(username: 'xxx')
12.201 Obtaining username and password for SVN connection '<https://charon-suite.svn.sourceforge.net:443> SourceForge Subversion area'(username: None)
12.592 Error suppressed by only_raises:
12.593 Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/bzrlib/decorators.py", line 248, in wrapped
    return unbound(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/svn/repository.py", line 520, in unlock
    'Must end write groups before releasing write locks.')
BzrError: Must end write groups before releasing write locks.

PermissionDenied: Permission denied: ".": MKACTIVITY von »/svnroot/charon-suite/!svn/act/fe9b158d-a18e-468d-8bdd-f5f23abccb33«: Autorisierung schlug fehl: Could not authenticate to server: rejected Basic challenge (https://charon-suite.svn.sourceforge.net)

12.595 return code 3

Since there is no error fetching the credentials, the key has been found in the keyring. The duplicated line obtaining the username and password, first time with correct username, second time without user name looks like something goes wrong communicating with the svn server.
Is there any progress working on Bug #899628 ?

Can you help with this problem?

Provide an answer of your own, or ask Jens-Malte Gottfried for more information if necessary.

To post a message you must log in.