Documentation

rax_keypair - Create a keypair for use with Rackspace Cloud Servers

New in version 1.5.

Synopsis

Create a keypair for use with Rackspace Cloud Servers

Requirements (on host that executes module)

  • python >= 2.6
  • pyrax

Options

parameter required default choices comments
api_key
no
    Rackspace API key (overrides credentials)

    aliases: password
    auth_endpoint
    (added in 1.5)
    no https://identity.api.rackspacecloud.com/v2.0/
      The URI of the authentication service
      credentials
      no
        File to find the Rackspace credentials in (ignored if api_key and username are provided)

        aliases: creds_file
        env
        (added in 1.5)
        no
          identity_type
          (added in 1.5)
          no rackspace
            Authentication machanism to use, such as rackspace or keystone
            name
            yes
              Name of keypair
              public_key
              no
                Public Key string to upload. Can be a file path or string
                region
                no DFW
                  Region to create an instance in
                  state
                  no present
                  • present
                  • absent
                  Indicate desired state of the resource
                  tenant_id
                  (added in 1.5)
                  no
                    The tenant ID used for authentication
                    tenant_name
                    (added in 1.5)
                    no
                      The tenant name used for authentication
                      username
                      no
                        Rackspace username (overrides credentials)
                        verify_ssl
                        (added in 1.5)
                        no
                          Whether or not to require SSL validation of API endpoints

                          Examples

                          - name: Create a keypair
                            hosts: localhost
                            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 }}"
                          
                          - name: Create a keypair
                            hosts: localhost
                            gather_facts: False
                            tasks:
                              - name: keypair request
                                local_action:
                                  module: rax_keypair
                                  credentials: ~/.raxpub
                                  name: my_keypair
                                  public_key: "{{ lookup('file', 'authorized_keys/id_rsa.pub') }}"
                                  region: DFW
                                register: keypair
                          

                          Notes

                          Note

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

                          Note

                          The ability to specify a file path for the public key was added in 1.7

                          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, ...)

                          This is a Core Module

                          For more information on what this means please read Core Modules

                          For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Helping Testing PRs and Developing Modules.