title: libcloud: missing 1 required positional argument error during driver init
body: <p>I'm using:</p>
  
  <ul>
  <li>libcloud 2.2.1</li>
  <li>python 3.5.2</li>
  <li>virtualenv</li>
  <li>GCE service account with a json credential file</li>
  </ul>
  
  <p>Python code looks like this:</p>
  
  <pre><code>from libcloud.compute.types import Provider
  from libcloud.compute.providers import get_driver
  
  
  def run():
      """ Run this script
      """
      ComputeEngine = get_driver(Provider.GCE)
      driver = ComputeEngine(user_id='****@****.com',
                             credential_file='serviceaccount.json',
                             project='****')
  
  run()
  </code></pre>
  
  <p>When I run my code, I'm getting:</p>
  
  <pre><code>Traceback (most recent call last):
    File "./myscript.py", line 47, in &lt;module&gt;
      run()
    File "./myscript.py", line 21, in run
      project='ebs-it', secure=True)
    File "/***/virtualenv/lib/python3.5/site-packages/libcloud/compute/drivers/gce.py", line 1795, in __init__
      super(GCENodeDriver, self).__init__(user_id, key, **kwargs)
    File "/***/virtualenv/lib/python3.5/site-packages/libcloud/common/base.py", line 975, in __init__
      self.connection = self.connectionCls(*args, **conn_kwargs)
  TypeError: __init__() missing 1 required positional argument: 'secure'
  </code></pre>
  
  <p>This looks <a href="http://libcloud.readthedocs.io/en/latest/compute/drivers/gce.html" rel="nofollow noreferrer">perfectly textbook</a> to me. Any idea what could be going wrong?</p>