hetzner.hcloud.placement_group module – Create and manage placement groups on the Hetzner Cloud.

Note

This module is part of the hetzner.hcloud collection (version 2.5.0).

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 hetzner.hcloud. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: hetzner.hcloud.placement_group.

Synopsis

  • Create, update and manage placement groups on the Hetzner Cloud.

Aliases: hcloud_placement_group

Requirements

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

  • python-dateutil >= 2.7.5

  • requests >=2.20

Parameters

Parameter

Comments

api_endpoint

aliases: endpoint

string

The API Endpoint for the Hetzner Cloud.

You can also set this option by using the HCLOUD_ENDPOINT environment variable.

Default: "https://api.hetzner.cloud/v1"

api_token

string / required

The API Token for the Hetzner Cloud.

You can also set this option by using the HCLOUD_TOKEN environment variable.

id

integer

The ID of the Hetzner Cloud placement group to manage.

Only required if no placement group name is given

labels

dictionary

User-defined labels (key-value pairs)

name

string

The Name of the Hetzner Cloud placement group to manage.

Only required if no placement group id is given, or a placement group does not exist.

state

string

State of the placement group.

Choices:

  • "absent"

  • "present" ← (default)

type

string

The Type of the Hetzner Cloud placement group.

See Also

See also

Documentation for Hetzner Cloud API

Complete reference for the Hetzner Cloud API.

Examples

- name: Create a basic placement group
  hetzner.hcloud.placement_group:
    name: my-placement-group
    state: present
    type: spread

- name: Create a placement group with labels
  hetzner.hcloud.placement_group:
    name: my-placement-group
    type: spread
    labels:
      key: value
      mylabel: 123
    state: present

- name: Ensure the placement group is absent (remove if needed)
  hetzner.hcloud.placement_group:
    name: my-placement-group
    state: absent

Return Values

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

Key

Description

hcloud_placement_group

complex

The placement group instance

Returned: Always

id

integer

Numeric identifier of the placement group

Returned: always

Sample: 1937415

labels

dictionary

User-defined labels (key-value pairs)

Returned: always

name

string

Name of the placement group

Returned: always

Sample: "my placement group"

servers

list / elements=integer

Server IDs of the placement group

Returned: always

Sample: [4711, 4712]

type

string

Type of the placement group

Returned: always

Sample: "spread"

Authors

  • Adrian Huber (@Adi146)