volume_action

Generated on 4 Jul 2025 from digitalocean.cloud version v1.2.1

Synopsis

Attach or detach volumes from Droplets. Block storage actions are commands that can be given to a DigitalOcean Block Storage Volume. Each volume may only be attached to a single Droplet. However, up to five volumes may be attached to a Droplet at a time. Pre-formatted volumes will be automatically mounted to Ubuntu, Debian, Fedora, Fedora Atomic, and CentOS Droplets created on or after April 26, 2018 when attached. On older Droplets, additional configuration is required. View the API documentation at https://docs.digitalocean.com/reference/api/api-reference/#tag/Block-Storage-Actions.

Requirements

  • pydo >= 0.1.3
  • azure-core >= 1.26.1

Parameters

Parameter Choices / Default Description
client_override_options
dict
Client override options (developer use). For example, can be used to override the DigitalOcean API endpoint for an internal test suite. If provided, these options will knock out existing options.
droplet_name
str / required
The name of the Droplet to attach or detach to the volume to.
module_override_options
dict
Module override options (developer use). Can be used to override module options to support experimental or future options. If provided, these options will knock out existing options.
region
str / required
Set to the slug representing the region where the volume and Droplet is located.
state
str
Choices:
  • present (default)
  • absent
State of the resource, present to create, absent to destroy.
timeout
int
Default: 300 Polling timeout in seconds.
token
str
DigitalOcean API token. There are several environment variables which can be used to provide this value. DIGITALOCEAN_ACCESS_TOKEN, DIGITALOCEAN_TOKEN, DO_API_TOKEN, DO_API_KEY, DO_OAUTH_TOKEN and OAUTH_TOKEN
volume_name
str / required
The name of the block storage volume to attach or detach.

Examples

- name: Attach volume to Droplet
  digitalocean.cloud.volume_action:
    token: "{{ token }}"
    state: present
    volume_name: test-vol-delete-1
    droplet_name: test-droplet-delete-1
    region: nyc3

- name: Detach volume from Droplet
  digitalocean.cloud.volume_action:
    token: "{{ token }}"
    state: absent
    volume_name: test-vol-delete-1
    droplet_name: test-droplet-delete-1
    region: nyc3

Return Values

KeyReturnedDescription
action
dict
always DigitalOcean volume action information.
Sample:
{
  "completed_at": "2020-11-12T17:51:14Z",
  "id": 72531856,
  "region": {
    "available": true,
    "features": [
      "private_networking",
      "backups",
      "ipv6",
      "metadata"
    ],
    "name": "New York 1",
    "sizes": [
      "s-1vcpu-1gb",
      "s-1vcpu-2gb",
      "s-1vcpu-3gb",
      "s-2vcpu-2gb",
      "s-3vcpu-1gb",
      "s-2vcpu-4gb",
      "s-4vcpu-8gb",
      "s-6vcpu-16gb",
      "s-8vcpu-32gb",
      "s-12vcpu-48gb",
      "s-16vcpu-64gb",
      "s-20vcpu-96gb",
      "s-24vcpu-128gb",
      "s-32vcpu-192gb"
    ],
    "slug": "nyc1"
  },
  "region_slug": "nyc1",
  "resource_type": "volume",
  "started_at": "2020-11-12T17:51:03Z",
  "status": "completed",
  "type": "attach_volume"
}
error
dict
failure DigitalOcean API error.
Sample:
{
  "Message": "Informational error message.",
  "Reason": "Unauthorized",
  "Status Code": 401
}
msg
str
always DigitalOcean volume action information.
Sample:
[
  "No volume named test-vol in nyc3",
  "Multiple volumes named test-vol in nyc3",
  "No Droplet named test-droplet in nyc3",
  "Multiple Droplets named test-droplet in nyc3",
  "Volume test-vol in nyc3 attached to test-droplet",
  "Attached volume test-vol in nyc3 to test-droplet",
  "Volume test-vol in nyc3 not attached to test-droplet",
  "Detached volume test-vol in nyc3 from test-droplet",
  "Volume test-vol in nyc3 would be attahed to test-droplet",
  "Volume test-vol in nyc3 would be detached from test-droplet"
]

We can't find any results for your search.

Try using different keywords or simplifying your search terms.