diff --git a/plugins/modules/load_balancer_network.py b/plugins/modules/load_balancer_network.py index a5304bb..7450e1e 100644 --- a/plugins/modules/load_balancer_network.py +++ b/plugins/modules/load_balancer_network.py @@ -127,6 +127,8 @@ class AnsibleHCloudLoadBalancerNetwork(AnsibleHCloud): def _get_load_balancer_and_network(self): try: + self.hcloud_load_balancer_network = None + self.hcloud_network = self._client_get_by_name_or_id( "networks", self.module.params.get("network"), @@ -135,17 +137,10 @@ class AnsibleHCloudLoadBalancerNetwork(AnsibleHCloud): "load_balancers", self.module.params.get("load_balancer"), ) - - self.hcloud_load_balancer_network = None + self.hcloud_load_balancer_network = self.hcloud_load_balancer.private_net_for(self.hcloud_network) except HCloudException as exception: self.fail_json_hcloud(exception) - def _get_load_balancer_network(self): - self.hcloud_load_balancer_network = None - for private_net in self.hcloud_load_balancer.private_net: - if private_net.network.id == self.hcloud_network.id: - self.hcloud_load_balancer_network = private_net - def _attach(self): params = { "network": self.hcloud_network, @@ -185,7 +180,6 @@ class AnsibleHCloudLoadBalancerNetwork(AnsibleHCloud): self._attach() self._get_load_balancer_and_network() - self._get_load_balancer_network() def _update_load_balancer_network(self): ip_range = self.module.params.get("ip_range") @@ -202,12 +196,10 @@ class AnsibleHCloudLoadBalancerNetwork(AnsibleHCloud): # No further updates needed, exit self._get_load_balancer_and_network() - self._get_load_balancer_network() return def present_load_balancer_network(self): self._get_load_balancer_and_network() - self._get_load_balancer_network() if self.hcloud_load_balancer_network is None: self._create_load_balancer_network() else: @@ -215,7 +207,6 @@ class AnsibleHCloudLoadBalancerNetwork(AnsibleHCloud): def delete_load_balancer_network(self): self._get_load_balancer_and_network() - self._get_load_balancer_network() if self.hcloud_load_balancer_network is not None and self.hcloud_load_balancer is not None: self._detach() self.hcloud_load_balancer_network = None @@ -230,7 +221,7 @@ class AnsibleHCloudLoadBalancerNetwork(AnsibleHCloud): # pylint: disable=disallowed-name for _ in range(10): self.hcloud_load_balancer.reload() - self._get_load_balancer_network() + self.hcloud_load_balancer_network = self.hcloud_load_balancer.private_net_for(self.hcloud_network) if done(self.hcloud_load_balancer_network): break diff --git a/plugins/modules/server_network.py b/plugins/modules/server_network.py index 58cf7e5..0f58ae9 100644 --- a/plugins/modules/server_network.py +++ b/plugins/modules/server_network.py @@ -148,6 +148,8 @@ class AnsibleHCloudServerNetwork(AnsibleHCloud): def _get_server_and_network(self): try: + self.hcloud_server_network = None + self.hcloud_network = self._client_get_by_name_or_id( "networks", self.module.params.get("network"), @@ -156,15 +158,10 @@ class AnsibleHCloudServerNetwork(AnsibleHCloud): "servers", self.module.params.get("server"), ) - self.hcloud_server_network = None + self.hcloud_server_network = self.hcloud_server.private_net_for(self.hcloud_network) except HCloudException as exception: self.fail_json_hcloud(exception) - def _get_server_network(self): - for private_net in self.hcloud_server.private_net: - if private_net.network.id == self.hcloud_network.id: - self.hcloud_server_network = private_net - def _attach(self): params = { "network": self.hcloud_network, @@ -199,7 +196,6 @@ class AnsibleHCloudServerNetwork(AnsibleHCloud): def _create_server_network(self): self._attach() self._get_server_and_network() - self._get_server_network() def _update_server_network(self): ip_range = self.module.params.get("ip_range") @@ -216,7 +212,6 @@ class AnsibleHCloudServerNetwork(AnsibleHCloud): # No further updates needed, exit self._get_server_and_network() - self._get_server_network() return params = { @@ -236,11 +231,9 @@ class AnsibleHCloudServerNetwork(AnsibleHCloud): self._mark_as_changed() self._get_server_and_network() - self._get_server_network() def present_server_network(self): self._get_server_and_network() - self._get_server_network() if self.hcloud_server_network is None: self._create_server_network() else: @@ -248,7 +241,6 @@ class AnsibleHCloudServerNetwork(AnsibleHCloud): def delete_server_network(self): self._get_server_and_network() - self._get_server_network() if self.hcloud_server_network is not None and self.hcloud_server is not None: self._detach() self.hcloud_server_network = None