Skip to content

Commit

Permalink
moved raspberry specific settings to raspberrypi role
Browse files Browse the repository at this point in the history
  • Loading branch information
stafwag committed Aug 16, 2020
1 parent 09a68c3 commit 53efb42
Show file tree
Hide file tree
Showing 6 changed files with 50 additions and 16 deletions.
File renamed without changes.
48 changes: 48 additions & 0 deletions roles/raspberrypi/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
- name: Test for raspberry pi /proc/cpuinfo
command: grep -E "Raspberry Pi|BCM2708|BCM2709|BCM2835|BCM2836" /proc/cpuinfo
register: grep_cpuinfo_raspberrypi
failed_when: false
changed_when: false

- name: Test for raspberry pi /proc/device-tree/model
command: grep -E "Raspberry Pi" /proc/device-tree/model
register: grep_device_tree_model_raspberrypi
failed_when: false
changed_when: false

- name: Set raspberry_pi fact to true
set_fact:
raspberry_pi: true
when:
grep_cpuinfo_raspberrypi.rc == 0 or grep_device_tree_model_raspberrypi.rc == 0

- name: Set detected_distribution to Raspbian
set_fact:
detected_distribution: Raspbian
when:
- raspberry_pi|default(false)
- 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)
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")

- name: Set detected_distribution_major_version
set_fact:
detected_distribution_major_version: "{{ ansible_facts.lsb.major_release }}"
when:
- detected_distribution | default("") == "Raspbian"

- name: execute OS related tasks on the Raspberry Pi
include_tasks: "{{ item }}"
with_first_found:
- "prereq/{{ detected_distribution }}-{{ detected_distribution_major_version }}.yml"
- "prereq/{{ detected_distribution }}.yml"
- "prereq/{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml"
- "prereq/{{ ansible_distribution }}.yml"
- "prereq/default.yml"
Original file line number Diff line number Diff line change
@@ -1,39 +1,25 @@
---
- name: Test for Raspbian
set_fact:
raspbian: '{% if
( ansible_facts.architecture is search("arm") and
ansible_facts.lsb.description is match("[Rr]aspbian.*[Bb]uster") ) or
( ansible_facts.architecture is search("aarch64") and
ansible_facts.lsb.description is match("Debian.*buster") or
ansible_facts.lsb.description is match("[Rr]aspbian.*[Bb]uster") ) %}true{% else %}false{% endif %}'

- name: Activating cgroup support
lineinfile:
path: /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
when:
- raspbian is true

- name: Flush iptables before changing to iptables-legacy
iptables:
flush: true
when: raspbian
changed_when: false # iptables flush always returns changed

- name: Changing to iptables-legacy
alternatives:
path: /usr/sbin/iptables-legacy
name: iptables
register: ip4_legacy
when: raspbian

- name: Changing to ip6tables-legacy
alternatives:
path: /usr/sbin/ip6tables-legacy
name: ip6tables
register: ip6_legacy
when: raspbian
File renamed without changes.
1 change: 1 addition & 0 deletions roles/raspberrypi/tasks/prereq/default.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
3 changes: 1 addition & 2 deletions site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@
roles:
- role: prereq
- role: download
- role: raspbian
- role: ubuntu
- role: raspberrypi

- hosts: master
become: yes
Expand Down

0 comments on commit 53efb42

Please sign in to comment.