cloudstack: cs_firewall: add account and domain
This commit is contained in:
parent
f029d9dda7
commit
3dfb068bfd
1 changed files with 27 additions and 12 deletions
|
@ -67,9 +67,19 @@ options:
|
||||||
- Error code for this icmp message. Considered if C(protocol=icmp).
|
- Error code for this icmp message. Considered if C(protocol=icmp).
|
||||||
required: false
|
required: false
|
||||||
default: null
|
default: null
|
||||||
|
domain:
|
||||||
|
description:
|
||||||
|
- Domain the firewall rule is related to.
|
||||||
|
required: false
|
||||||
|
default: null
|
||||||
|
account:
|
||||||
|
description:
|
||||||
|
- Account the firewall rule is related to.
|
||||||
|
required: false
|
||||||
|
default: null
|
||||||
project:
|
project:
|
||||||
description:
|
description:
|
||||||
- Name of the project.
|
- Name of the project the firewall rule is related to.
|
||||||
required: false
|
required: false
|
||||||
default: null
|
default: null
|
||||||
extends_documentation_fragment: cloudstack
|
extends_documentation_fragment: cloudstack
|
||||||
|
@ -147,9 +157,11 @@ class AnsibleCloudStackFirewall(AnsibleCloudStack):
|
||||||
if protocol == 'icmp' and not icmp_type:
|
if protocol == 'icmp' and not icmp_type:
|
||||||
self.module.fail_json(msg="no icmp_type set")
|
self.module.fail_json(msg="no icmp_type set")
|
||||||
|
|
||||||
args = {}
|
args = {}
|
||||||
args['ipaddressid'] = self.get_ip_address_id()
|
args['ipaddressid'] = self.get_ip_address('id')
|
||||||
args['projectid'] = self.get_project_id()
|
args['account'] = self.get_account('name')
|
||||||
|
args['domainid'] = self.get_domain('id')
|
||||||
|
args['projectid'] = self.get_project('id')
|
||||||
|
|
||||||
firewall_rules = self.cs.listFirewallRules(**args)
|
firewall_rules = self.cs.listFirewallRules(**args)
|
||||||
if firewall_rules and 'firewallrule' in firewall_rules:
|
if firewall_rules and 'firewallrule' in firewall_rules:
|
||||||
|
@ -187,14 +199,15 @@ class AnsibleCloudStackFirewall(AnsibleCloudStack):
|
||||||
firewall_rule = self.get_firewall_rule()
|
firewall_rule = self.get_firewall_rule()
|
||||||
if not firewall_rule:
|
if not firewall_rule:
|
||||||
self.result['changed'] = True
|
self.result['changed'] = True
|
||||||
args = {}
|
args = {}
|
||||||
args['cidrlist'] = self.module.params.get('cidr')
|
args['cidrlist'] = self.module.params.get('cidr')
|
||||||
args['protocol'] = self.module.params.get('protocol')
|
args['protocol'] = self.module.params.get('protocol')
|
||||||
args['startport'] = self.module.params.get('start_port')
|
args['startport'] = self.module.params.get('start_port')
|
||||||
args['endport'] = self.get_end_port()
|
args['endport'] = self.get_end_port()
|
||||||
args['icmptype'] = self.module.params.get('icmp_type')
|
args['icmptype'] = self.module.params.get('icmp_type')
|
||||||
args['icmpcode'] = self.module.params.get('icmp_code')
|
args['icmpcode'] = self.module.params.get('icmp_code')
|
||||||
args['ipaddressid'] = self.get_ip_address_id()
|
args['ipaddressid'] = self.get_ip_address('id')
|
||||||
|
|
||||||
|
|
||||||
if not self.module.check_mode:
|
if not self.module.check_mode:
|
||||||
firewall_rule = self.cs.createFirewallRule(**args)
|
firewall_rule = self.cs.createFirewallRule(**args)
|
||||||
|
@ -230,6 +243,8 @@ def main():
|
||||||
start_port = dict(type='int', aliases=['port'], default=None),
|
start_port = dict(type='int', aliases=['port'], default=None),
|
||||||
end_port = dict(type='int', default=None),
|
end_port = dict(type='int', default=None),
|
||||||
state = dict(choices=['present', 'absent'], default='present'),
|
state = dict(choices=['present', 'absent'], default='present'),
|
||||||
|
domain = dict(default=None),
|
||||||
|
account = dict(default=None),
|
||||||
project = dict(default=None),
|
project = dict(default=None),
|
||||||
api_key = dict(default=None),
|
api_key = dict(default=None),
|
||||||
api_secret = dict(default=None),
|
api_secret = dict(default=None),
|
||||||
|
|
Loading…
Reference in a new issue