From 24c617766c66d42b42fe50964e25d7ebe8704025 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Moser?= Date: Sun, 19 Mar 2017 10:07:46 +0100 Subject: [PATCH] cloudstack: fix load balancer idempotency if no zone given (#22768) get_zone() is special, as it always returns a zone (default zone) even if no zone param is given. This makes sense for many use cases. --- lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule.py | 2 +- .../modules/cloud/cloudstack/cs_loadbalancer_rule_member.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule.py b/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule.py index d3c4d34c66..668f2f6215 100644 --- a/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule.py +++ b/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule.py @@ -253,7 +253,7 @@ class AnsibleCloudStackLBRule(AnsibleCloudStack): 'account': self.get_account(key='name'), 'domainid': self.get_domain(key='id'), 'projectid': self.get_project(key='id'), - 'zoneid': self.get_zone(key='id'), + 'zoneid': self.get_zone(key='id') if self.module.params.get('zone') else None, 'publicipid': self.get_ip_address(key='id'), 'name': self.module.params.get('name'), } diff --git a/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule_member.py b/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule_member.py index 86f645f138..9516dcf223 100644 --- a/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule_member.py +++ b/lib/ansible/modules/cloud/cloudstack/cs_loadbalancer_rule_member.py @@ -227,7 +227,7 @@ class AnsibleCloudStackLBRuleMember(AnsibleCloudStack): def get_rule(self): args = self._get_common_args() args['name'] = self.module.params.get('name') - args['zoneid'] = self.get_zone(key='id') + args['zoneid'] = self.get_zone(key='id') if self.module.params.get('zone') else None if self.module.params.get('ip_address'): args['publicipid'] = self.get_ip_address(key='id') rules = self.cs.listLoadBalancerRules(**args)