[ 
https://issues.apache.org/jira/browse/LIBCLOUD-610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14261655#comment-14261655
 ] 

Jeff Tratner commented on LIBCLOUD-610:
---------------------------------------

Thanks for fixing this!




> GCE Driver with bad private key path generates unintuitive error message
> ------------------------------------------------------------------------
>
>                 Key: LIBCLOUD-610
>                 URL: https://issues.apache.org/jira/browse/LIBCLOUD-610
>             Project: Libcloud
>          Issue Type: Bug
>          Components: Compute
>            Reporter: Jeff Tratner
>            Assignee: Eric Johnson
>            Priority: Minor
>              Labels: Google
>
> When you pass a key to the GCE driver and the path doesn't exist, it ends up 
> passing the buck down to PyCrypto, because it assumes that it isn't a 
> keypath. Relevant lines are here (snipped from `__init__` method of 
> `GoogleBaseAuthConnection`):
> {code:title=gce.py}
>         keypath = os.path.expanduser(key)
>         is_file_path = os.path.exists(keypath) and os.path.isfile(keypath)
>         if is_file_path:
>             with open(keypath, 'r') as f:
>                 key = f.read()
>         super(GoogleServiceAcctAuthConnection, self).__init__(
>             user_id, key, *args, **kwargs)
> {code}
> The problem is the keypath doesn't exist (and obviously it's not a file), so 
> instead of a nice error message saying 'invalid file path', you get a 
> ValueError from PyCrypto saying 'ValueError: RSA key format is not supported' 
> which is problematic especially because you also get this error if you have 
> the wrong version of PyCrypto installed. Given that PyCrypto actually expects 
> bytes, I think it makes sense for libcloud to be responsible for this error.
> I encountered this using salt and there's an open issue to deal with it on 
> the salt end here - https://github.com/saltstack/salt/pull/15589



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to