You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@libcloud.apache.org by an...@apache.org on 2016/10/09 08:50:47 UTC

[01/10] libcloud git commit: added lazy entry

Repository: libcloud
Updated Branches:
  refs/heads/trunk a64b0eacd -> bb95abe85


added lazy entry


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/f33df134
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/f33df134
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/f33df134

Branch: refs/heads/trunk
Commit: f33df13476b6a3a0db5e3dc448c7d7c266abead2
Parents: d960e65
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jun 24 15:18:29 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jun 24 15:18:29 2016 +1000

----------------------------------------------------------------------
 libcloud/__init__.py | 41 ++++++++++++++++++++++++++++++++++++++---
 1 file changed, 38 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/f33df134/libcloud/__init__.py
----------------------------------------------------------------------
diff --git a/libcloud/__init__.py b/libcloud/__init__.py
index 78ad2ee..69b2a0a 100644
--- a/libcloud/__init__.py
+++ b/libcloud/__init__.py
@@ -18,13 +18,20 @@ libcloud provides a unified interface to the cloud computing resources.
 
 :var __version__: Current version of libcloud
 """
+import os
+import codecs
+
+from libcloud.backup.providers import Provider as BackupProvider
+from libcloud.compute.providers import Provider as ComputeProvider
+from libcloud.container.providers import Provider as ContainerProvider
+from libcloud.dns.providers import Provider as DnsProvider
+from libcloud.loadbalancer.providers import Provider as LoadBalancerProvider
+from libcloud.storage.providers import Provider as StorageProvider
+
 
 __all__ = ['__version__', 'enable_debug']
 __version__ = '1.0.0'
 
-import os
-import codecs
-
 try:
     import paramiko
     have_paramiko = True
@@ -75,3 +82,31 @@ def _init_once():
             paramiko.common.logging.basicConfig(level=paramiko.common.DEBUG)
 
 _init_once()
+
+
+class DriverType:
+    """ Backup-as-a-service driver """
+    BACKUP = BackupProvider
+
+    """ Compute-as-a-Service driver """
+    COMPUTE = ComputeProvider
+
+    """ Container-as-a-Service driver """
+    CONTAINER = ContainerProvider
+
+    """ DNS service provider driver """
+    DNS = DnsProvider
+
+    """ Load balancer provider-driver """
+    LOADBALANCER = LoadBalancerProvider
+
+    """ Storage-as-a-Service driver """
+    STORAGE = StorageProvider
+
+
+def get_driver(provider):
+    """
+
+    Get a driver
+    """
+    pass
\ No newline at end of file


[02/10] libcloud git commit: added doc example and test

Posted by an...@apache.org.
added doc example and test


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/93d38700
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/93d38700
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/93d38700

Branch: refs/heads/trunk
Commit: 93d387006d0eb5a1a194098aa480809d2d7baa03
Parents: f33df13
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jun 24 15:53:31 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jun 24 15:53:31 2016 +1000

----------------------------------------------------------------------
 docs/getting_started.rst                        | 14 +++++------
 libcloud/__init__.py                            | 26 +++++++++++++++++---
 .../fixtures/docker/mac_124/create_image.json   |  1 +
 libcloud/test/test_init.py                      |  4 +++
 4 files changed, 35 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/93d38700/docs/getting_started.rst
----------------------------------------------------------------------
diff --git a/docs/getting_started.rst b/docs/getting_started.rst
index 29ddb4b..c407e9c 100644
--- a/docs/getting_started.rst
+++ b/docs/getting_started.rst
@@ -40,10 +40,10 @@ with any of the Libcloud drivers.
 
     from pprint import pprint
 
-    from libcloud.compute.types import Provider
-    from libcloud.compute.providers import get_driver
+    import libcloud
+    
+    cls = libcloud.get_driver(libcloud.DriverType.COMPUTE, libcloud.DriverType.COMPUTE.RACKSPACE)
 
-    cls = get_driver(Provider.RACKSPACE)
 
 2. Instantiate the driver with your provider credentials
 
@@ -70,10 +70,10 @@ see provider-specific documentation and the driver docstrings.
 
     from pprint import pprint
 
-    from libcloud.compute.types import Provider
-    from libcloud.compute.providers import get_driver
-
-    cls = get_driver(Provider.RACKSPACE)
+    import libcloud
+    
+    cls = libcloud.get_driver(libcloud.DriverType.COMPUTE, libcloud.DriverType.COMPUTE.RACKSPACE)
+    
     driver = cls('my username', 'my api key')
 
     pprint(driver.list_sizes())

http://git-wip-us.apache.org/repos/asf/libcloud/blob/93d38700/libcloud/__init__.py
----------------------------------------------------------------------
diff --git a/libcloud/__init__.py b/libcloud/__init__.py
index 69b2a0a..38ebfcb 100644
--- a/libcloud/__init__.py
+++ b/libcloud/__init__.py
@@ -22,11 +22,22 @@ import os
 import codecs
 
 from libcloud.backup.providers import Provider as BackupProvider
+from libcloud.backup.providers import get_driver as get_backup_driver
+
 from libcloud.compute.providers import Provider as ComputeProvider
+from libcloud.compute.providers import get_driver as get_compute_driver
+
 from libcloud.container.providers import Provider as ContainerProvider
+from libcloud.container.providers import get_driver as get_container_driver
+
 from libcloud.dns.providers import Provider as DnsProvider
+from libcloud.dns.providers import get_driver as get_dns_driver
+
 from libcloud.loadbalancer.providers import Provider as LoadBalancerProvider
+from libcloud.loadbalancer.providers import get_driver as get_loadbalancer_driver
+
 from libcloud.storage.providers import Provider as StorageProvider
+from libcloud.storage.providers import get_driver as get_storage_driver
 
 
 __all__ = ['__version__', 'enable_debug']
@@ -104,9 +115,18 @@ class DriverType:
     STORAGE = StorageProvider
 
 
-def get_driver(provider):
-    """
+DriverTypeFactoryMap = {
+    DriverType.BACKUP: get_backup_driver,
+    DriverType.COMPUTE: get_compute_driver,
+    DriverType.CONTAINER: get_container_driver,
+    DriverType.DNS: get_dns_driver,
+    DriverType.LOADBALANCER: get_loadbalancer_driver,
+    DriverType.STORAGE: get_storage_driver
+}
 
+
+def get_driver(type, provider):
+    """
     Get a driver
     """
-    pass
\ No newline at end of file
+    return DriverTypeFactoryMap[type](provider)

http://git-wip-us.apache.org/repos/asf/libcloud/blob/93d38700/libcloud/test/container/fixtures/docker/mac_124/create_image.json
----------------------------------------------------------------------
diff --git a/libcloud/test/container/fixtures/docker/mac_124/create_image.json b/libcloud/test/container/fixtures/docker/mac_124/create_image.json
new file mode 100644
index 0000000..4509f55
--- /dev/null
+++ b/libcloud/test/container/fixtures/docker/mac_124/create_image.json
@@ -0,0 +1 @@
+{"status":"Download complete","progressDetail":{},"id":"cf55d61f5307b7a18a45980971d6cfd40b737dd661879c4a6b3f2aecc3bc37b0"}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/libcloud/blob/93d38700/libcloud/test/test_init.py
----------------------------------------------------------------------
diff --git a/libcloud/test/test_init.py b/libcloud/test/test_init.py
index ad709d7..0276850 100644
--- a/libcloud/test/test_init.py
+++ b/libcloud/test/test_init.py
@@ -24,6 +24,7 @@ try:
 except ImportError:
     have_paramiko = False
 
+import libcloud
 from libcloud import _init_once
 from libcloud.common.base import LoggingHTTPConnection
 from libcloud.common.base import LoggingHTTPSConnection
@@ -56,6 +57,9 @@ class TestUtils(unittest.TestCase):
             paramiko_log_level = logger.getEffectiveLevel()
             self.assertEqual(paramiko_log_level, logging.DEBUG)
 
+    def test_factory(self):
+        driver = libcloud.get_driver(libcloud.DriverType.COMPUTE, libcloud.DriverType.COMPUTE.EC2)
+        self.assertEqual(driver.__name__, 'EC2NodeDriver')
 
 if __name__ == '__main__':
     sys.exit(unittest.main())


[07/10] libcloud git commit: update code from PR review notes

Posted by an...@apache.org.
update code from PR review notes


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/7a1bb847
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/7a1bb847
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/7a1bb847

Branch: refs/heads/trunk
Commit: 7a1bb8475e9d767b1eef51d23e93822325a2f4e3
Parents: 2888c72
Author: Anthony Shaw <an...@apache.org>
Authored: Sat Jun 25 20:18:59 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Sat Jun 25 20:18:59 2016 +1000

----------------------------------------------------------------------
 libcloud/__init__.py | 58 ++-------------------------------
 libcloud/base.py     | 81 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 84 insertions(+), 55 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/7a1bb847/libcloud/__init__.py
----------------------------------------------------------------------
diff --git a/libcloud/__init__.py b/libcloud/__init__.py
index eea2bbb..4c42e91 100644
--- a/libcloud/__init__.py
+++ b/libcloud/__init__.py
@@ -21,24 +21,9 @@ libcloud provides a unified interface to the cloud computing resources.
 import os
 import codecs
 
-from libcloud.backup.providers import Provider as BackupProvider
-from libcloud.backup.providers import get_driver as get_backup_driver
-
-from libcloud.compute.providers import Provider as ComputeProvider
-from libcloud.compute.providers import get_driver as get_compute_driver
-
-from libcloud.container.providers import Provider as ContainerProvider
-from libcloud.container.providers import get_driver as get_container_driver
-
-from libcloud.dns.providers import Provider as DnsProvider
-from libcloud.dns.providers import get_driver as get_dns_driver
-
-from libcloud.loadbalancer.providers import Provider as LoadBalancerProvider
-from libcloud.loadbalancer.providers import get_driver as \
-    get_loadbalancer_driver
-
-from libcloud.storage.providers import Provider as StorageProvider
-from libcloud.storage.providers import get_driver as get_storage_driver
+from libcloud.base import DriverType  # NOQA
+from libcloud.base import DriverTypeFactoryMap  # NOQA
+from libcloud.base import get_driver  # NOQA
 
 
 __all__ = ['__version__', 'enable_debug']
@@ -94,40 +79,3 @@ def _init_once():
             paramiko.common.logging.basicConfig(level=paramiko.common.DEBUG)
 
 _init_once()
-
-
-class DriverType:
-    """ Backup-as-a-service driver """
-    BACKUP = BackupProvider
-
-    """ Compute-as-a-Service driver """
-    COMPUTE = ComputeProvider
-
-    """ Container-as-a-Service driver """
-    CONTAINER = ContainerProvider
-
-    """ DNS service provider driver """
-    DNS = DnsProvider
-
-    """ Load balancer provider-driver """
-    LOADBALANCER = LoadBalancerProvider
-
-    """ Storage-as-a-Service driver """
-    STORAGE = StorageProvider
-
-
-DriverTypeFactoryMap = {
-    DriverType.BACKUP: get_backup_driver,
-    DriverType.COMPUTE: get_compute_driver,
-    DriverType.CONTAINER: get_container_driver,
-    DriverType.DNS: get_dns_driver,
-    DriverType.LOADBALANCER: get_loadbalancer_driver,
-    DriverType.STORAGE: get_storage_driver
-}
-
-
-def get_driver(type, provider):
-    """
-    Get a driver
-    """
-    return DriverTypeFactoryMap[type](provider)

http://git-wip-us.apache.org/repos/asf/libcloud/blob/7a1bb847/libcloud/base.py
----------------------------------------------------------------------
diff --git a/libcloud/base.py b/libcloud/base.py
new file mode 100644
index 0000000..6491f98
--- /dev/null
+++ b/libcloud/base.py
@@ -0,0 +1,81 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from libcloud.backup.providers import Provider as BackupProvider
+from libcloud.backup.providers import get_driver as get_backup_driver
+
+from libcloud.compute.providers import Provider as ComputeProvider
+from libcloud.compute.providers import get_driver as get_compute_driver
+
+from libcloud.container.providers import Provider as ContainerProvider
+from libcloud.container.providers import get_driver as get_container_driver
+
+from libcloud.dns.providers import Provider as DnsProvider
+from libcloud.dns.providers import get_driver as get_dns_driver
+
+from libcloud.loadbalancer.providers import Provider as LoadBalancerProvider
+from libcloud.loadbalancer.providers import get_driver as \
+    get_loadbalancer_driver
+
+from libcloud.storage.providers import Provider as StorageProvider
+from libcloud.storage.providers import get_driver as get_storage_driver
+
+
+class DriverType(object):
+    """ Backup-as-a-service driver """
+    BACKUP = BackupProvider
+
+    """ Compute-as-a-Service driver """
+    COMPUTE = ComputeProvider
+
+    """ Container-as-a-Service driver """
+    CONTAINER = ContainerProvider
+
+    """ DNS service provider driver """
+    DNS = DnsProvider
+
+    """ Load balancer provider-driver """
+    LOADBALANCER = LoadBalancerProvider
+
+    """ Storage-as-a-Service driver """
+    STORAGE = StorageProvider
+
+
+DriverTypeFactoryMap = {
+    DriverType.BACKUP: get_backup_driver,
+    DriverType.COMPUTE: get_compute_driver,
+    DriverType.CONTAINER: get_container_driver,
+    DriverType.DNS: get_dns_driver,
+    DriverType.LOADBALANCER: get_loadbalancer_driver,
+    DriverType.STORAGE: get_storage_driver
+}
+
+
+class DriverTypeNotFoundError(KeyError):
+    def __init__(self):
+        self.message = "Driver type not found."
+
+    def __repr__(self):
+        return self.message
+
+
+def get_driver(type, provider):
+    """
+    Get a driver
+    """
+    try:
+        return DriverTypeFactoryMap[type](provider)
+    except KeyError:
+        raise DriverTypeNotFoundError()


[09/10] libcloud git commit: Merge branch 'lazy_entry' into trunk

Posted by an...@apache.org.
Merge branch 'lazy_entry' into trunk


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/3faee650
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/3faee650
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/3faee650

Branch: refs/heads/trunk
Commit: 3faee650f71b89c0bab2977d50aea45ed543d494
Parents: a64b0ea 7db284c
Author: Anthony Shaw <an...@apache.org>
Authored: Sun Oct 9 19:49:50 2016 +1100
Committer: Anthony Shaw <an...@apache.org>
Committed: Sun Oct 9 19:49:50 2016 +1100

----------------------------------------------------------------------
 docs/getting_started.rst   | 14 +++----
 libcloud/__init__.py       |  8 +++-
 libcloud/base.py           | 81 +++++++++++++++++++++++++++++++++++++++++
 libcloud/test/test_init.py |  9 +++++
 libcloud/utils/py3.py      |  6 ++-
 setup.py                   |  5 ++-
 6 files changed, 111 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/3faee650/libcloud/__init__.py
----------------------------------------------------------------------
diff --cc libcloud/__init__.py
index 56248bd,4c42e91..aaa74c6
--- a/libcloud/__init__.py
+++ b/libcloud/__init__.py
@@@ -21,8 -21,14 +21,12 @@@ libcloud provides a unified interface t
  import os
  import codecs
  
+ from libcloud.base import DriverType  # NOQA
+ from libcloud.base import DriverTypeFactoryMap  # NOQA
+ from libcloud.base import get_driver  # NOQA
+ 
+ 
 -__all__ = ['__version__', 'enable_debug']
 -__version__ = '1.0.0'
+ 
  try:
      import paramiko
      have_paramiko = True

http://git-wip-us.apache.org/repos/asf/libcloud/blob/3faee650/setup.py
----------------------------------------------------------------------


[03/10] libcloud git commit: fix linting issue

Posted by an...@apache.org.
fix linting issue


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/e28aa409
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/e28aa409
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/e28aa409

Branch: refs/heads/trunk
Commit: e28aa409a3665ff509afe2add7508c95458ea2ac
Parents: 93d3870
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jun 24 16:00:58 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jun 24 16:00:58 2016 +1000

----------------------------------------------------------------------
 libcloud/__init__.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/e28aa409/libcloud/__init__.py
----------------------------------------------------------------------
diff --git a/libcloud/__init__.py b/libcloud/__init__.py
index 38ebfcb..eea2bbb 100644
--- a/libcloud/__init__.py
+++ b/libcloud/__init__.py
@@ -34,7 +34,8 @@ from libcloud.dns.providers import Provider as DnsProvider
 from libcloud.dns.providers import get_driver as get_dns_driver
 
 from libcloud.loadbalancer.providers import Provider as LoadBalancerProvider
-from libcloud.loadbalancer.providers import get_driver as get_loadbalancer_driver
+from libcloud.loadbalancer.providers import get_driver as \
+    get_loadbalancer_driver
 
 from libcloud.storage.providers import Provider as StorageProvider
 from libcloud.storage.providers import get_driver as get_storage_driver


[06/10] libcloud git commit: warning when backports not available as will attempted to be imported on module-level import, in setuptools this causes an issue as it's before the pip job runs

Posted by an...@apache.org.
warning when backports not available as will attempted to be imported on module-level import, in setuptools this causes an issue as it's before the pip job runs


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/2888c720
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/2888c720
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/2888c720

Branch: refs/heads/trunk
Commit: 2888c720e4b130dadbc2d566b8083bf172524845
Parents: 5d7c437
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jun 24 16:52:13 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jun 24 16:52:13 2016 +1000

----------------------------------------------------------------------
 libcloud/utils/py3.py | 6 +++++-
 setup.py              | 9 ---------
 2 files changed, 5 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/2888c720/libcloud/utils/py3.py
----------------------------------------------------------------------
diff --git a/libcloud/utils/py3.py b/libcloud/utils/py3.py
index 742d409..ef38eed 100644
--- a/libcloud/utils/py3.py
+++ b/libcloud/utils/py3.py
@@ -64,7 +64,11 @@ if sys.version_info >= (3, 2) and sys.version_info < (3, 3):
     PY32 = True
 
 if PY2_pre_279 or PY3_pre_32:
-    from backports.ssl_match_hostname import match_hostname, CertificateError  # NOQA
+    try:
+        from backports.ssl_match_hostname import match_hostname, CertificateError  # NOQA
+    except ImportError:
+        import warnings
+        warnings.warn("Missing backports.ssl_match_hostname package")
 else:
     # ssl module in Python >= 3.2 includes match hostname function
     from ssl import match_hostname, CertificateError  # NOQA

http://git-wip-us.apache.org/repos/asf/libcloud/blob/2888c720/setup.py
----------------------------------------------------------------------
diff --git a/setup.py b/setup.py
index 2de4048..8a3df01 100644
--- a/setup.py
+++ b/setup.py
@@ -28,15 +28,6 @@ try:
 except ImportError:
     has_epydoc = False
 
-# Mock out the backports module incase an import is requested.
-class MockBackports:
-    def match_hostname():
-        pass
-
-    def CertificateError():
-        pass
-
-sys.modules['backports.ssl_match_hostname'] = MockBackports
 
 import libcloud.utils  # NOQA
 from libcloud.utils.dist import get_packages, get_data_files  # NOQA


[10/10] libcloud git commit: changes for #822

Posted by an...@apache.org.
changes for #822


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/bb95abe8
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/bb95abe8
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/bb95abe8

Branch: refs/heads/trunk
Commit: bb95abe85d9cd57ba77e23961095c072efeabb66
Parents: 3faee65
Author: Anthony Shaw <an...@apache.org>
Authored: Sun Oct 9 19:50:37 2016 +1100
Committer: Anthony Shaw <an...@apache.org>
Committed: Sun Oct 9 19:50:37 2016 +1100

----------------------------------------------------------------------
 CHANGES.rst | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/bb95abe8/CHANGES.rst
----------------------------------------------------------------------
diff --git a/CHANGES.rst b/CHANGES.rst
index 09ea680..f94040e 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -7,6 +7,10 @@ Changes in current version of Apache Libcloud
 General
 ~~~~~~~
 
+- Introduced new base API for instantiating drivers
+  (GITHUB-822)
+  [Anthony Shaw]
+
 - Added certificate path for SLES12/OpenSUSE12
   (GITHUB-884)
   [Michael Calmer]


[08/10] libcloud git commit: added type to error and added test

Posted by an...@apache.org.
added type to error and added test


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/7db284c6
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/7db284c6
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/7db284c6

Branch: refs/heads/trunk
Commit: 7db284c6b5bbd021361fd98bc2fbe1a783ad4d2b
Parents: 7a1bb84
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jul 1 16:19:30 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jul 1 16:19:30 2016 +1000

----------------------------------------------------------------------
 libcloud/base.py           | 6 +++---
 libcloud/test/test_init.py | 5 +++++
 2 files changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/7db284c6/libcloud/base.py
----------------------------------------------------------------------
diff --git a/libcloud/base.py b/libcloud/base.py
index 6491f98..94e9f17 100644
--- a/libcloud/base.py
+++ b/libcloud/base.py
@@ -64,8 +64,8 @@ DriverTypeFactoryMap = {
 
 
 class DriverTypeNotFoundError(KeyError):
-    def __init__(self):
-        self.message = "Driver type not found."
+    def __init__(self, type):
+        self.message = "Driver type '%s' not found." % type
 
     def __repr__(self):
         return self.message
@@ -78,4 +78,4 @@ def get_driver(type, provider):
     try:
         return DriverTypeFactoryMap[type](provider)
     except KeyError:
-        raise DriverTypeNotFoundError()
+        raise DriverTypeNotFoundError(type)

http://git-wip-us.apache.org/repos/asf/libcloud/blob/7db284c6/libcloud/test/test_init.py
----------------------------------------------------------------------
diff --git a/libcloud/test/test_init.py b/libcloud/test/test_init.py
index 0276850..97beacc 100644
--- a/libcloud/test/test_init.py
+++ b/libcloud/test/test_init.py
@@ -26,6 +26,7 @@ except ImportError:
 
 import libcloud
 from libcloud import _init_once
+from libcloud.base import DriverTypeNotFoundError
 from libcloud.common.base import LoggingHTTPConnection
 from libcloud.common.base import LoggingHTTPSConnection
 
@@ -61,5 +62,9 @@ class TestUtils(unittest.TestCase):
         driver = libcloud.get_driver(libcloud.DriverType.COMPUTE, libcloud.DriverType.COMPUTE.EC2)
         self.assertEqual(driver.__name__, 'EC2NodeDriver')
 
+    def test_raises_error(self):
+        with self.assertRaises(DriverTypeNotFoundError):
+            libcloud.get_driver('potato', 'potato')
+
 if __name__ == '__main__':
     sys.exit(unittest.main())


[04/10] libcloud git commit: remove accidental import

Posted by an...@apache.org.
remove accidental import


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/2ea10dc9
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/2ea10dc9
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/2ea10dc9

Branch: refs/heads/trunk
Commit: 2ea10dc92546130c529b5a1d16450cb8c007214e
Parents: e28aa40
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jun 24 16:02:45 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jun 24 16:02:45 2016 +1000

----------------------------------------------------------------------
 libcloud/test/container/fixtures/docker/mac_124/create_image.json | 1 -
 1 file changed, 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/2ea10dc9/libcloud/test/container/fixtures/docker/mac_124/create_image.json
----------------------------------------------------------------------
diff --git a/libcloud/test/container/fixtures/docker/mac_124/create_image.json b/libcloud/test/container/fixtures/docker/mac_124/create_image.json
deleted file mode 100644
index 4509f55..0000000
--- a/libcloud/test/container/fixtures/docker/mac_124/create_image.json
+++ /dev/null
@@ -1 +0,0 @@
-{"status":"Download complete","progressDetail":{},"id":"cf55d61f5307b7a18a45980971d6cfd40b737dd661879c4a6b3f2aecc3bc37b0"}
\ No newline at end of file


[05/10] libcloud git commit: mock out backports for the setuptools module

Posted by an...@apache.org.
mock out backports for the setuptools module


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/5d7c4377
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/5d7c4377
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/5d7c4377

Branch: refs/heads/trunk
Commit: 5d7c43774932934bab0ff7ebfab469a09bfa620d
Parents: 2ea10dc
Author: Anthony Shaw <an...@apache.org>
Authored: Fri Jun 24 16:30:09 2016 +1000
Committer: Anthony Shaw <an...@apache.org>
Committed: Fri Jun 24 16:30:09 2016 +1000

----------------------------------------------------------------------
 setup.py | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/5d7c4377/setup.py
----------------------------------------------------------------------
diff --git a/setup.py b/setup.py
index e8cc1bf..2de4048 100644
--- a/setup.py
+++ b/setup.py
@@ -28,8 +28,18 @@ try:
 except ImportError:
     has_epydoc = False
 
-import libcloud.utils
-from libcloud.utils.dist import get_packages, get_data_files
+# Mock out the backports module incase an import is requested.
+class MockBackports:
+    def match_hostname():
+        pass
+
+    def CertificateError():
+        pass
+
+sys.modules['backports.ssl_match_hostname'] = MockBackports
+
+import libcloud.utils  # NOQA
+from libcloud.utils.dist import get_packages, get_data_files  # NOQA
 
 libcloud.utils.SHOW_DEPRECATION_WARNING = False