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:
parent
28eb3404f3
commit
40d99c1988
1 changed files with 15 additions and 1 deletions
|
|
@ -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))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue