region_volumes
Creates, updates, deletes, gets or lists a region_volumes resource.
Overview​
| Name | region_volumes |
| Type | Resource |
| Id | ovh.cloud_storage.region_volumes |
Fields​
The following fields are returned by SELECT queries:
- get
- list
successful operation
| Name | Datatype | Description |
|---|---|---|
id | string (uuid) | Volume ID |
name | string | Volume name |
attached_to | array | Volume attached to list (wire: attachedTo) |
availability_zone | string | Availability zone of the volume (wire: availabilityZone) |
backups | array | Volume backups |
bootable | boolean | Whether the volume is bootable |
creation_date | string (date-time) | Volume creation date (wire: creationDate) |
description | string | Volume description |
encryption | object | Encryption settings (null when the volume is not encrypted with CMK) |
size | integer | Volume size |
snapshots | array | Volume snapshots |
status | string | Volume status (attaching, available, awaiting-transfer, backing-up, creating, deleted, deleting, detaching, downloading, error, error_backing-up, error_deleting, error_extending, error_restoring, extending, in-use, maintenance, reserved, restoring-backup, retyping, snapshotting, uploading) |
type | string | Volume type (classic, classic-luks, classic-multiattach, high-speed, high-speed-gen2, high-speed-gen2-luks, high-speed-luks) |
Region volume
| Name | Datatype | Description |
|---|---|---|
id | string (uuid) | Volume ID |
name | string | Volume name |
attached_to | array | Volume attached to list (wire: attachedTo) |
availability_zone | string | Availability zone of the volume (wire: availabilityZone) |
backups | array | Volume backups |
bootable | boolean | Whether the volume is bootable |
creation_date | string (date-time) | Volume creation date (wire: creationDate) |
description | string | Volume description |
encryption | object | Encryption settings (null when the volume is not encrypted with CMK) |
size | integer | Volume size |
snapshots | array | Volume snapshots |
status | string | Volume status (attaching, available, awaiting-transfer, backing-up, creating, deleted, deleting, detaching, downloading, error, error_backing-up, error_deleting, error_extending, error_restoring, extending, in-use, maintenance, reserved, restoring-backup, retyping, snapshotting, uploading) |
type | string | Volume type (classic, classic-luks, classic-multiattach, high-speed, high-speed-gen2, high-speed-gen2-luks, high-speed-luks) |
Methods​
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | region_name, volume_id, service_name | Get a volume | |
list | select | region_name, service_name | List your volumes | |
create | insert | region_name, service_name | Create a volume | |
update | update | region_name, volume_id, service_name | Update a volume | |
bulk_delete_snapshots | exec | regionName, volumeId, service_name | Delete your volume snapshots in bulk |
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.
| Name | Datatype | Description |
|---|---|---|
api_host | string | The 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"}}) |
regionName | string | Region name |
region_name | string | Region name (wire: regionName) |
service_name | string | The Public Cloud project ID. Resolved from OVH_CLOUD_PROJECT_SERVICE when set. |
volumeId | string (uuid) | Volume ID |
volume_id | string (uuid) | Volume ID (wire: volumeId) |
SELECT examples​
- get
- list
Get a volume
SELECT
id,
name,
attached_to,
availability_zone,
backups,
bootable,
creation_date,
description,
encryption,
size,
snapshots,
status,
type
FROM ovh.cloud_storage.region_volumes
WHERE region_name = '{{ region_name }}' -- required
AND volume_id = '{{ volume_id }}' -- required
AND service_name = '{{ service_name }}' -- required unless OVH_CLOUD_PROJECT_SERVICE is set
;
List your volumes
SELECT
id,
name,
attached_to,
availability_zone,
backups,
bootable,
creation_date,
description,
encryption,
size,
snapshots,
status,
type
FROM ovh.cloud_storage.region_volumes
WHERE region_name = '{{ region_name }}' -- required
AND service_name = '{{ service_name }}' -- required unless OVH_CLOUD_PROJECT_SERVICE is set
;
INSERT examples​
- create
- Manifest
Create a volume
INSERT INTO ovh.cloud_storage.region_volumes (
availability_zone,
backup_id,
description,
encryption,
image_id,
instance_id,
name,
size,
snapshot_id,
type,
region_name,
service_name
)
SELECT
'{{ availability_zone }}',
'{{ backup_id }}',
'{{ description }}',
'{{ encryption }}',
'{{ image_id }}',
'{{ instance_id }}',
'{{ name }}',
{{ size }},
'{{ snapshot_id }}',
'{{ type }}',
'{{ region_name }}',
'{{ service_name }}'
RETURNING
id,
resource_id,
action,
completed_at,
created_at,
progress,
regions,
started_at,
status,
sub_operations
;
# Description fields are for documentation purposes
- name: region_volumes
props:
- name: region_name
value: "{{ region_name }}"
description: Required parameter for the region_volumes resource.
- name: service_name
value: "{{ service_name }}"
description: Required parameter for the region_volumes resource.
- name: availability_zone
value: "{{ availability_zone }}"
description: |
Availability zone to create the volume on
- name: backup_id
value: "{{ backup_id }}"
description: |
Backup ID
- name: description
value: "{{ description }}"
description: |
Volume description
- name: encryption
description: |
Optional encryption settings. Set encryption.kms for CMK; omit for OMK.
value:
encrypted: {{ encrypted }}
kms:
domainId: "{{ domainId }}"
serviceKeyId: "{{ serviceKeyId }}"
- name: image_id
value: "{{ image_id }}"
description: |
Image ID
- name: instance_id
value: "{{ instance_id }}"
description: |
Instance ID
- name: name
value: "{{ name }}"
description: |
Volume name
- name: size
value: {{ size }}
description: |
Volume size
- name: snapshot_id
value: "{{ snapshot_id }}"
description: |
Snapshot ID
- name: type
value: "{{ type }}"
description: |
Type of the volume
valid_values: ['classic', 'classic-luks', 'classic-multiattach', 'high-speed', 'high-speed-gen2', 'high-speed-gen2-luks', 'high-speed-luks']
UPDATE examples​
- update
Update a volume
UPDATE ovh.cloud_storage.region_volumes
SET
description = '{{ description }}',
name = '{{ name }}',
size = {{ size }},
type = '{{ type }}'
WHERE
region_name = '{{ region_name }}' --required
AND volume_id = '{{ volume_id }}' --required
AND service_name = '{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set
RETURNING
id,
resource_id,
action,
completed_at,
created_at,
progress,
regions,
started_at,
status,
sub_operations;
Lifecycle Methods​
EXEC variables use wire (API) names.
- bulk_delete_snapshots
Delete your volume snapshots in bulk
EXEC ovh.cloud_storage.region_volumes.bulk_delete_snapshots
@regionName='{{ regionName }}' --required,
@volumeId='{{ volumeId }}' --required,
@service_name='{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set
@@json=
'{
"deleteAll": {{ deleteAll }},
"snapshotIds": "{{ snapshotIds }}"
}'
;