Skip to main content

storages

Creates, updates, deletes, gets or lists a storages resource.

Overview​

Namestorages
TypeResource
Idovh.cloud_storage.storages

Fields​

The following fields are returned by SELECT queries:

successful operation

NameDatatypeDescription
namestringContainer name
archivebooleanWhether this is an archive container or not
container_typestringContainer type (private, public, static) (wire: containerType)
corsarrayOrigins allowed to make Cross Origin Requests
objectsarrayObjects stored in container
publicbooleanPublic container (DEPRECATED: see containerType)
regionstringContainer region
static_urlstringContainer static URL (wire: staticUrl)
stored_bytesintegerTotal bytes stored (wire: storedBytes)
stored_objectsintegerTotal objects stored (wire: storedObjects)

Methods​

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectcontainer_id, service_nameno_objects, prefixGet SWIFT storage container
listselectservice_nameinclude_typeGet SWIFT storage containers
createinsertservice_name, archive, container_name, regionCreate SWIFT container
updateupdatecontainer_id, service_nameUpdate SWIFT storage container
deletedeletecontainer_id, service_namerecursiveDelete SWIFT container
accessexecservice_nameAccess to SWIFT storage API
delete_corsexeccontainerId, origin, service_nameDelete CORS support on SWIFT container
corsexeccontainerId, service_name, originAdd CORS support on SWIFT container
public_urlexeccontainerId, service_name, expirationDate, objectNameGet a public temporary URL to access one of your SWIFT object
staticexeccontainerId, service_nameDeploy your SWIFT container files as a static web site
userexeccontainerId, service_name, rightCreate openstack user with only access to this SWIFT container

Parameters​

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
api_hoststringThe OVHcloud API host. Selected by OVH_ENDPOINT (ovh-eu, ovh-ca or ovh-us; default ovh-eu). (default: api.eu.ovhcloud.com, x-stackQL-envVarSelector: {"envVar":"OVH_ENDPOINT","default":"ovh-eu","values":{"ovh-eu":"api.eu.ovhcloud.com","ovh-ca":"api.ca.ovhcloud.com","ovh-us":"api.us.ovhcloud.com"}})
containerIdstringContainer ID
container_idstringContainer ID (wire: containerId)
originstringDelete this origin
service_namestringThe Public Cloud project ID. Resolved from OVH_CLOUD_PROJECT_SERVICE when set.
include_typebooleanInclude container type (wire: includeType)
no_objectsbooleanDo not return container objects (wire: noObjects)
prefixstringFilter objects by name prefix
recursivebooleanRecursively delete objects and container

SELECT examples​

Get SWIFT storage container

SELECT
name,
archive,
container_type,
cors,
objects,
public,
region,
static_url,
stored_bytes,
stored_objects
FROM ovh.cloud_storage.storages
WHERE container_id = '{{ container_id }}' -- required
AND service_name = '{{ service_name }}' -- required unless OVH_CLOUD_PROJECT_SERVICE is set
AND no_objects = '{{ no_objects }}'
AND prefix = '{{ prefix }}'
;

INSERT examples​

Create SWIFT container

INSERT INTO ovh.cloud_storage.storages (
archive,
container_name,
region,
service_name
)
SELECT
{{ archive }} /* required */,
'{{ container_name }}' /* required */,
'{{ region }}' /* required */,
'{{ service_name }}'
RETURNING
id,
name,
archive,
container_type,
region,
stored_bytes,
stored_objects
;

UPDATE examples​

Update SWIFT storage container

UPDATE ovh.cloud_storage.storages
SET
container_type = '{{ container_type }}'
WHERE
container_id = '{{ container_id }}' --required
AND service_name = '{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set;

DELETE examples​

Delete SWIFT container

DELETE FROM ovh.cloud_storage.storages
WHERE container_id = '{{ container_id }}' --required
AND service_name = '{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set
AND recursive = '{{ recursive }}'
;

Lifecycle Methods​

EXEC variables use wire (API) names.

Access to SWIFT storage API

EXEC ovh.cloud_storage.storages.access
@service_name='{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set
;