diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java index fbf5a95fd3..a9b6697832 100644 --- a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java +++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/v2_0/ServiceType.java @@ -49,4 +49,8 @@ public interface ServiceType { * Network Service (Quantum) */ public static final String NETWORK = "network"; + /** + * Block Storage (Cinder) + */ + public static final String BLOCK_STORAGE = "volume"; } diff --git a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java index 4244b7f510..b6d2f0af29 100644 --- a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseAccessTest.java @@ -108,7 +108,14 @@ public class ParseAccessTest extends BaseItemParserTest { .internalURL("https://csnode.jclouds.org:9696/v1.0/tenants/3456") .adminURL("https://csnode.jclouds.org:9696/v1.0") .region("region-a.geo-1") - .versionId("1.0").build()).build()).build(); + .versionId("1.0").build()).build()) + .service(Service.builder().name("cinder").type("volume") + .endpoint(Endpoint.builder() + .id("08330c2dcbfc4c6c8dc7a0949fbf5da7") + .publicURL("http://172.16.0.1:8776/v1/50cdb4c60374463198695d9f798fa34d") + .internalURL("http://10.0.2.15:8776/v1/50cdb4c60374463198695d9f798fa34d") + .adminURL("http://10.0.2.15:8776/v1/50cdb4c60374463198695d9f798fa34d") + .region("RegionOne").build()).build()).build(); } } diff --git a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseRackspaceAccessTest.java b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseRackspaceAccessTest.java index 27b3c8e7e6..c18fa27e70 100644 --- a/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseRackspaceAccessTest.java +++ b/apis/openstack-keystone/src/test/java/org/jclouds/openstack/keystone/v2_0/parse/ParseRackspaceAccessTest.java @@ -99,6 +99,15 @@ public class ParseRackspaceAccessTest extends BaseItemParserTest { .tenantId("40806637803162") .publicURL("https://dfw.loadbalancers.api.rackspacecloud.com/v1.0/40806637803162") .region("DFW").build()).build()) + .service(Service.builder().name("cloudBlockStorage").type("volume") + .endpoint(Endpoint.builder() + .tenantId("40806637803162") + .publicURL("https://dfw.blockstorage.api.rackspacecloud.com/v1/40806637803162") + .region("DFW").build()) + .endpoint(Endpoint.builder() + .tenantId("40806637803162") + .publicURL("https://ord.blockstorage.api.rackspacecloud.com/v1/40806637803162") + .region("ORD").build()).build()) .service(Service.builder().name("cloudMonitoring").type("rax:monitor") .endpoint(Endpoint.builder() .tenantId("40806637803162") diff --git a/apis/openstack-keystone/src/test/resources/keystoneAuthResponse.json b/apis/openstack-keystone/src/test/resources/keystoneAuthResponse.json index 33b0ccd2c1..a35f9f90a8 100644 --- a/apis/openstack-keystone/src/test/resources/keystoneAuthResponse.json +++ b/apis/openstack-keystone/src/test/resources/keystoneAuthResponse.json @@ -60,7 +60,7 @@ "publicURL": "https://csnode.jclouds.org/v2.0/", "region": "region-a.geo-1", "id": "2.0", - "versionId":"2.0", + "versionId": "2.0", "list": "https://csnode.jclouds.org/extension" } ] @@ -77,52 +77,68 @@ } ] }, - { - "name": "Compute", - "type": "compute", - "endpoints": [ - { - "tenantId": "3456", - "publicURL": "https:\/\/az-1.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/3456", - "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": "3456", - "publicURL": "https:\/\/az-2.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/3456", - "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" - }, - { - "tenantId": "3456", - "publicURL": "https:\/\/az-3.region-a.geo-1.compute.hpcloudsvc.com\/v1.1\/3456", - "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" - } - ] - }, - { - "type": "network", - "name": "Quantum Service", - "endpoints": [{ - "tenantId": "3456", - "adminURL": "https://csnode.jclouds.org:9696/v1.0", - "region": "region-a.geo-1", - "versionId": "1.0", - "publicURL": "https://csnode.jclouds.org:9696/v1.0/tenants/3456", - "internalURL": "https://csnode.jclouds.org:9696/v1.0/tenants/3456" - }], - "endpoints_links": [] - } - ] -} + { + "name": "Compute", + "type": "compute", + "endpoints": [ + { + "tenantId": "3456", + "publicURL": "https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/3456", + "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": "3456", + "publicURL": "https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/3456", + "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" + }, + { + "tenantId": "3456", + "publicURL": "https://az-3.region-a.geo-1.compute.hpcloudsvc.com/v1.1/3456", + "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" + } + ] + }, + { + "type": "network", + "name": "Quantum Service", + "endpoints": [ + { + "tenantId": "3456", + "adminURL": "https://csnode.jclouds.org:9696/v1.0", + "region": "region-a.geo-1", + "versionId": "1.0", + "publicURL": "https://csnode.jclouds.org:9696/v1.0/tenants/3456", + "internalURL": "https://csnode.jclouds.org:9696/v1.0/tenants/3456" + } + ], + "endpoints_links": [] + }, + { + "type": "volume", + "name": "cinder", + "endpoints": [ + { + "adminURL": "http://10.0.2.15:8776/v1/50cdb4c60374463198695d9f798fa34d", + "region": "RegionOne", + "internalURL": "http://10.0.2.15:8776/v1/50cdb4c60374463198695d9f798fa34d", + "id": "08330c2dcbfc4c6c8dc7a0949fbf5da7", + "publicURL": "http://172.16.0.1:8776/v1/50cdb4c60374463198695d9f798fa34d" + } + ], + "endpoints_links": [] + } + ] + } } \ No newline at end of file diff --git a/apis/openstack-keystone/src/test/resources/raxAuth.json b/apis/openstack-keystone/src/test/resources/raxAuth.json index fbf29eff1f..1044effa3f 100644 --- a/apis/openstack-keystone/src/test/resources/raxAuth.json +++ b/apis/openstack-keystone/src/test/resources/raxAuth.json @@ -62,6 +62,18 @@ }], "name": "cloudLoadBalancers", "type": "rax:load-balancer" + }, { + "endpoints": [{ + "publicURL": "https:\/\/dfw.blockstorage.api.rackspacecloud.com\/v1\/40806637803162", + "tenantId": "40806637803162", + "region": "DFW" + }, { + "publicURL": "https:\/\/ord.blockstorage.api.rackspacecloud.com\/v1\/40806637803162", + "tenantId": "40806637803162", + "region": "ORD" + }], + "type": "volume", + "name": "cloudBlockStorage" }, { "endpoints": [{ "tenantId": "40806637803162",