* Update pre-commit actions This was done by running "pre-commit autoupdate --freeze". * Remove pre-commit only dependencies from requirements.in Including them in the file would create the illusion that those were the versions actually used in CI, but they are not. The exact versions are determined by the pre-commit hooks which are pinned in .pre-commit-config.yaml. * Ansible Lint: Fix role-name[path] * Ansible Lint: Fix name[play] * Ansible Lint: Fix key-order[task] * Ansible Lint: Fix jinja[spacing] * Ansible Lint: Fix no-free-form * Ansible Lint: Fix var-naming[no-reserved] * Ansible Lint: Fix yaml[comments] * Ansible Lint: Fix yaml[line-length] * Ansible Lint: Fix name[casing] * Ansible Lint: Fix no-changed-when * Ansible Lint: Fix fqcn[action] * Ansible Lint: Fix args[module] * Improve task naming
63 lines
2.2 KiB
YAML
63 lines
2.2 KiB
YAML
---
|
|
- 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) and
|
|
( 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: Set detected_distribution to Raspbian (ARM64 on Debian Bullseye)
|
|
set_fact:
|
|
detected_distribution: Raspbian
|
|
when:
|
|
- ansible_facts.architecture is search("aarch64")
|
|
- raspberry_pi|default(false)
|
|
- ansible_facts.lsb.description|default("") is match("Debian.*bullseye")
|
|
|
|
- name: Execute OS related tasks on the Raspberry Pi - {{ action_ }}
|
|
include_tasks: "{{ item }}"
|
|
with_first_found:
|
|
- "{{ action_ }}/{{ detected_distribution }}-{{ detected_distribution_major_version }}.yml"
|
|
- "{{ action_ }}/{{ detected_distribution }}.yml"
|
|
- "{{ action_ }}/{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml"
|
|
- "{{ action_ }}/{{ ansible_distribution }}.yml"
|
|
- "{{ action_ }}/default.yml"
|
|
vars:
|
|
action_: >-
|
|
{% if state == "present" %}setup{% else %}teardown{% endif %}
|
|
when:
|
|
- raspberry_pi|default(false)
|