mirror of
https://github.com/ansible-collections/hetzner.hcloud.git
synced 2026-02-04 08:01:49 +00:00
feat: allow renaming a server (#619)
##### SUMMARY Fixes #600 Allow renaming a server by passing its id and its new name. ##### ISSUE TYPE - Feature Pull Request ##### COMPONENT NAME server
This commit is contained in:
parent
257096023e
commit
e59e787d99
3 changed files with 35 additions and 1 deletions
2
changelogs/fragments/renaming-a-server.yml
Normal file
2
changelogs/fragments/renaming-a-server.yml
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
minor_changes:
|
||||
- server - Allow renaming a server.
|
||||
|
|
@ -564,10 +564,20 @@ class AnsibleHCloudServer(AnsibleHCloud):
|
|||
try:
|
||||
previous_server_status = self.hcloud_server.status
|
||||
|
||||
update_params = {}
|
||||
|
||||
name = self.module.params.get("name")
|
||||
if name is not None and self.hcloud_server.name != name:
|
||||
self.module.fail_on_missing_params(required_params=["id"])
|
||||
update_params["name"] = name
|
||||
|
||||
labels = self.module.params.get("labels")
|
||||
if labels is not None and labels != self.hcloud_server.labels:
|
||||
update_params["labels"] = labels
|
||||
|
||||
if update_params:
|
||||
if not self.module.check_mode:
|
||||
self.hcloud_server.update(labels=labels)
|
||||
self.hcloud_server.update(**update_params)
|
||||
self._mark_as_changed()
|
||||
|
||||
rescue_mode = self.module.params.get("rescue_mode")
|
||||
|
|
|
|||
|
|
@ -40,6 +40,28 @@
|
|||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: test rename server
|
||||
hetzner.hcloud.server:
|
||||
id: "{{ main_server.hcloud_server.id }}"
|
||||
name: "{{ hcloud_server_name }}-new"
|
||||
register: result
|
||||
- name: verify rename server
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.hcloud_server.name == hcloud_server_name + '-new'
|
||||
|
||||
- name: reset server name
|
||||
hetzner.hcloud.server:
|
||||
id: "{{ main_server.hcloud_server.id }}"
|
||||
name: "{{ hcloud_server_name }}"
|
||||
register: result
|
||||
- name: verify reset server name
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.hcloud_server.name == hcloud_server_name
|
||||
|
||||
- name: test stop server with check mode
|
||||
hetzner.hcloud.server:
|
||||
name: "{{ hcloud_server_name }}"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue