mirror of
https://github.com/ansible-collections/hetzner.hcloud.git
synced 2026-02-04 08:01:49 +00:00
feat: attach server or load balancer to specific subnet (#726)
##### SUMMARY Attach the server or load balancer to the specific subnet ip_range. ##### ISSUE TYPE - Feature Pull Request ##### COMPONENT NAME - server_network - load_balancer_network
This commit is contained in:
parent
2b183fb486
commit
66aaef7be4
7 changed files with 274 additions and 32 deletions
|
|
@ -5,13 +5,21 @@
|
|||
ip_range: 10.0.0.0/16
|
||||
register: test_network
|
||||
|
||||
- name: Create test_subnetwork
|
||||
- name: Create test_subnetwork1
|
||||
hetzner.hcloud.subnetwork:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
network_zone: "{{ hcloud_network_zone_name }}"
|
||||
type: cloud
|
||||
ip_range: 10.0.1.0/24
|
||||
register: test_subnetwork
|
||||
register: test_subnetwork1
|
||||
|
||||
- name: Create test_subnetwork2
|
||||
hetzner.hcloud.subnetwork:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
network_zone: "{{ hcloud_network_zone_name }}"
|
||||
type: cloud
|
||||
ip_range: 10.0.2.0/24
|
||||
register: test_subnetwork2
|
||||
|
||||
- name: Create test_load_balancer
|
||||
hetzner.hcloud.load_balancer:
|
||||
|
|
|
|||
|
|
@ -85,6 +85,62 @@
|
|||
that:
|
||||
- result is changed
|
||||
|
||||
- name: Test create with ip_range
|
||||
hetzner.hcloud.load_balancer_network:
|
||||
load_balancer: "{{ hcloud_load_balancer_name }}"
|
||||
network: "{{ hcloud_network_name }}"
|
||||
ip_range: 10.0.1.0/24
|
||||
state: present
|
||||
register: result
|
||||
- name: Verify create with ip_range
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.hcloud_load_balancer_network.load_balancer == hcloud_load_balancer_name
|
||||
- result.hcloud_load_balancer_network.network == hcloud_load_balancer_name
|
||||
- >
|
||||
"10.0.1.0/24" | ansible.utils.network_in_usable(result.hcloud_load_balancer_network.ip)
|
||||
|
||||
- name: Test update with ip_range
|
||||
hetzner.hcloud.load_balancer_network:
|
||||
load_balancer: "{{ hcloud_load_balancer_name }}"
|
||||
network: "{{ hcloud_network_name }}"
|
||||
ip_range: 10.0.2.0/24
|
||||
state: present
|
||||
register: result
|
||||
- name: Verify update with ip_range
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.hcloud_load_balancer_network.load_balancer == hcloud_load_balancer_name
|
||||
- result.hcloud_load_balancer_network.network == hcloud_load_balancer_name
|
||||
- >
|
||||
"10.0.2.0/24" | ansible.utils.network_in_usable(result.hcloud_load_balancer_network.ip)
|
||||
|
||||
- name: Test update with ip_range idempotency
|
||||
hetzner.hcloud.load_balancer_network:
|
||||
load_balancer: "{{ hcloud_load_balancer_name }}"
|
||||
network: "{{ hcloud_network_name }}"
|
||||
ip_range: 10.0.2.0/24
|
||||
state: present
|
||||
register: result
|
||||
- name: Verify update with ip_range idempotency
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: Test delete with ip_range
|
||||
hetzner.hcloud.load_balancer_network:
|
||||
load_balancer: "{{ hcloud_load_balancer_name }}"
|
||||
network: "{{ hcloud_network_name }}"
|
||||
ip_range: 10.0.2.0/24
|
||||
state: absent
|
||||
register: result
|
||||
- name: Verify delete with ip_range
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: Test create with ip
|
||||
hetzner.hcloud.load_balancer_network:
|
||||
load_balancer: "{{ hcloud_load_balancer_name }}"
|
||||
|
|
|
|||
|
|
@ -7,13 +7,21 @@
|
|||
key: value
|
||||
register: test_network
|
||||
|
||||
- name: Create test_subnetwork
|
||||
- name: Create test_subnetwork1
|
||||
hetzner.hcloud.subnetwork:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
type: server
|
||||
network_zone: "{{ hcloud_network_zone_name }}"
|
||||
ip_range: 10.0.1.0/24
|
||||
register: test_subnetwork
|
||||
register: test_subnetwork1
|
||||
|
||||
- name: Create test_subnetwork2
|
||||
hetzner.hcloud.subnetwork:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
type: server
|
||||
network_zone: "{{ hcloud_network_zone_name }}"
|
||||
ip_range: 10.0.2.0/24
|
||||
register: test_subnetwork2
|
||||
|
||||
- name: Create test_server
|
||||
hetzner.hcloud.server:
|
||||
|
|
|
|||
|
|
@ -85,6 +85,62 @@
|
|||
that:
|
||||
- result is changed
|
||||
|
||||
- name: Test create with ip_range
|
||||
hetzner.hcloud.server_network:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
server: "{{ hcloud_server_name }}"
|
||||
ip_range: "10.0.1.0/24"
|
||||
state: present
|
||||
register: result
|
||||
- name: Verify create with ip_range
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.hcloud_server_network.network == hcloud_network_name
|
||||
- result.hcloud_server_network.server == hcloud_server_name
|
||||
- >
|
||||
"10.0.1.0/24" | ansible.utils.network_in_usable(result.hcloud_server_network.ip)
|
||||
|
||||
- name: Test update with ip_range
|
||||
hetzner.hcloud.server_network:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
server: "{{ hcloud_server_name }}"
|
||||
ip_range: "10.0.2.0/24"
|
||||
state: present
|
||||
register: result
|
||||
- name: Verify update with ip_range
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.hcloud_server_network.network == hcloud_network_name
|
||||
- result.hcloud_server_network.server == hcloud_server_name
|
||||
- >
|
||||
"10.0.2.0/24" | ansible.utils.network_in_usable(result.hcloud_server_network.ip)
|
||||
|
||||
- name: Test update with ip_range idempotency
|
||||
hetzner.hcloud.server_network:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
server: "{{ hcloud_server_name }}"
|
||||
ip_range: "10.0.2.0/24"
|
||||
state: present
|
||||
register: result
|
||||
- name: Verify update with ip_range idempotency
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: Test delete with ip_range
|
||||
hetzner.hcloud.server_network:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
server: "{{ hcloud_server_name }}"
|
||||
ip_range: "10.0.2.0/24"
|
||||
state: absent
|
||||
register: result
|
||||
- name: Verify delete with ip_range
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: Test create with alias ips
|
||||
hetzner.hcloud.server_network:
|
||||
network: "{{ hcloud_network_name }}"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue