stephrobert.scaleway.instance_volume_info module – Gather information about Scaleway Instance volumes

Note

This module is part of the stephrobert.scaleway collection (version 0.7.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install stephrobert.scaleway. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: stephrobert.scaleway.instance_volume_info.

New in stephrobert.scaleway 0.1.0

Synopsis

  • Get details of a volume with the specified ID.

  • List volumes in the specified Availability Zone. You can filter the output by volume type.

Requirements

The below requirements are needed on the host that executes this module.

  • scaleway >= 2.9.0

Parameters

Parameter

Comments

access_key

string

Scaleway API access key.

api_allow_insecure

boolean

Allow the API endpoint to be reached without verifying its TLS certificate.

Falls back to the Scaleway configuration file, then to false.

Choices:

  • false

  • true

api_timeout

integer

Seconds allowed for a single API call, connection and read.

Without a limit a silent connection would hang the module forever: the Scaleway SDK issues its requests with no timeout at all.

This bounds a single call, not a whole wait. Modules that can wait for a state bound the overall wait separately.

Default: 60

api_url

string

URL of the Scaleway API endpoint.

Point it at a local emulator to exercise a playbook without credentials.

Falls back to the Scaleway configuration file, then to https://api.scaleway.com. It carries no module default on purpose: a default is never unset, so it would always override the profile.

config_file

path

Path to the Scaleway configuration file.

name

string

Filter volume by name (for eg. “vol” will return “myvolume” but not “data”).

organization

string

Filter volume by Organization ID.

organization_id

string

Default Organization ID used when an operation does not name one.

profile

string

Name of the profile to read in the Scaleway configuration file.

project

string

Filter volume by Project ID.

project_id

string

Default Project ID used when an operation does not name one.

secret_key

string

Scaleway API secret key.

tags

string

Filter volumes with these exact tags (to filter with several tags, use commas to separate them).

user_agent

string

Value of the User-Agent header sent to the API.

volume_id

string

UUID of the volume you want to get.

volume_type

string

Filter by volume type.

Choices:

  • "l_ssd"

  • "b_ssd"

  • "unified"

  • "scratch"

  • "sbs_volume"

  • "sbs_snapshot"

zone

string / required

The zone you want to target

Choices:

  • "fr-par-1"

  • "fr-par-2"

  • "fr-par-3"

  • "nl-ams-1"

  • "nl-ams-2"

  • "nl-ams-3"

  • "pl-waw-1"

  • "pl-waw-2"

  • "pl-waw-3"

  • "it-mil-1"

Attributes

Attribute

Support

Description

check_mode

Support: full

This module only reads, so check mode changes nothing about how it runs.

diff_mode

Support: none

This module changes nothing, so it has no difference to report.

Notes

Note

  • Every option can be set from its environment variable, respectively SCW_PROFILE, SCW_CONFIG_PATH, SCW_ACCESS_KEY, SCW_SECRET_KEY, SCW_API_URL, SCW_DEFAULT_ORGANIZATION_ID and SCW_DEFAULT_PROJECT_ID.

  • Module options take precedence over environment variables, which take precedence over the configuration file.

Examples

# This module only reads: it never changes anything, and check mode
# is native.
#
# `volume_id` decides which of the two reads runs: given, the
# module returns that one resource; omitted, it lists them all,
# walking every page rather than returning the first one in silence.

- name: Get a volume
  stephrobert.scaleway.instance_volume_info:
    zone: fr-par-1
    volume_id: 11111111-2222-3333-4444-555555555555
  register: result
- name: List volumes
  stephrobert.scaleway.instance_volume_info:
    zone: fr-par-1
  register: result
- name: Filter Scaleway Instance volumes by tags
  stephrobert.scaleway.instance_volume_info:
    zone: fr-par-1
    tags:
    - production
  register: result

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

volume

dictionary

Get details of a volume with the specified ID.

Returned: when volume_id is provided

creation_date

string

Volume creation date. (RFC 3339 format)

Returned: when the API returns it

export_uri

string

Show the volume NBD export URI (deprecated, will always be empty).

Deprecated by the Scaleway API contract.

Returned: when the API returns it

id

string

Volume unique ID.

Returned: when the API returns it

modification_date

string

Volume modification date. (RFC 3339 format)

Returned: when the API returns it

name

string

Volume name.

Returned: when the API returns it

organization

string

Volume Organization ID.

Returned: when the API returns it

project

string

Volume Project ID.

Returned: when the API returns it

server

dictionary

Instance attached to the volume.

Returned: when the API returns it

size

integer

Volume disk size. (in bytes)

Returned: when the API returns it

state

string

Volume state.

Returned: when the API returns it

tags

list / elements=string

Volume tags.

Returned: when the API returns it

volume_type

string

Volume type.

Returned: when the API returns it

zone

string

Zone in which the volume is located.

Returned: when the API returns it

volumes

list / elements=dictionary

List volumes in the specified Availability Zone. You can filter the output by volume type.

Returned: when volume_id is omitted

creation_date

string

Volume creation date. (RFC 3339 format)

Returned: when the API returns it

export_uri

string

Show the volume NBD export URI (deprecated, will always be empty).

Deprecated by the Scaleway API contract.

Returned: when the API returns it

id

string

Volume unique ID.

Returned: when the API returns it

modification_date

string

Volume modification date. (RFC 3339 format)

Returned: when the API returns it

name

string

Volume name.

Returned: when the API returns it

organization

string

Volume Organization ID.

Returned: when the API returns it

project

string

Volume Project ID.

Returned: when the API returns it

server

dictionary

Instance attached to the volume.

Returned: when the API returns it

size

integer

Volume disk size. (in bytes)

Returned: when the API returns it

state

string

Volume state.

Returned: when the API returns it

tags

list / elements=string

Volume tags.

Returned: when the API returns it

volume_type

string

Volume type.

Returned: when the API returns it

zone

string

Zone in which the volume is located.

Returned: when the API returns it

Authors

  • Stéphane Robert (@stephrobert)