docs: add raspberry-pi ansible management plan and spec
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# 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 existing `arch` global variable so it resolves to `arm64` on aarch64 hosts.
|
||||
- **Neovim:** Fetched as an AppImage, which doesn't run on aarch64. Fix to install `neovim` via 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.
|
||||
Reference in New Issue
Block a user