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

feat: allow forcing the deletion of firewalls that are still in use (#447)

##### SUMMARY

  - Do not silence 'firewall still in use' deletions errors.
  - Allow forcing the deletion of a firewall that is still in use.

Fixes #380

##### ISSUE TYPE

- Feature Pull Request


##### COMPONENT NAME

firewall
This commit is contained in:
Jonas L 2024-02-02 09:48:56 +01:00 committed by GitHub
parent 2757fe745f
commit 559d31561a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 62 additions and 7 deletions

View file

@ -2,3 +2,4 @@
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
---
hcloud_firewall_name: "{{ hcloud_ns }}"
hcloud_server_name: "{{ hcloud_ns }}"

View file

@ -1,4 +1,9 @@
---
- name: Cleanup test_server
hetzner.hcloud.server:
name: "{{ hcloud_server_name }}"
state: absent
- name: Cleanup test_firewall
hetzner.hcloud.firewall:
name: "{{ hcloud_firewall_name }}"

View file

@ -0,0 +1,8 @@
---
- name: Create test_server
hetzner.hcloud.server:
name: "{{ hcloud_server_name }}"
server_type: cx11
image: ubuntu-22.04
state: stopped
register: test_server

View file

@ -69,6 +69,12 @@
that:
- result is not changed
- name: Assign firewall to test_server
hetzner.hcloud.firewall_resource:
firewall: "{{ hcloud_firewall_name }}"
servers: ["{{ test_server.hcloud_server.name }}"]
state: present
- name: Test update
hetzner.hcloud.firewall:
name: "{{ hcloud_firewall_name }}"
@ -150,7 +156,7 @@
ansible.builtin.assert:
that:
- result is changed
- result.hcloud_firewall.name == "changed-{{ hcloud_firewall_name }}"
- result.hcloud_firewall.name == "changed-" + hcloud_firewall_name
- name: Test update name and labels
hetzner.hcloud.firewall:
@ -171,8 +177,21 @@
hetzner.hcloud.firewall:
name: "{{ hcloud_firewall_name }}"
state: absent
ignore_errors: true
register: result
- name: Verify delete
ansible.builtin.assert:
that:
- result is failed
- '"is still in use" in result.msg'
- name: Test delete with force
hetzner.hcloud.firewall:
name: "{{ hcloud_firewall_name }}"
force: true
state: absent
register: result
- name: Verify delete with force
ansible.builtin.assert:
that:
- result is changed