Files
apLukov/roles/firewall/tasks/ipset.yml
2024-10-30 01:50:38 +01:00

44 lines
1.5 KiB
YAML

---
# Set state status for firewall ipset
- name: Set state status for firewall ipset {{ item.id | default('@ipset[-1]') }}
ansible.builtin.set_fact:
firewall_ipset_state: "{{ item.state | default('present') }}"
# Delete firewall ipset
- name: Delete firewall ipset {{ item.id }}
when: "'absent' in firewall_ipset_state"
uci:
command: "absent"
config: "firewall"
section: "{{ item.id }}"
type: "ipset"
# Create and configure firewall ipset
- name: Create and configure firewall ipset
when: "'present' in firewall_ipset_state"
block:
# Create firewall ipset
- name: Create firewall ipset {{ item.id | default('@ipset[-1]') }}
uci:
command: "add"
config: "firewall"
section: "{{ item.id | default('@ipset[-1]') }}"
type: "ipset"
# Configure firewall ipset
- name: Configure firewall ipset {{ item.id | default('@ipset[-1]') }}
uci:
command: "set"
config: "firewall"
section: "{{ item.id | default('@ipset[-1]') }}"
type: "ipset"
value:
name: "{{ item.name | default(omit) }}"
comment: "{{ item.comment | default(omit) }}"
match: "{{ item.match | default([]) | join(' ') }}"
entry: "{{ item.entry | default([]) | join(' ') }}"
family: "{{ item.family | default(omit) }}"
maxelem: "{{ item.maxelem | default(omit) }}"
loadfile: "{{ item.loadfile | default(omit) }}"
enabled: "{{ item.enabled | default(omit) }}"