rax_keypair - Create a keypair for use with Rackspace Cloud Servers

Author:Matt Martz

Synopsis

New in version 1.5.

Create a keypair for use with Rackspace Cloud Servers

Options

parameter required default choices comments
api_key no
    Rackspace API key (overrides credentials)
    auth_endpoint no https://identity.api.rackspacecloud.com/v2.0/
      The URI of the authentication service (added in Ansible 1.5)
      credentials no
        File to find the Rackspace credentials in (ignored if api_key and username are provided)
        env no
          Environment as configured in ~/.pyrax.cfg, see https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration (added in Ansible 1.5)
          identity_type no rackspace
            Authentication machanism to use, such as rackspace or keystone (added in Ansible 1.5)
            name yes
              Name of keypair
              public_key no
                Public Key string to upload
                region no DFW
                  Region to create an instance in
                  state no present
                  • present
                  • absent
                  Indicate desired state of the resource
                  tenant_id no
                    The tenant ID used for authentication (added in Ansible 1.5)
                    tenant_name no
                      The tenant name used for authentication (added in Ansible 1.5)
                      username no
                        Rackspace username (overrides credentials)
                        verify_ssl no
                          Whether or not to require SSL validation of API endpoints (added in Ansible 1.5)

                          Note

                          Requires pyrax

                          Examples


                          - name: Create a keypair
                            hosts: local
                            gather_facts: False
                            tasks:
                              - name: keypair request
                                local_action:
                                  module: rax_keypair
                                  credentials: ~/.raxpub
                                  name: my_keypair
                                  region: DFW
                                register: keypair
                              - name: Create local public key
                                local_action:
                                  module: copy
                                  content: "{{ keypair.keypair.public_key }}"
                                  dest: "{{ inventory_dir }}/{{ keypair.keypair.name }}.pub"
                              - name: Create local private key
                                local_action:
                                  module: copy
                                  content: "{{ keypair.keypair.private_key }}"
                                  dest: "{{ inventory_dir }}/{{ keypair.keypair.name }}"
                          

                          Note

                          The following environment variables can be used, RAX_USERNAME, RAX_API_KEY, RAX_CREDS_FILE, RAX_CREDENTIALS, RAX_REGION.

                          Note

                          RAX_CREDENTIALS and RAX_CREDS_FILE points to a credentials file appropriate for pyrax. See https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating

                          Note

                          RAX_USERNAME and RAX_API_KEY obviate the use of a credentials file

                          Note

                          RAX_REGION defines a Rackspace Public Cloud region (DFW, ORD, LON, ...)

                          Note

                          Keypairs cannot be manipulated, only created and deleted. To “update” a keypair you must first delete and then recreate.