mirror of
https://github.com/azlux/log2ram.git
synced 2023-10-10 13:37:24 +02:00
193c41573c
Use new trusted.gpg.d keyring for apt key, improve idempotency, only update cache when necessary, only restart service when necessary.
77 lines
2.1 KiB
YAML
77 lines
2.1 KiB
YAML
#!/usr/bin/env ansible-playbook
|
|
---
|
|
# Configure Raspberry Pi to log to RAM, with occasional SD card sync
|
|
# to reduce SD card writes
|
|
# Usage: ansible-playbook -e 'log2ram_size=80M' install_log2ram.yml
|
|
|
|
- hosts: all
|
|
gather_facts: true
|
|
gather_subset: min
|
|
become: true
|
|
|
|
|
|
vars:
|
|
apt_keyring_file: azlux.fr.log2ram.gpg
|
|
apt_sources_file: log2ram.list
|
|
|
|
log2ram_size: 40M
|
|
log2ram_path_disk: /var/log
|
|
log2ram_use_z2lr: true
|
|
log2ram_comp_alg: lz4
|
|
log2ram_log_disk_size: 100M
|
|
|
|
|
|
tasks:
|
|
- name: "Add /etc/apt/sources.list.d/{{ apt_sources_file }}"
|
|
copy:
|
|
content: "deb http://packages.azlux.fr/debian/ {{ ansible_facts['distribution_release'] }} main\n"
|
|
dest: /etc/apt/sources.list.d/{{ apt_sources_file }}
|
|
mode: 0644
|
|
owner: root
|
|
register: source_list
|
|
|
|
- name: Import apt key
|
|
apt_key:
|
|
url: https://azlux.fr/repo.gpg.key
|
|
id: 98B824A5FA7D3A10FDB225B7CA548A0A0312D8E6
|
|
keyring: /etc/apt/trusted.gpg.d/{{ apt_keyring_file }}
|
|
register: dl_key
|
|
|
|
- name: Remove tilde backup file {{ apt_keyring_file }}~
|
|
file:
|
|
path: /etc/apt/trusted.gpg.d/{{ apt_keyring_file }}~
|
|
state: absent
|
|
|
|
- name: update apt cache
|
|
apt:
|
|
update_cache: true
|
|
when: dl_key is changed or source_list is changed
|
|
|
|
- name: Install log2ram
|
|
apt:
|
|
pkg:
|
|
- log2ram
|
|
register: pkg
|
|
notify: Restart log2ram
|
|
|
|
- name: Set config options
|
|
lineinfile:
|
|
path: /etc/log2ram.conf
|
|
regexp: "{{ item.regexp }}"
|
|
line: "{{ item.line }}"
|
|
backrefs: true
|
|
loop:
|
|
- {regexp: '^SIZE=(.*)$', line: 'SIZE={{ log2ram_size }}'}
|
|
- {regexp: '^PATH_DISK=(.*)$', line: 'PATH_DISK="{{ log2ram_path_disk }}"'}
|
|
- {regexp: '^ZL2R=(.*)$', line: 'ZL2R={{ log2ram_use_z2lr|lower }}'}
|
|
- {regexp: '^COMP_ALG=(.*)$', line: 'COMP_ALG={{ log2ram_comp_alg }}'}
|
|
- {regexp: '^LOG_DISK_SIZE=(.*)$', line: 'LOG_DISK_SIZE={{ log2ram_log_disk_size }}'}
|
|
notify: Restart log2ram
|
|
|
|
|
|
handlers:
|
|
- name: Restart log2ram
|
|
systemd:
|
|
name: log2ram
|
|
state: restarted
|