Repository: jclouds
Updated Branches:
  refs/heads/master 9b50754c2 -> c857ccc47


JCLOUDS-583: Updates HP Cloud compute provider to work with 13.5 release


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

Branch: refs/heads/master
Commit: c857ccc4794c3538a995fddc5ea334c2e03e68c0
Parents: 9b50754
Author: Chris Custine <[email protected]>
Authored: Tue Jun 3 15:29:56 2014 -0600
Committer: Ignasi Barrera <[email protected]>
Committed: Tue Jun 10 09:41:46 2014 +0200

----------------------------------------------------------------------
 .../internal/BaseComputeServiceLiveTest.java    |   2 +-
 providers/hpcloud-compute/pom.xml               |   5 +-
 .../compute/HPCloudComputeProviderMetadata.java |  14 +-
 ...PCloudComputeProviderMetadataExpectTest.java |   8 +-
 .../HPCloudComputeTemplateBuilderLiveTest.java  |  20 +-
 .../src/test/resources/access_hpcloud.json      | 523 +++++++++++--------
 6 files changed, 347 insertions(+), 225 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/c857ccc4/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
----------------------------------------------------------------------
diff --git 
a/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
 
b/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
index 312d323..856fde0 100644
--- 
a/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
+++ 
b/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
@@ -172,7 +172,7 @@ public abstract class BaseComputeServiceLiveTest extends 
BaseComputeServiceConte
       ComputeServiceContext context = null;
       try {
          Properties overrides = setupProperties();
-         overrides.setProperty(provider + ".identity", "MOMMA");
+         overrides.setProperty(provider + ".identity", "MOM:MA");
          overrides.setProperty(provider + ".credential", "MIA");
          context = newBuilder()
                .modules(ImmutableSet.of(getLoggingModule(), 
credentialStoreModule))

http://git-wip-us.apache.org/repos/asf/jclouds/blob/c857ccc4/providers/hpcloud-compute/pom.xml
----------------------------------------------------------------------
diff --git a/providers/hpcloud-compute/pom.xml 
b/providers/hpcloud-compute/pom.xml
index 6e8ae73..3f3cdce 100644
--- a/providers/hpcloud-compute/pom.xml
+++ b/providers/hpcloud-compute/pom.xml
@@ -33,12 +33,9 @@
 
   <properties>
     
<test.hpcloud-compute.endpoint>https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/</test.hpcloud-compute.endpoint>
-    <test.hpcloud-compute.api-version>1.1</test.hpcloud-compute.api-version>
     <test.hpcloud-compute.build-version />
     <!--
-        Identity must be tenantName:userName.  Note that the following
-        credentials are the HP Cloud username and password, not the access
-        key id and secret key.
+        Identity must be "tenantName:accessKey". Credential is "secretKey"
     -->
     
<test.hpcloud-compute.identity>FIXME_IDENTITY</test.hpcloud-compute.identity>
     
<test.hpcloud-compute.credential>FIXME_CREDENTIAL</test.hpcloud-compute.credential>

http://git-wip-us.apache.org/repos/asf/jclouds/blob/c857ccc4/providers/hpcloud-compute/src/main/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadata.java
----------------------------------------------------------------------
diff --git 
a/providers/hpcloud-compute/src/main/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadata.java
 
b/providers/hpcloud-compute/src/main/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadata.java
index 2ca5385..ce3c211 100644
--- 
a/providers/hpcloud-compute/src/main/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadata.java
+++ 
b/providers/hpcloud-compute/src/main/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadata.java
@@ -18,6 +18,7 @@ package org.jclouds.hpcloud.compute;
 
 import static org.jclouds.compute.config.ComputeServiceProperties.TEMPLATE;
 import static 
org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_NODE_TERMINATED;
+import static 
org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.CREDENTIAL_TYPE;
 import static 
org.jclouds.openstack.keystone.v2_0.config.KeystoneProperties.REQUIRES_TENANT;
 import static 
org.jclouds.openstack.nova.v2_0.config.NovaProperties.AUTO_ALLOCATE_FLOATING_IPS;
 import static 
org.jclouds.openstack.nova.v2_0.config.NovaProperties.AUTO_GENERATE_KEYPAIRS;
@@ -26,6 +27,7 @@ import java.net.URI;
 import java.util.Properties;
 
 import org.jclouds.hpcloud.compute.config.HPCloudComputeServiceContextModule;
+import org.jclouds.openstack.keystone.v2_0.config.CredentialTypes;
 import org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule;
 import 
org.jclouds.openstack.keystone.v2_0.config.MappedAuthenticationApiModule;
 import 
org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule.ZoneModule;
@@ -66,9 +68,12 @@ public class HPCloudComputeProviderMetadata extends 
BaseProviderMetadata {
       properties.setProperty(TIMEOUT_NODE_TERMINATED, 60 * 1000 + "");
 
       properties.setProperty(REQUIRES_TENANT, "true");
+      properties.setProperty(CREDENTIAL_TYPE, 
CredentialTypes.API_ACCESS_KEY_CREDENTIALS);
+
       properties.setProperty(AUTO_ALLOCATE_FLOATING_IPS, "true");
       properties.setProperty(AUTO_GENERATE_KEYPAIRS, "true");
-      properties.setProperty(TEMPLATE, 
"osFamily=UBUNTU,osVersionMatches=1[012].[01][04],os64Bit=true,locationId=az-2.region-a.geo-1");
+      properties.setProperty(TEMPLATE, 
"osFamily=UBUNTU,osVersionMatches=1[24].[01][04]," +
+            "imageNameMatches=.*LTS.*,os64Bit=true,locationId=region-a.geo-1");
       return properties;
    }
    
@@ -78,6 +83,9 @@ public class HPCloudComputeProviderMetadata extends 
BaseProviderMetadata {
          id("hpcloud-compute")
          .name("HP Cloud Compute Services")
          .apiMetadata(new NovaApiMetadata().toBuilder()
+                  .identityName("${tenantName}:${accessKey}")
+                  .credentialName("${secretKey}")
+                  .version("2")
                   .endpointName("identity service url ending in /v2.0/")
                   
.defaultEndpoint("https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/";)
                   .defaultModules(ImmutableSet.<Class<? extends 
Module>>builder()
@@ -89,9 +97,9 @@ public class HPCloudComputeProviderMetadata extends 
BaseProviderMetadata {
                                               
.add(HPCloudComputeServiceContextModule.class).build())
                   .build())
          .homepage(URI.create("http://hpcloud.com";))
-         .console(URI.create("https://manage.hpcloud.com/compute";))
+         .console(URI.create("https://horizon.hpcloud.com/";))
          .linkedServices("hpcloud-compute", "hpcloud-objectstorage")
-         .iso3166Codes("US-NV")
+         .iso3166Codes("US-NV", "US-VA")
          
.endpoint("https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/";)
          
.defaultProperties(HPCloudComputeProviderMetadata.defaultProperties());
       }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/c857ccc4/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadataExpectTest.java
----------------------------------------------------------------------
diff --git 
a/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadataExpectTest.java
 
b/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadataExpectTest.java
index e8030e5..d8e38d8 100644
--- 
a/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadataExpectTest.java
+++ 
b/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/HPCloudComputeProviderMetadataExpectTest.java
@@ -34,8 +34,8 @@ public class HPCloudComputeProviderMetadataExpectTest extends 
BaseNovaApiExpectT
 
    public HPCloudComputeProviderMetadataExpectTest() {
       this.provider = "hpcloud-compute";
-      this.identity = "tenant:username";
-      this.credential = "password";
+      this.identity = "tenant:accesskey";
+      this.credential = "secret";
    }
 
    public void testCanGetConfiguredZones() {
@@ -44,7 +44,7 @@ public class HPCloudComputeProviderMetadataExpectTest extends 
BaseNovaApiExpectT
             
.endpoint("https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/tokens";)
             .addHeader("Accept", "application/json")
             .payload(payloadFromStringWithContentType(
-                     
"{\"auth\":{\"passwordCredentials\":{\"username\":\"username\",\"password\":\"password\"},\"tenantName\":\"tenant\"}}"
+                     
"{\"auth\":{\"apiAccessKeyCredentials\":{\"accessKey\":\"accesskey\",\"secretKey\":\"secret\"},\"tenantName\":\"tenant\"}}"
                      , "application/json")).build();
       
 
@@ -53,7 +53,7 @@ public class HPCloudComputeProviderMetadataExpectTest extends 
BaseNovaApiExpectT
 
       NovaApi whenNovaRegionExists = requestSendsResponse(authenticate, 
authenticationResponse);
 
-      assertEquals(whenNovaRegionExists.getConfiguredZones(), 
ImmutableSet.of("az-3.region-a.geo-1", "az-2.region-a.geo-1", 
"az-1.region-a.geo-1"));
+      assertEquals(whenNovaRegionExists.getConfiguredZones(), 
ImmutableSet.of("region-a.geo-1", "region-b.geo-1"));
 
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/c857ccc4/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/compute/HPCloudComputeTemplateBuilderLiveTest.java
----------------------------------------------------------------------
diff --git 
a/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/compute/HPCloudComputeTemplateBuilderLiveTest.java
 
b/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/compute/HPCloudComputeTemplateBuilderLiveTest.java
index e7c0931..9ff2ee6 100644
--- 
a/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/compute/HPCloudComputeTemplateBuilderLiveTest.java
+++ 
b/providers/hpcloud-compute/src/test/java/org/jclouds/hpcloud/compute/compute/HPCloudComputeTemplateBuilderLiveTest.java
@@ -18,6 +18,7 @@ package org.jclouds.hpcloud.compute.compute;
 
 import static org.jclouds.compute.util.ComputeServiceUtils.getCores;
 import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertTrue;
 
 import java.util.Set;
 
@@ -47,12 +48,13 @@ public class HPCloudComputeTemplateBuilderLiveTest extends 
BaseTemplateBuilderLi
          public boolean apply(OsFamilyVersion64Bit input) {
             switch (input.family) {
                case UBUNTU:
-                  return (input.version.equals("") || 
input.version.equals("12.04") || input.version.matches("^1[01].*")) && 
input.is64Bit;
+                  return (input.version.equals("") || 
input.version.matches("(10.04)|(11.10)|(12.04)|(12.10)|(13.04)|(13.10)")) && 
input.is64Bit;
                case DEBIAN:
-                  return input.is64Bit && !input.version.equals("5.0");
+                  return input.is64Bit && 
!input.version.matches("(5.[0-9])|(6.[0-9])|(7.[0-9])");
                case CENTOS:
-                  return (input.version.equals("") || 
input.version.equals("5.6") || input.version.equals("6.0"))
-                           && input.is64Bit;
+                  return (input.version.equals("") || 
input.version.matches("(5.0)|(5.8)|(6.3)|(6.5)")) && input.is64Bit;
+               case WINDOWS:
+                  return input.version.equals("") || 
input.version.equals("2008") || (input.version.equals("2008 R2") && 
input.is64Bit);
                default:
                   return false;
             }
@@ -67,17 +69,17 @@ public class HPCloudComputeTemplateBuilderLiveTest extends 
BaseTemplateBuilderLi
       assertEquals(defaultTemplate.getImage().getOperatingSystem().is64Bit(), 
true);
       
assertEquals(defaultTemplate.getImage().getOperatingSystem().getVersion(), 
"12.04");
       
assertEquals(defaultTemplate.getImage().getOperatingSystem().getFamily(), 
OsFamily.UBUNTU);
-      assertEquals(defaultTemplate.getImage().getName(), "Ubuntu Precise 12.04 
LTS Server 64-bit 20120424");
+      assertTrue(defaultTemplate.getImage().getName().startsWith("Ubuntu 
Server 12.04"));
       
assertEquals(defaultTemplate.getImage().getDefaultCredentials().getUser(), 
"ubuntu");
-      assertEquals(defaultTemplate.getLocation().getId(), 
"az-2.region-a.geo-1");
-      assertEquals(defaultTemplate.getImage().getLocation().getId(), 
"az-2.region-a.geo-1");
-      assertEquals(defaultTemplate.getHardware().getLocation().getId(), 
"az-2.region-a.geo-1");
+      assertEquals(defaultTemplate.getLocation().getId(), "region-a.geo-1");
+      assertEquals(defaultTemplate.getImage().getLocation().getId(), 
"region-a.geo-1");
+      assertEquals(defaultTemplate.getHardware().getLocation().getId(), 
"region-a.geo-1");
       
assertEquals(defaultTemplate.getOptions().as(NovaTemplateOptions.class).shouldAutoAssignFloatingIp(),
 true);
       assertEquals(getCores(defaultTemplate.getHardware()), 1.0d);
    }
 
    @Override
    protected Set<String> getIso3166Codes() {
-      return ImmutableSet.<String> of("US-NV");
+      return ImmutableSet.<String> of("US-NV", "US-VA");
    }
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/c857ccc4/providers/hpcloud-compute/src/test/resources/access_hpcloud.json
----------------------------------------------------------------------
diff --git a/providers/hpcloud-compute/src/test/resources/access_hpcloud.json 
b/providers/hpcloud-compute/src/test/resources/access_hpcloud.json
index d444d93..ad156f3 100644
--- a/providers/hpcloud-compute/src/test/resources/access_hpcloud.json
+++ b/providers/hpcloud-compute/src/test/resources/access_hpcloud.json
@@ -1,225 +1,340 @@
 {"access": {
-  "token": {
-    "expires": "2012-09-30T12:56:12.481Z",
-    "id": 
"HPAuth_e2b86593f73366704ed4f9e4441a2467f1a67568d5363e561a72f36a96da3b4a",
-    "tenant": {
-      "id": "37936628937291",
-      "name": "[email protected]"
-    }
-  },
-  "user": {
-    "id": "54297837463082",
-    "name": "[email protected]",
-    "roles": [
-      {
-        "id": "00000000004016",
-        "serviceId": "120",
-        "name": "netadmin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004025",
-        "serviceId": "120",
-        "name": "sysadmin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004014",
-        "serviceId": "150",
-        "name": "cdn-admin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004013",
-        "serviceId": "130",
-        "name": "block-admin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004022",
-        "serviceId": "110",
-        "name": "Admin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004016",
-        "serviceId": "120",
-        "name": "netadmin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004024",
-        "serviceId": "140",
-        "name": "user",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004013",
-        "serviceId": "130",
-        "name": "block-admin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004003",
-        "serviceId": "100",
-        "name": "domainadmin"
-      },
-      {
-        "id": "00000000004025",
-        "serviceId": "120",
-        "name": "sysadmin",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004024",
-        "serviceId": "140",
-        "name": "user",
-        "tenantId": "37936628937291"
-      },
-      {
-        "id": "00000000004004",
-        "serviceId": "100",
-        "name": "domainuser"
-      }
-    ]
-  },
-  "serviceCatalog": [
-    {
-      "name": "CDN",
-      "type": "hpext:cdn",
-      "endpoints": [{
-        "tenantId": "37936628937291",
-        "publicURL": 
"https:\/\/region-a.geo-1.cdnmgmt.hpcloudsvc.com\/v1.0\/AUTH_651c939f-04f0-4fbf-bd50-27f114ccaa15",
-        "region": "region-a.geo-1",
-        "versionId": "1.0",
-        "versionInfo": 
"https:\/\/region-a.geo-1.cdnmgmt.hpcloudsvc.com\/v1.0\/",
-        "versionList": "https:\/\/region-a.geo-1.cdnmgmt.hpcloudsvc.com\/"
-      }]
+    "token": {
+        "expires": "2014-05-07T08:38:39.421Z",
+        "id": "HPAuth10_xxxx",
+        "tenant": {
+            "id": "123456789",
+            "name": "test-project1"
+        }
     },
-    {
-      "name": "Object Storage",
-      "type": "object-store",
-      "endpoints": [{
-        "tenantId": "37936628937291",
-        "publicURL": 
"https:\/\/region-a.geo-1.objects.hpcloudsvc.com\/v1.0\/AUTH_651c939f-04f0-4fbf-bd50-27f114ccaa15",
-        "region": "region-a.geo-1",
-        "versionId": "1.0",
-        "versionInfo": 
"https:\/\/region-a.geo-1.objects.hpcloudsvc.com\/v1.0\/",
-        "versionList": "https:\/\/region-a.geo-1.objects.hpcloudsvc.com"
-      }]
+    "user": {
+        "id": "10951776012508",
+        "name": "ccustine",
+        "otherAttributes": {
+            "domainStatus": "enabled",
+            "domainStatusCode": "00"
+        },
+        "roles": [
+            {
+                "id": "00000000004004",
+                "serviceId": "100",
+                "name": "domainuser"
+            },
+            {
+                "id": "00000000004016",
+                "serviceId": "120",
+                "name": "netadmin",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004014",
+                "serviceId": "150",
+                "name": "cdn-admin",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004022",
+                "serviceId": "110",
+                "name": "Admin",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004032",
+                "serviceId": "160",
+                "name": "mysql-user",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004024",
+                "serviceId": "140",
+                "name": "user",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004013",
+                "serviceId": "130",
+                "name": "block-admin",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004025",
+                "serviceId": "120",
+                "name": "sysadmin",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "91643347410087",
+                "serviceId": "240",
+                "name": "dns-admin",
+                "tenantId": "123456789"
+            },
+            {
+                "id": "00000000004003",
+                "serviceId": "100",
+                "name": "domainadmin"
+            },
+            {
+                "id": "10419409370304",
+                "serviceId": "170",
+                "name": "net-admin",
+                "tenantId": "123456789"
+            }
+        ]
     },
-    {
-      "name": "Identity",
-      "type": "identity",
-      "endpoints": [
+    "serviceCatalog": [
         {
-          "publicURL": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
-          "region": "region-b.geo-1",
-          "versionId": "2.0",
-          "versionInfo": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
-          "versionList": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357"
+            "name": "Usage Reporting",
+            "type": "metering",
+            "endpoints": [
+                {
+                    "publicURL": "",
+                    "region": "region-a.geo-1",
+                    "versionId": "2",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.usage-reporting-internal.hpcloudsvc.com:8777",
+                    "versionList": 
"https:\/\/region-a.geo-1.usage-reporting-internal.hpcloudsvc.com:8777"
+                },
+                {
+                    "publicURL": "",
+                    "region": "region-b.geo-1",
+                    "versionId": "2",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.usage-reporting-internal.hpcloudsvc.com:8777",
+                    "versionList": 
"https:\/\/region-b.geo-1.usage-reporting-internal.hpcloudsvc.com:8777"
+                }
+            ]
         },
         {
-          "publicURL": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
-          "region": "region-a.geo-1",
-          "versionId": "2.0",
-          "versionInfo": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
-          "versionList": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357"
-        }
-      ]
-    },
-    {
-      "name": "Image Management",
-      "type": "image",
-      "endpoints": [
-        {
-          "tenantId": "37936628937291",
-          "publicURL": "https:\/\/glance2.uswest.hpcloud.net:9292\/v1.0",
-          "region": "az-2.region-a.geo-1",
-          "versionId": "1.0",
-          "versionInfo": "https:\/\/glance2.uswest.hpcloud.net:9292\/v1.0\/",
-          "versionList": "https:\/\/glance2.uswest.hpcloud.net:9292"
+            "name": "Networking",
+            "type": "network",
+            "endpoints": [
+                {
+                    "tenantId": "123456789",
+                    "publicURL": "",
+                    "publicURL2": "",
+                    "region": "az-1.region-a.geo-1",
+                    "versionId": "",
+                    "versionInfo": "",
+                    "versionList": ""
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-a.geo-1.network.hpcloudsvc.com",
+                    "publicURL2": "",
+                    "region": "region-a.geo-1",
+                    "versionId": "2.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.network.hpcloudsvc.com",
+                    "versionList": 
"https:\/\/region-a.geo-1.network.hpcloudsvc.com"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-b.geo-1.network.hpcloudsvc.com",
+                    "publicURL2": "",
+                    "region": "region-b.geo-1",
+                    "versionId": "2.0",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.network.hpcloudsvc.com",
+                    "versionList": 
"https:\/\/region-b.geo-1.network.hpcloudsvc.com"
+                }
+            ]
         },
         {
-          "tenantId": "37936628937291",
-          "publicURL": "https:\/\/glance3.uswest.hpcloud.net:9292\/v1.0",
-          "region": "az-3.region-a.geo-1",
-          "versionId": "1.0",
-          "versionInfo": "https:\/\/glance3.uswest.hpcloud.net:9292\/v1.0\/",
-          "versionList": "https:\/\/glance3.uswest.hpcloud.net:9292"
+            "name": "Relational DB MySQL",
+            "type": "database",
+            "endpoints": [{
+                "tenantId": "123456789",
+                "publicURL": 
"https:\/\/region-a.geo-1.database.hpcloudsvc.com\/v1.0\/123456789",
+                "publicURL2": "",
+                "region": "region-a.geo-1",
+                "versionId": "v13.6",
+                "versionInfo": 
"https:\/\/region-a.geo-1.database.hpcloudsvc.com\/v1.0",
+                "versionList": 
"https:\/\/region-a.geo-1.database.hpcloudsvc.com"
+            }]
         },
         {
-          "tenantId": "37936628937291",
-          "publicURL": "https:\/\/glance1.uswest.hpcloud.net:9292\/v1.0",
-          "region": "az-1.region-a.geo-1",
-          "versionId": "1.0",
-          "versionInfo": "https:\/\/glance1.uswest.hpcloud.net:9292\/v1.0\/",
-          "versionList": "https:\/\/glance1.uswest.hpcloud.net:9292"
-        }
-      ]
-    },
-    {
-      "name": "Block Storage",
-      "type": "volume",
-      "endpoints": [
+            "name": "CDN",
+            "type": "hpext:cdn",
+            "endpoints": [
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-a.geo-1.cdnmgmt.hpcloudsvc.com\/v1.0\/123456789",
+                    "region": "region-a.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.cdnmgmt.hpcloudsvc.com\/v1.0\/",
+                    "versionList": 
"https:\/\/region-a.geo-1.cdnmgmt.hpcloudsvc.com\/"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-b.geo-1.cdnmgmt.hpcloudsvc.com\/v1.0\/123456789",
+                    "region": "region-b.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.cdnmgmt.hpcloudsvc.com\/v1.0\/",
+                    "versionList": 
"https:\/\/region-b.geo-1.cdnmgmt.hpcloudsvc.com\/"
+                }
+            ]
+        },
         {
-          "tenantId": "37936628937291",
-          "publicURL": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/37936628937291",
-          "region": "az-1.region-a.geo-1",
-          "versionId": "1.1",
-          "versionInfo": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
-          "versionList": "https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com"
+            "name": "Object Storage",
+            "type": "object-store",
+            "endpoints": [
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-a.geo-1.objects.hpcloudsvc.com\/v1\/123456789",
+                    "region": "region-a.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.objects.hpcloudsvc.com\/v1.0\/",
+                    "versionList": 
"https:\/\/region-a.geo-1.objects.hpcloudsvc.com"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-b.geo-1.objects.hpcloudsvc.com:443\/v1\/123456789",
+                    "region": "region-b.geo-1",
+                    "versionId": "1",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.objects.hpcloudsvc.com:443\/v1\/",
+                    "versionList": 
"https:\/\/region-b.geo-1.objects.hpcloudsvc.com:443"
+                }
+            ]
         },
         {
-          "tenantId": "37936628937291",
-          "publicURL": 
"https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/37936628937291",
-          "region": "az-3.region-a.geo-1",
-          "versionId": "1.1",
-          "versionInfo": 
"https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
-          "versionList": "https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com"
+            "name": "Identity",
+            "type": "identity",
+            "endpoints": [
+                {
+                    "publicURL": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
+                    "region": "region-a.geo-1",
+                    "versionId": "2.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
+                    "versionList": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357"
+                },
+                {
+                    "publicURL": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357\/v3\/",
+                    "region": "region-a.geo-1",
+                    "versionId": "3.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357\/v3\/",
+                    "versionList": 
"https:\/\/region-a.geo-1.identity.hpcloudsvc.com:35357"
+                },
+                {
+                    "publicURL": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
+                    "region": "region-b.geo-1",
+                    "versionId": "2.0",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357\/v2.0\/",
+                    "versionList": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357"
+                },
+                {
+                    "publicURL": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357\/v3\/",
+                    "region": "region-b.geo-1",
+                    "versionId": "3.0",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357\/v3\/",
+                    "versionList": 
"https:\/\/region-b.geo-1.identity.hpcloudsvc.com:35357"
+                }
+            ]
         },
         {
-          "tenantId": "37936628937291",
-          "publicURL": 
"https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/37936628937291",
-          "region": "az-2.region-a.geo-1",
-          "versionId": "1.1",
-          "versionInfo": 
"https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
-          "versionList": "https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com"
-        }
-      ]
-    },
-    {
-      "name": "Compute",
-      "type": "compute",
-      "endpoints": [
+            "name": "Image Management",
+            "type": "image",
+            "endpoints": [
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/glance1.uswest.hpcloud.net:9292\/v1.0",
+                    "publicURL2": "",
+                    "region": "az-1.region-a.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/glance1.uswest.hpcloud.net:9292\/v1.0\/",
+                    "versionList": "https:\/\/glance1.uswest.hpcloud.net:9292"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-a.geo-1.images.hpcloudsvc.com:443\/v1.0",
+                    "publicURL2": "",
+                    "region": "region-a.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.images.hpcloudsvc.com:443\/v1.0",
+                    "versionList": 
"https:\/\/region-a.geo-1.images.hpcloudsvc.com:443"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-b.geo-1.images.hpcloudsvc.com:443\/v1.0",
+                    "publicURL2": "",
+                    "region": "region-b.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.images.hpcloudsvc.com:443\/v1.0",
+                    "versionList": 
"https:\/\/region-b.geo-1.images.hpcloudsvc.com:443"
+                }
+            ]
+        },
         {
-          "tenantId": "37936628937291",
-          "publicURL": 
"https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/37936628937291",
-          "publicURL2": 
"https:\/\/az-3.region-a.geo-1.ec2-compute.hpcloudsvc.com\/services\/Cloud",
-          "region": "az-3.region-a.geo-1",
-          "versionId": "1.1",
-          "versionInfo": 
"https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
-          "versionList": "https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com"
+            "name": "DNS",
+            "type": "hpext:dns",
+            "endpoints": [{
+                "tenantId": "123456789",
+                "publicURL": 
"https:\/\/region-a.geo-1.dns.hpcloudsvc.com\/v1\/",
+                "publicURL2": "",
+                "region": "region-a.geo-1",
+                "versionId": "1",
+                "versionInfo": 
"https:\/\/region-a.geo-1.dns.hpcloudsvc.com\/v1\/",
+                "versionList": "https:\/\/region-a.geo-1.dns.hpcloudsvc.com\/"
+            }]
         },
         {
-          "tenantId": "37936628937291",
-          "publicURL": 
"https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/37936628937291",
-          "publicURL2": 
"https:\/\/az-2.region-a.geo-1.ec2-compute.hpcloudsvc.com\/services\/Cloud",
-          "region": "az-2.region-a.geo-1",
-          "versionId": "1.1",
-          "versionInfo": 
"https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
-          "versionList": "https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com"
+            "name": "Block Storage",
+            "type": "volume",
+            "endpoints": [
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/123456789",
+                    "publicURL2": "",
+                    "region": "az-1.region-a.geo-1",
+                    "versionId": "1.1",
+                    "versionInfo": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
+                    "versionList": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-a.geo-1.block.hpcloudsvc.com\/v1\/123456789",
+                    "publicURL2": "",
+                    "region": "region-a.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.block.hpcloudsvc.com\/v1",
+                    "versionList": 
"https:\/\/region-a.geo-1.block.hpcloudsvc.com"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-b.geo-1.block.hpcloudsvc.com\/v1\/123456789",
+                    "publicURL2": "",
+                    "region": "region-b.geo-1",
+                    "versionId": "1.0",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.block.hpcloudsvc.com\/v1",
+                    "versionList": 
"https:\/\/region-b.geo-1.block.hpcloudsvc.com"
+                }
+            ]
         },
         {
-          "tenantId": "37936628937291",
-          "publicURL": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/37936628937291",
-          "publicURL2": 
"https:\/\/az-1.region-a.geo-1.ec2-compute.hpcloudsvc.com\/services\/Cloud",
-          "region": "az-1.region-a.geo-1",
-          "versionId": "1.1",
-          "versionInfo": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
-          "versionList": "https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com"
+            "name": "Compute",
+            "type": "compute",
+            "endpoints": [
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/123456789",
+                    "publicURL2": 
"https:\/\/az-1.region-a.geo-1.ec2-compute.hpcloudsvc.com\/services\/Cloud",
+                    "region": "az-1.region-a.geo-1",
+                    "versionId": "1.1",
+                    "versionInfo": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/",
+                    "versionList": 
"https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-a.geo-1.compute.hpcloudsvc.com\/v2\/123456789",
+                    "region": "region-a.geo-1",
+                    "versionId": "2",
+                    "versionInfo": 
"https:\/\/region-a.geo-1.compute.hpcloudsvc.com\/v2\/",
+                    "versionList": 
"https:\/\/region-a.geo-1.compute.hpcloudsvc.com"
+                },
+                {
+                    "tenantId": "123456789",
+                    "publicURL": 
"https:\/\/region-b.geo-1.compute.hpcloudsvc.com\/v2\/123456789",
+                    "region": "region-b.geo-1",
+                    "versionId": "2",
+                    "versionInfo": 
"https:\/\/region-b.geo-1.compute.hpcloudsvc.com\/v2\/",
+                    "versionList": 
"https:\/\/region-b.geo-1.compute.hpcloudsvc.com"
+                }
+            ]
         }
-      ]
-    }
-  ]
-}}
+    ]
+}}
\ No newline at end of file

Reply via email to