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

Fix sanity checks

This commit is contained in:
Adrian Huber 2021-08-16 11:34:33 +02:00
parent 5c20ccbcd6
commit 1edb5b2b36
4 changed files with 23 additions and 12 deletions

View file

@ -4,8 +4,9 @@
# Copyright: (c) 2020, Hetzner Cloud GmbH <info@hetzner-cloud.de>
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from ansible_collections.hetzner.hcloud.plugins.module_utils.hcloud import Hcloud
from __future__ import absolute_import, division, print_function
__metaclass__ = type
DOCUMENTATION = """
---
@ -110,9 +111,11 @@ hcloud_placement_group:
- 4712
"""
from ansible_collections.hetzner.hcloud.plugins.module_utils.hcloud import Hcloud
from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils._text import to_native
class AnsibleHcloudPlacementGroup(Hcloud):
def __init__(self, module):
Hcloud.__init__(self, module, "hcloud_placement_group")
@ -181,7 +184,7 @@ class AnsibleHcloudPlacementGroup(Hcloud):
self._create_placement_group()
else:
self._update_placement_group()
def delete_placement_group(self):
self._get_placement_group()
if self.hcloud_placement_group is not None:
@ -209,6 +212,7 @@ class AnsibleHcloudPlacementGroup(Hcloud):
supports_check_mode=True,
)
def main():
module = AnsibleHcloudPlacementGroup.define_module()

View file

@ -252,7 +252,7 @@ hcloud_server:
type: str
returned: always
sample: 4711
version_added: "1.4.5"
version_added: "1.5.0"
datacenter:
description: Name of the datacenter of the server
returned: always
@ -541,7 +541,10 @@ class AnsibleHcloudServer(Hcloud):
self._mark_as_changed()
else:
placement_group = self._get_placement_group()
if placement_group is not None and (self.hcloud_server.placement_group is None or self.hcloud_server.placement_group.id != placement_group.id):
if (
placement_group is not None and
(self.hcloud_server.placement_group is None or self.hcloud_server.placement_group.id != placement_group.id)
):
self.stop_server_if_forced()
if not self.module.check_mode:
self.hcloud_server.add_to_placement_group(placement_group)
@ -563,9 +566,12 @@ class AnsibleHcloudServer(Hcloud):
).wait_until_finished(timeout)
self._mark_as_changed()
if (not self.module.check_mode and
(self.module.params.get("state") == "present" and previous_server_status == Server.STATUS_RUNNING or
self.module.params.get("state") == "started")
if (
not self.module.check_mode and
(
self.module.params.get("state") == "present" and previous_server_status == Server.STATUS_RUNNING or
self.module.params.get("state") == "started"
)
):
self.start_server()
@ -619,8 +625,9 @@ class AnsibleHcloudServer(Hcloud):
def stop_server_if_forced(self):
previous_server_status = self.hcloud_server.status
if previous_server_status == Server.STATUS_RUNNING and not self.module.check_mode:
if (self.module.params.get("force_upgrade") or
self.module.params.get("force") or
if (
self.module.params.get("force_upgrade") or
self.module.params.get("force") or
self.module.params.get("state") == "stopped"
):
self.stop_server() # Only stopped server can be upgraded

View file

@ -97,7 +97,7 @@ hcloud_server_info:
type: str
returned: always
sample: 4711
version_added: "1.4.5"
version_added: "1.5.0"
datacenter:
description: Name of the datacenter of the server
returned: always

View file

@ -2,5 +2,5 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
---
hcloud_prefix: "tests"
hcloud_placement_group_name: "{{hcloud_prefix}}-integration"
hcloud_server_name: "{{hcloud_prefix}}-integration"
hcloud_placement_group_name: "{{hcloud_prefix}}-i"
hcloud_server_name: "{{hcloud_prefix}}-i"