On this page
community.general.rax_cbs – Manipulate Rackspace Cloud Block Storage Volumes
Note
This plugin is part of the community.general collection (version 3.8.1).
You might already have this collection installed if you are using the ansible package. 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 community.general.
To use it in a playbook, specify: community.general.rax_cbs.
Synopsis
- Manipulate Rackspace Cloud Block Storage Volumes
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
- pyrax
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| api_key 
        string
        | 
        Rackspace API key, overrides credentials.
        aliases: password | |
| auth_endpoint 
        string
        | 
        The URI of the authentication service.
        
        If not specified will be set to https://identity.api.rackspacecloud.com/v2.0/
        | |
| credentials 
        path
        | 
        File to find the Rackspace credentials in. Ignored if api_key and username are provided.
        aliases: creds_file | |
| description 
        string
        | 
        Description to give the volume being created
        | |
| env 
        string
        | 
        Environment as configured in ~/.pyrax.cfg, see https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration.
        | |
| identity_type 
        string
        | Default: 
        "rackspace"
        | 
        Authentication mechanism to use, such as rackspace or keystone.
        | 
| image 
        string
        | 
        image to use for bootable volumes. Can be an  id,human_idorname. This option requirespyrax>=1.9.3 | |
| meta 
        dictionary
        | 
        A hash of metadata to associate with the volume
        | |
| name 
        string / required
        | 
        Name to give the volume being created
        | |
| region 
        string
        | 
        Region to create an instance in.
        | |
| size 
        integer
        | Default: 
        100
        | 
        Size of the volume to create in Gigabytes
        | 
| snapshot_id 
        string
        | 
        The id of the snapshot to create the volume from
        | |
| state 
        string
        | 
 | 
        Indicate desired state of the resource
        | 
| tenant_id 
        string
        | 
        The tenant ID used for authentication.
        | |
| tenant_name 
        string
        | 
        The tenant name used for authentication.
        | |
| username 
        string
        | 
        Rackspace username, overrides credentials.
        | |
| validate_certs 
        boolean
        | 
 | 
        Whether or not to require SSL validation of API endpoints.
        aliases: verify_ssl | 
| volume_type 
        string
        | 
 | 
        Type of the volume being created
        | 
| wait 
        boolean
        | 
 | 
        wait for the volume to be in state 'available' before returning
        | 
| wait_timeout 
        integer
        | Default: 
        300
        | 
        how long before wait gives up, in seconds
        | 
Notes
Note
- The following environment variables can be used, RAX_USERNAME,RAX_API_KEY,RAX_CREDS_FILE,RAX_CREDENTIALS,RAX_REGION.
- RAX_CREDENTIALSand- RAX_CREDS_FILEpoints to a credentials file appropriate for pyrax. See https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating
- RAX_USERNAMEand- RAX_API_KEYobviate the use of a credentials file
- RAX_REGIONdefines a Rackspace Public Cloud region (DFW, ORD, LON, …)
Examples
- name: Build a Block Storage Volume
  gather_facts: False
  hosts: local
  connection: local
  tasks:
    - name: Storage volume create request
      local_action:
        module: rax_cbs
        credentials: ~/.raxpub
        name: my-volume
        description: My Volume
        volume_type: SSD
        size: 150
        region: DFW
        wait: yes
        state: present
        meta:
          app: my-cool-app
      register: my_volume
Authors
- Christopher H. Laco (@claco)
- Matt Martz (@sivel)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/community/general/rax_cbs_module.html