On 18 December 2012 14:27, Mitchell Garnaat <
mi...@garnaat.com> wrote:
> Hmm, I'm unable to reproduce this. I created a fresh Ubuntu quantal EC2
> instance, cloned the develop branch of boto and installed it in a
> virtualenv. I then followed the exact steps you have below and did not
> receive the error. I also tried it without the virtualenv. Again, no
> error.
>
I just tried it on EC2 and it didn't raise the error either, however
on this google instance I'm running I get it without fail.
I might create a fresh one and see if I still get the problem.. very weird!
> I've never seen this error come up before. Basically, when a connection is
> created it advertises the type of authentication mechanism it needs and then
> a list of pluggable authentication modules are searched. If no modules
> provide the requested authentication, you get a
> boto.exception.NoAuthHandlerFound exception. If one module is found, it
> uses it. If more than one module claims to support that authentication
> method, you get the error you are receiving. So, somehow, there are
> multiple pluggable auth modules that claim to support the "s3"
> authentication.
>
Is there anyway that this plugin.Plugin list could change? Could I
just drop the HmacAuthV1Handler from the list?
I just got boto with 'pip install boto' so I don't think it's been
modified at all.
PS full trace back:
Python 2.7.3 (default, Aug 1 2012, 05:14:39)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from boto.s3.connection import S3Connection
>>> from boto.gs.connection import GSConnection
>>> s3conn = S3Connection("","")
>>> gsconn = GSConnection("","")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/boto/gs/connection.py",
line 46, in __init__
suppress_consec_slashes=suppress_consec_slashes)
File "/usr/local/lib/python2.7/dist-packages/boto/s3/connection.py",
line 169, in __init__
validate_certs=validate_certs)
File "/usr/local/lib/python2.7/dist-packages/boto/connection.py",
line 548, in __init__
host, config, self.provider, self._required_auth_capability())
File "/usr/local/lib/python2.7/dist-packages/boto/auth.py", line
647, in get_auth_handler
requested_capability))
boto.exception.TooManyAuthHandlerReadyToAuthenticate: 2 AuthHandlers
['ComputeAuth', 'HmacAuthV1Handler'] ready to authenticate for
requested_capability ['s3'], only 1 expected. This happens if you
import multiple pluging.Plugin implementations that declare support
for the requested_capability.