Updated Branches:
  refs/heads/0.12.x ed8350e03 -> f3be0573b
  refs/heads/trunk fb11854c6 -> 536ae048a


Modify Rackspace DNS driver to use main auth endpoint and update the code
which constructs the API endpoint url.


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

Branch: refs/heads/0.12.x
Commit: d9b9de8826e5846ab5db76815a0722a8bb7a6e3b
Parents: ed8350e
Author: Tomaz Muraus <[email protected]>
Authored: Wed Jun 26 16:04:03 2013 +0200
Committer: Tomaz Muraus <[email protected]>
Committed: Wed Jun 26 16:04:03 2013 +0200

----------------------------------------------------------------------
 libcloud/dns/drivers/rackspace.py   | 12 +++++++++---
 libcloud/test/dns/test_rackspace.py | 13 ++++++++++---
 2 files changed, 19 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/d9b9de88/libcloud/dns/drivers/rackspace.py
----------------------------------------------------------------------
diff --git a/libcloud/dns/drivers/rackspace.py 
b/libcloud/dns/drivers/rackspace.py
index dd30171..f33dc2a 100644
--- a/libcloud/dns/drivers/rackspace.py
+++ b/libcloud/dns/drivers/rackspace.py
@@ -25,7 +25,7 @@ import copy
 from libcloud.common.base import PollingConnection
 from libcloud.common.types import LibcloudError
 from libcloud.utils.misc import merge_valid_keys, get_new_obj
-from libcloud.common.rackspace import AUTH_URL_US, AUTH_URL_UK
+from libcloud.common.rackspace import AUTH_URL_US
 from libcloud.compute.drivers.openstack import OpenStack_1_1_Connection
 from libcloud.compute.drivers.openstack import OpenStack_1_1_Response
 
@@ -71,7 +71,6 @@ class RackspaceDNSConnection(OpenStack_1_1_Connection, 
PollingConnection):
     """
     Rackspace DNS Connection class.
     """
-
     responseCls = RackspaceDNSResponse
     XML_NAMESPACE = None
     poll_interval = 2.5
@@ -124,7 +123,14 @@ class RackspaceUSDNSConnection(RackspaceDNSConnection):
 
 
 class RackspaceUKDNSConnection(RackspaceDNSConnection):
-    auth_url = AUTH_URL_UK
+    auth_url = AUTH_URL_US
+
+    def get_endpoint(self):
+        public_url = super(RackspaceUKDNSConnection, self).get_endpoint()
+        public_url = public_url.replace('https://dns.api',
+                                        'https://lon.dns.api')
+
+        return public_url
 
 
 class RackspaceDNSDriver(DNSDriver, OpenStackDriverMixin):

http://git-wip-us.apache.org/repos/asf/libcloud/blob/d9b9de88/libcloud/test/dns/test_rackspace.py
----------------------------------------------------------------------
diff --git a/libcloud/test/dns/test_rackspace.py 
b/libcloud/test/dns/test_rackspace.py
index ab61a20..5ac698b 100644
--- a/libcloud/test/dns/test_rackspace.py
+++ b/libcloud/test/dns/test_rackspace.py
@@ -30,6 +30,7 @@ from libcloud.test.secrets import DNS_PARAMS_RACKSPACE
 
 class RackspaceUSTests(unittest.TestCase):
     klass = RackspaceUSDNSDriver
+    region = ''
 
     def setUp(self):
         self.klass.connectionCls.conn_classes = (
@@ -70,8 +71,13 @@ class RackspaceUSTests(unittest.TestCase):
         driver = self.klass(*DNS_PARAMS_RACKSPACE, **kwargs)
         driver.connection._populate_hosts_and_request_paths()
 
-        self.assertEquals('https://dns.api.rackspacecloud.com/v1.0/11111',
-            driver.connection.get_endpoint())
+        if self.region:
+            url = 'https://%s.dns.api.rackspacecloud.com/v1.0/11111' % \
+                  (self.region)
+        else:
+            url = 'https://dns.api.rackspacecloud.com/v1.0/11111'
+
+        self.assertEquals(url, driver.connection.get_endpoint())
 
     def test_list_record_types(self):
         record_types = self.driver.list_record_types()
@@ -310,8 +316,9 @@ class RackspaceUSTests(unittest.TestCase):
                           'foo.bar')
 
 
-class RackspaceUK1Tests(RackspaceUSTests):
+class RackspaceUKTests(RackspaceUSTests):
     klass = RackspaceUKDNSDriver
+    region = 'lon'
 
 
 class RackspaceMockHttp(MockHttp):

Reply via email to