diff --git a/roles/raspberrypi/tasks/main.yml b/roles/raspberrypi/tasks/main.yml index b80c91f..f666f73 100644 --- a/roles/raspberrypi/tasks/main.yml +++ b/roles/raspberrypi/tasks/main.yml @@ -25,19 +25,20 @@ ( ansible_facts.lsb.id|default("") == "Raspbian" or ansible_facts.lsb.description|default("") is match("[Rr]aspbian.*") ) -- name: Set detected_distribution to Raspbian (ARM64 on Debian Buster) +- name: Set detected_distribution to Debian set_fact: - detected_distribution: Raspbian - when: - - ansible_facts.architecture is search("aarch64") - - raspberry_pi|default(false) - - ansible_facts.lsb.description|default("") is match("Debian.*buster") + detected_distribution: Debian + when: > + raspberry_pi|default(false) and + ( ansible_facts.lsb.id|default("") == "Debian" or + ansible_facts.lsb.description|default("") is match("Debian") ) - name: Set detected_distribution_major_version set_fact: detected_distribution_major_version: "{{ ansible_facts.lsb.major_release }}" - when: - - detected_distribution | default("") == "Raspbian" + when: > + ( detected_distribution | default("") == "Raspbian" or + detected_distribution | default("") == "Debian" ) - name: execute OS related tasks on the Raspberry Pi include_tasks: "{{ item }}" diff --git a/roles/raspberrypi/tasks/prereq/Debian.yml b/roles/raspberrypi/tasks/prereq/Debian.yml new file mode 100644 index 0000000..9f33913 --- /dev/null +++ b/roles/raspberrypi/tasks/prereq/Debian.yml @@ -0,0 +1,34 @@ +--- +- name: Check if /boot/firmware/cmdline.txt exists + stat: + path: /boot/firmware/cmdline.txt + register: boot_firmware_cmdline_txt + +- name: Activating cgroup support + lineinfile: + path: "{{ (boot_firmware_cmdline_txt.stat.exists) | ternary('/boot/firmware/cmdline.txt', '/boot/cmdline.txt') }}" + regexp: '^((?!.*\bcgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory\b).*)$' + line: '\1 cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory' + backrefs: true + notify: reboot + +- name: Install iptables + apt: + name: iptables + +- name: Flush iptables before changing to iptables-legacy + iptables: + flush: true + changed_when: false # iptables flush always returns changed + +- name: Changing to iptables-legacy + alternatives: + path: /usr/sbin/iptables-legacy + name: iptables + register: ip4_legacy + +- name: Changing to ip6tables-legacy + alternatives: + path: /usr/sbin/ip6tables-legacy + name: ip6tables + register: ip6_legacy