Bases: keystone.common.controller.V3Controller
Bases: keystone.common.controller.V3Controller
Create a region with a user-specified ID.
This method is unprotected because it depends on self.create_region to enforce policy.
Bases: keystone.common.controller.V3Controller
Main entry point into the Catalog service.
Bases: object
Interface description for the Catalog driver.
Creates a new endpoint for a service.
Raises: | keystone.exception.Conflict, keystone.exception.ServiceNotFound |
---|
Creates a new region.
Raises: | keystone.exception.Conflict |
---|---|
Raises: | keystone.exception.RegionNotFound (if parent region invalid) |
Creates a new service.
Raises: | keystone.exception.Conflict |
---|
Deletes an endpoint for a service.
Raises: | keystone.exception.EndpointNotFound |
---|
Deletes an existing region.
Raises: | keystone.exception.RegionNotFound |
---|
Deletes an existing service.
Raises: | keystone.exception.ServiceNotFound |
---|
Retrieve and format the current service catalog.
Example:
{ 'RegionOne':
{'compute': {
'adminURL': u'http://host:8774/v1.1/tenantid',
'internalURL': u'http://host:8774/v1.1/tenant_id',
'name': 'Compute Service',
'publicURL': u'http://host:8774/v1.1/tenantid'},
'ec2': {
'adminURL': 'http://host:8773/services/Admin',
'internalURL': 'http://host:8773/services/Cloud',
'name': 'EC2 Service',
'publicURL': 'http://host:8773/services/Cloud'}}
Returns: | A nested dict representing the service catalog or an empty dict. |
---|---|
Raises: | keystone.exception.NotFound |
Get endpoint by id.
Returns: | endpoint_ref dict |
---|---|
Raises: | keystone.exception.EndpointNotFound |
Get region by id.
Returns: | region_ref dict |
---|---|
Raises: | keystone.exception.RegionNotFound |
Get service by id.
Returns: | service_ref dict |
---|---|
Raises: | keystone.exception.ServiceNotFound |
Retrieve and format the current V3 service catalog.
The default implementation builds the V3 catalog from the V2 catalog.
Example:
[
{
"endpoints": [
{
"interface": "public",
"id": "--endpoint-id--",
"region": "RegionOne",
"url": "http://external:8776/v1/--project-id--"
},
{
"interface": "internal",
"id": "--endpoint-id--",
"region": "RegionOne",
"url": "http://internal:8776/v1/--project-id--"
}],
"id": "--service-id--",
"type": "volume"
}]
Returns: | A list representing the service catalog or an empty list |
---|---|
Raises: | keystone.exception.NotFound |
List all endpoints.
Parameters: | hints – contains the list of filters yet to be satisfied. Any filters satisfied here will be removed so that the caller will know if any filters remain. |
---|---|
Returns: | list of endpoint_refs or an empty list. |
List all regions.
Parameters: | hints – contains the list of filters yet to be satisfied. Any filters satisfied here will be removed so that the caller will know if any filters remain. |
---|---|
Returns: | list of region_refs or an empty list. |
List all services.
Parameters: | hints – contains the list of filters yet to be satisfied. Any filters satisfied here will be removed so that the caller will know if any filters remain. |
---|---|
Returns: | list of service_refs or an empty list. |
Get endpoint by id.
Returns: | endpoint_ref dict |
---|---|
Raises: | keystone.exception.EndpointNotFound keystone.exception.ServiceNotFound |
Bases: keystone.common.manager.Manager
Default pivot point for the Catalog backend.
See keystone.common.manager.Manager for more details on how this dynamically calls the backend.
Check substitution of url.
The invalid urls are as follows: urls with substitutions that is not in the whitelist
Check the substitutions in the URL to make sure they are valid and on the whitelist.
Parameters: | url (str) – the URL to validate |
---|---|
Return type: | None |
Raises keystone.exception.URLValidationError: | |
if the URL is invalid |
Formats a user-defined URL with the given substitutions.
Parameters: |
|
---|---|
Returns: | a formatted URL |