community.general.cloudscale (0.1.4) — inventory

cloudscale.ch inventory source

Authors: Gaudenz Steinlin (@gaudenz)

Install collection

Install with ansible-galaxy collection install community.general:==0.1.4


Add to requirements.yml

  collections:
    - name: community.general
      version: 0.1.4

Description

Get inventory hosts from cloudscale.ch API

Uses an YAML configuration file ending with either I(cloudscale.yml) or I(cloudscale.yaml) to set parameter values (also see examples).

Inputs

    
groups:
    default: {}
    description: Add hosts to group based on Jinja2 conditionals.
    type: dict

plugin:
    choices:
    - cloudscale
    description: 'Token that ensures this is a source file for the ''cloudscale''

      plugin.

      '
    required: true

strict:
    default: false
    description:
    - If V(yes) make invalid entries a fatal error, otherwise skip and continue.
    - Since it is possible to use facts in the expressions they might not always be available
      and we ignore those errors by default.
    type: bool

compose:
    default: {}
    description: Create vars from jinja2 expressions.
    type: dict

api_token:
    description: cloudscale.ch API token
    env:
    - name: CLOUDSCALE_API_TOKEN
    type: str

api_timeout:
    default: 30
    description: Timeout in seconds for calls to the cloudscale.ch API.
    type: int

ansible_host:
    choices:
    - public_v4
    - public_v6
    - private
    - none
    default: public_v4
    description: 'Which IP address to register as the ansible_host. If the

      requested value does not exist or this is set to ''none'', no

      ansible_host will be set.

      '
    type: str

keyed_groups:
    default: []
    description: Add hosts to group based on the values of a variable.
    elements: dict
    suboptions:
      default_value:
        description:
        - The default value when the host variable's value is an empty string.
        - This option is mutually exclusive with O(keyed_groups[].trailing_separator).
        type: str
        version_added: '2.12'
        version_added_collection: ansible.builtin
      key:
        description:
        - The key from input dictionary used to generate groups
        type: str
      parent_group:
        description: parent group for keyed group
        type: str
      prefix:
        default: ''
        description: A keyed group name will start with this prefix
        type: str
      separator:
        default: _
        description: separator used to build the keyed group name
        type: str
      trailing_separator:
        default: true
        description:
        - Set this option to V(False) to omit the O(keyed_groups[].separator) after the
          host variable when the value is an empty string.
        - This option is mutually exclusive with O(keyed_groups[].default_value).
        type: bool
        version_added: '2.12'
        version_added_collection: ansible.builtin
    type: list

use_extra_vars:
    default: false
    description: Merge extra vars into the available variables for composition (highest
      precedence).
    env:
    - name: ANSIBLE_INVENTORY_USE_EXTRA_VARS
    ini:
    - key: use_extra_vars
      section: inventory_plugins
    type: bool
    version_added: '2.11'
    version_added_collection: ansible.builtin

leading_separator:
    default: true
    description:
    - Use in conjunction with keyed_groups.
    - By default, a keyed group that does not have a prefix or a separator provided will
      have a name that starts with an underscore.
    - This is because the default prefix is "" and the default separator is "_".
    - Set this option to False to omit the leading underscore (or other separator) if
      no prefix is given.
    - If the group name is derived from a mapping the separator is still used to concatenate
      the items.
    - To not use a separator in the group name at all, set the separator for the keyed
      group to an empty string instead.
    type: boolean
    version_added: '2.11'
    version_added_collection: ansible.builtin

inventory_hostname:
    choices:
    - name
    - uuid
    default: name
    description: 'What to register as the inventory hostname.

      If set to ''uuid'' the uuid of the server will be used and a

      group will be created for the server name.

      If set to ''name'' the name of the server will be used unless

      there are more than one server with the same name in which

      case the ''uuid'' logic will be used.

      '
    type: str