1
0
Fork 0
mirror of https://github.com/ansible-collections/hetzner.hcloud.git synced 2026-02-04 08:01:49 +00:00

add status as an option to filter the server list

This commit is contained in:
Tagir Bakirov 2022-04-12 11:03:53 +02:00
parent 28eb3404f3
commit 40d99c1988

View file

@ -66,19 +66,26 @@ DOCUMENTATION = r'''
default: ""
type: str
required: false
status:
description: Populate inventory with instances with this status.
default: []
type: list
required: false
'''
EXAMPLES = r"""
# Minimal example. `HCLOUD_TOKEN` is exposed in environment.
plugin: hcloud
# Example with locations, types, groups and token
# Example with locations, types, status and token
plugin: hcloud
token: foobar
locations:
- nbg1
types:
- cx11
status:
- running
# Group by a location with prefix e.g. "hcloud_location_nbg1"
# and image_os_flavor without prefix and separator e.g. "ubuntu"
@ -179,6 +186,13 @@ class InventoryModule(BaseInventoryPlugin, Constructable):
tmp.append(server)
self.servers = tmp
if self.get_option("status"):
tmp = []
for server in self.servers:
if server.status in self.get_option("status"):
tmp.append(server)
self.servers = tmp
def _set_server_attributes(self, server):
self.inventory.set_variable(server.name, "id", to_native(server.id))
self.inventory.set_variable(server.name, "name", to_native(server.name))