1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 11:42:08 +00:00
iiab/roles/vnstat/tasks/install.yml

54 lines
1.9 KiB
YAML
Raw Normal View History

- name: Install 'vnstat' package
package:
name: vnstat
state: present
# Similar code block in roles/network/tasks/detected_network.yml (line ~35) and roles/network/tasks/computed_network.yml (lines ~74 and ~110)
- name: "Setting iiab_wan_iface to '{{ ansible_default_ipv4.alias }}' -- using ansible_default_ipv4.alias if detected"
set_fact:
iiab_wan_iface: "{{ ansible_default_ipv4.alias }}"
when: ansible_default_ipv4.gateway is defined
# 2023-05-01: Probably no longer nec, as line 'Interface ""' in /etc/vnstat.conf (as installed by apt) automatically selects the default interface
- name: Insert 'Interface "{{ iiab_wan_iface }}"' into /etc/vnstat.conf
lineinfile:
path: /etc/vnstat.conf
regexp: '^Interface '
line: 'Interface "{{ iiab_wan_iface }}"'
# - name: Install /etc/vnstat.conf from template
# template:
# src: vnstat.conf.j2
# dest: /etc/vnstat.conf
# mode: '0744'
# 2023-05-01: https://github.com/vergoh/vnstat/issues/134#issuecomment-663836557
- name: 'Precautionary Start & Enable of vnstat.service, to mitigate intermittent #3539 (''Failed to open database "/var/lib/vnstat/vnstat.db" in read-only mode'') during WAN db creation just below'
systemd:
name: vnstat
daemon_reload: true
state: started
enabled: true
- name: Create database for WAN to collect vnStat data
shell: /usr/bin/vnstat -i {{ iiab_wan_iface }}
- name: Create database for LAN to collect vnStat data if not appliance config
shell: /usr/bin/vnstat -i {{ iiab_lan_iface }}
when: iiab_lan_iface is defined and iiab_lan_iface != "none"
# RECORD vnStat AS INSTALLED
- name: "Set 'vnstat_installed: True'"
set_fact:
vnstat_installed: True
- name: "Add 'vnstat_installed: True' to {{ iiab_state_file }}"
lineinfile:
path: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
regexp: '^vnstat_installed'
line: 'vnstat_installed: True'