community.digitalocean.digital_ocean_block_storage (1.3.0) — module

Create/destroy or attach/detach Block Storage volumes in DigitalOcean

Authors: Harnek Sidhu (@harneksidhu)

Install collection

Install with ansible-galaxy collection install community.digitalocean:==1.3.0


Add to requirements.yml

  collections:
    - name: community.digitalocean
      version: 1.3.0

Description

Create/destroy Block Storage volume in DigitalOcean, or attach/detach Block Storage volume to a droplet.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- 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
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Resize an existing Block Storage
  community.digitalocean.digital_ocean_block_storage:
    state: present
    command: create
    api_token: <TOKEN>
    region: nyc1
    block_size: 20
    volume_name: nyc1-block-storage
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete Block Storage
  community.digitalocean.digital_ocean_block_storage:
    state: absent
    command: create
    api_token: <TOKEN>
    region: nyc1
    volume_name: nyc1-block-storage
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- 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>
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- 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>

Inputs

    
state:
    choices:
    - present
    - absent
    description:
    - Indicate desired state of the target.
    required: true
    type: str

region:
    description:
    - The slug of the region where your Block Storage volume should be located in.
    - If I(snapshot_id) is included, this will be ignored.
    type: str

command:
    choices:
    - create
    - attach
    description:
    - Which operation do you want to perform.
    required: true
    type: str

timeout:
    default: 30
    description:
    - The timeout in seconds used for polling DigitalOcean's API.
    type: int

block_size:
    description:
    - The size of the Block Storage volume in gigabytes.
    - Required when I(command=create) and I(state=present).
    - If snapshot_id is included, this will be ignored.
    - If block_size > current size of the volume, the volume is resized.
    type: int

droplet_id:
    description:
    - The droplet id you want to operate on.
    - Required when I(command=attach).
    type: int

description:
    description:
    - Description of the Block Storage volume.
    type: str

oauth_token:
    aliases:
    - api_token
    description:
    - 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'
    type: str

snapshot_id:
    description:
    - The snapshot id you would like the Block Storage volume created with.
    - If included, I(region) and I(block_size) will be ignored and changed to C(null).
    type: str

volume_name:
    description:
    - The name of the Block Storage volume.
    required: true
    type: str

validate_certs:
    default: true
    description:
    - If set to C(no), the SSL certificates will not be validated.
    - This should only set to C(no) used on personally controlled sites using self-signed
      certificates.
    type: bool

Outputs

id:
  description: Unique identifier of a Block Storage volume returned during creation.
  returned: changed
  sample: 69b25d9a-494c-12e6-a5af-001f53126b44
  type: str