1.4 KiB
Raspberry Pi Ansible Management
Date: 2026-05-29
Goal
Bring naruto (Pi 4, 8GB) and pi (Pi 3, 1GB) under Ansible management using a new raspberry_pi role that starts with the common role as its base.
Inventory
New file vars/raspberry_pi.ini with a [raspberry_pi] group containing both hosts. Both connect as user tudattr (non-root, sudo available).
ARM Fixes in common Role
Two tasks in extra_packages.yaml are amd64-only and must be fixed before running on ARM:
- bottom: URL is hardcoded to
amd64.deb. Fix to use the existingarchglobal variable so it resolves toarm64on aarch64 hosts. - Neovim: Fetched as an AppImage, which doesn't run on aarch64. Fix to install
neovimvia apt on ARM, skipping the AppImage path.
These fixes apply to the common role itself so any future ARM host benefits.
New Role: raspberry_pi
Structure mirrors other roles. tasks/main.yaml includes common tasks, then Pi-specific tasks (none yet — placeholder for future workloads like Newt on naruto, docker stack on pi).
New Playbook
playbooks/raspberry-pi.yaml targets raspberry_pi group, applies raspberry_pi role with tag raspberry_pi.
Group Vars
vars/group_vars/raspberry_pi/vars.yaml — empty for now, inherits all from all. Can hold Pi-specific overrides later.
Hostname
pi is currently named raspberrypi. The common hostname task will rename it to pi to match the inventory name.