community.digitalocean.digital_ocean_block_storage – Create/destroy or attach/detach Block Storage volumes in DigitalOcean
Note
This plugin is part of the community.digitalocean collection (version 1.0.0).
To install it use: ansible-galaxy collection install community.digitalocean.
To use it in a playbook, specify: community.digitalocean.digital_ocean_block_storage.
Synopsis
- Create/destroy Block Storage volume in DigitalOcean, or attach/detach Block Storage volume to a droplet.
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| block_size  integer  | The size of the Block Storage volume in gigabytes. Required when command=create and state=present. If snapshot_id is included, this will be ignored. | |
| command  string / required  | 
 | Which operation do you want to perform. | 
| description  string  | Description of the Block Storage volume. | |
| droplet_id  integer  | The droplet id you want to operate on. Required when command=attach. | |
| oauth_token  string  | DigitalOcean OAuth token. There are several other environment variables which can be used to provide this value. i.e., - 'DO_API_TOKEN', 'DO_API_KEY', 'DO_OAUTH_TOKEN' and 'OAUTH_TOKEN' aliases: api_token | |
| region  string  | The slug of the region where your Block Storage volume should be located in. If snapshot_id is included, this will be ignored. | |
| snapshot_id  string  | The snapshot id you would like the Block Storage volume created with. If included, region and block_size will be ignored and changed to  null. | |
| state  string / required  | 
 | Indicate desired state of the target. | 
| timeout  integer  | Default: 30 | The timeout in seconds used for polling DigitalOcean's API. | 
| validate_certs  boolean  | 
 | If set to  no, the SSL certificates will not be validated.This should only set to  noused on personally controlled sites using self-signed certificates. | 
| volume_name  string / required  | The name of the Block Storage volume. | 
Notes
Note
- Two environment variables can be used, DO_API_KEY and DO_API_TOKEN. They both refer to the v2 token.
- If snapshot_id is used, region and block_size will be ignored and changed to null.
Examples
- name: Create new Block Storage
  community.digitalocean.digital_ocean_block_storage:
    state: present
    command: create
    api_token: <TOKEN>
    region: nyc1
    block_size: 10
    volume_name: nyc1-block-storage
- name: Delete Block Storage
  community.digitalocean.digital_ocean_block_storage:
    state: absent
    command: create
    api_token: <TOKEN>
    region: nyc1
    volume_name: nyc1-block-storage
- name: Attach Block Storage to a Droplet
  community.digitalocean.digital_ocean_block_storage:
    state: present
    command: attach
    api_token: <TOKEN>
    volume_name: nyc1-block-storage
    region: nyc1
    droplet_id: <ID>
- name: Detach Block Storage from a Droplet
  community.digitalocean.digital_ocean_block_storage:
    state: absent
    command: attach
    api_token: <TOKEN>
    volume_name: nyc1-block-storage
    region: nyc1
    droplet_id: <ID>
   Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| id  string  | changed | Unique identifier of a Block Storage volume returned during creation. Sample: 69b25d9a-494c-12e6-a5af-001f53126b44 | 
Authors
- Harnek Sidhu (@harneksidhu)
    © 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.10/collections/community/digitalocean/digital_ocean_block_storage_module.html