mirror of
https://github.com/iiab/iiab.git
synced 2025-03-09 15:40:17 +00:00
generalize wifi dependencies based on hardware present
This commit is contained in:
parent
66666f147d
commit
52252044f1
4 changed files with 32 additions and 13 deletions
|
@ -1,6 +1,22 @@
|
|||
## DISCOVER PLATFORMS ######
|
||||
# Put conditional actions for hardware platforms here
|
||||
|
||||
- name: Look for any wireless devices present
|
||||
shell: "ls -la /sys/class/net/*/phy80211 | awk -F / '{print $5}'"
|
||||
register: has_wifi_device
|
||||
ignore_errors: True
|
||||
changed_when: False
|
||||
|
||||
- name: Set has_wireless, if found
|
||||
set_fact:
|
||||
has_wireless: True
|
||||
when: has_wifi_device.stdout is defined and item|trim != ""
|
||||
with_items:
|
||||
- "{{ has_wifi_device.stdout_lines }}"
|
||||
|
||||
- include_tasks: wifi.yml
|
||||
when: has_wireless is defined
|
||||
|
||||
- include_tasks: raspberry_pi.yml
|
||||
when: first_run and rpi_model != "none"
|
||||
|
||||
|
|
|
@ -38,22 +38,12 @@
|
|||
- name: '2021-07-27: SEE ALSO 4-5 networking packages LATER installed by https://github.com/iiab/iiab/blob/master/roles/2-common/tasks/network.yml'
|
||||
meta: noop
|
||||
|
||||
# 2021-07-27 explanation from @jvonau: The 3 BELOW (iw, rfkill, wireless-tools)
|
||||
# are provided by RaspiOS. Ubuntu|Debian on the other hand are hit or miss:
|
||||
# desktops might have some/all 3 preinstalled, while servers tend not to have
|
||||
# these present at all, but are needed to be installed if you want to take full
|
||||
# advantage of WiFi on Ubuntu and friends -- but it's only enforced on RPi
|
||||
# hardware where we know in advance of the likelihood of WiFi being present.
|
||||
|
||||
- name: 'Install packages: cloud-guest-utils, dphys-swapfile, fake-hwclock, iw, rfkill, wireless-tools'
|
||||
- name: 'Install packages: cloud-guest-utils, dphys-swapfile, fake-hwclock'
|
||||
package:
|
||||
name:
|
||||
- cloud-guest-utils # Contains 'growpart' for resizing a partition during boot, which is normally done with the aid of cloud-init
|
||||
- dphys-swapfile # 2021-07-27: RaspiOS installs this regardless -- autogenerate and use a swap file
|
||||
- fake-hwclock # 2021-07-27: RaspiOS installs this regardless -- save/restore system clock on machines without working RTC hardware
|
||||
- iw # 2021-07-27: RaspiOS installs this regardless -- configure Linux wireless devices -- hard dependence for ap0 creation, SEE https://github.com/iiab/iiab/blob/master/roles/network/templates/hostapd/iiab-clone-wifi.service.j2
|
||||
- rfkill # 2021-07-27: RaspiOS installs this regardless -- enable & disable wireless devices
|
||||
- wireless-tools # 2021-07-27: RaspiOS installs this regardless -- manipulate Linux Wireless Extensions
|
||||
state: present
|
||||
|
||||
|
||||
|
|
14
roles/1-prep/tasks/wifi.yml
Normal file
14
roles/1-prep/tasks/wifi.yml
Normal file
|
@ -0,0 +1,14 @@
|
|||
# 2021-07-27 explanation from @jvonau: The 3 BELOW (iw, rfkill, wireless-tools)
|
||||
# are provided by RaspiOS. Ubuntu|Debian on the other hand are hit or miss:
|
||||
# desktops might have some/all 3 preinstalled, while servers tend not to have
|
||||
# these present at all, but are needed to be installed if you want to take full
|
||||
# advantage of WiFi on Ubuntu and friends
|
||||
|
||||
- name: 'Install packages: hostapd, iw, rfkill, wireless-tools'
|
||||
package:
|
||||
name:
|
||||
- hostapd # IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator -- has its service masked out of the box, and only used when IIAB's network roles detects the presence of WiFi and an AP is desired
|
||||
- iw # 2021-07-27: RaspiOS installs this regardless -- configure Linux wireless devices -- hard dependence for ap0 creation, SEE https://github.com/iiab/iiab/blob/master/roles/network/templates/hostapd/iiab-clone-wifi.service.j2
|
||||
- rfkill # 2021-07-27: RaspiOS installs this regardless -- enable & disable wireless devices
|
||||
- wireless-tools # 2021-07-27: RaspiOS installs this regardless -- manipulate Linux Wireless Extensions
|
||||
state: present
|
|
@ -10,10 +10,9 @@
|
|||
state: present
|
||||
when: not is_raspbian
|
||||
|
||||
- name: 'Install network packages: hostapd, iproute2, iptables-persistent, netmask -- later used by https://github.com/iiab/iiab/tree/master/roles/network'
|
||||
- name: 'Install network packages: iproute2, iptables-persistent, netmask -- later used by https://github.com/iiab/iiab/tree/master/roles/network'
|
||||
package:
|
||||
name:
|
||||
- hostapd # IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator -- has its service masked out of the box, and only used when IIAB's network roles detects the presence of WiFi and an AP is desired
|
||||
- iproute2 # 2021-07-27: RaspiOS installs this regardless -- the new networking and traffic control tools, meant to replace net-tools
|
||||
- iptables-persistent # Boot-time loader for netfilter rules, iptables (firewall) plugin -- however Netfilter / nftables is ever moving forward so keep an eye on it!
|
||||
- netmask # Handy utility -- helps determine network masks
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue