- risky-file-permissions (32): add explicit mode: to copy/template/file tasks, matching the umask-derived permissions they already had (0644 for configs and systemd units, 0755 for created directories) — no functional change. - var-naming (28): prefix role-scoped vars with their role name across pi_dhtsensor, pi_dhtsensor_circuitpython, pi_shairport, pi_squeezelite, pi_squeezelite_custom, pi_sispmctl, pi_standard_setup, and pi_sysdweb's sysdweb_name (shared by 9 consuming roles). Updated every dependent template, task reference, and matching inventory.yml override, and verified resolved values with ansible-inventory before/after. - Fixes a latent bug found while renaming: pi_standard_setup's "Get/Change WiFi country" tasks reused the name wifi_country for both the role default and a register, so the register silently clobbered the default before do_wifi_country ever read it. Split into distinct names so the intended default value is used. - package-latest (2): pin docker-ce/docker-compose-plugin installs in server_debian_docker to state: present. - no-handler (1): move pi_lirc's "Reboot if boot overlay changed" into a proper handler notified by the boot-overlay task. ansible-lint now passes clean at the production profile. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
56 lines
1.6 KiB
YAML
56 lines
1.6 KiB
YAML
---
|
|
- name: Packages
|
|
ansible.builtin.apt:
|
|
name:
|
|
- python3
|
|
- python3-pip
|
|
- python3-vlc # also in venv - but this installs vlc + deps
|
|
- samba
|
|
- name: Checkout Musicmouse repo
|
|
ansible.builtin.git:
|
|
repo: "ssh://git@git.bauer.tech:2222/martin/musicmouse.git"
|
|
dest: "/opt/musicmouse"
|
|
version: "release/1.1"
|
|
accept_hostkey: true
|
|
- name: Create and update virtual env
|
|
ansible.builtin.pip:
|
|
requirements: /opt/musicmouse/espmusicmouse/host_driver/requirements.txt
|
|
virtualenv: /opt/musicmouse_venv
|
|
virtualenv_command: "/usr/bin/python3 -m venv"
|
|
- name: Create media directory
|
|
ansible.builtin.file:
|
|
path: /media/musicmouse
|
|
state: directory
|
|
mode: "0755"
|
|
- name: Install config file
|
|
ansible.builtin.copy:
|
|
src: config.yml
|
|
dest: /media/musicmouse/config.yml
|
|
mode: "0644"
|
|
- name: Install systemd service file
|
|
ansible.builtin.copy:
|
|
src: musicmouse.service
|
|
dest: /etc/systemd/system/
|
|
mode: "0644"
|
|
- name: Add script to autostart and start now
|
|
ansible.builtin.systemd:
|
|
name: musicmouse
|
|
state: restarted
|
|
enabled: "yes"
|
|
daemon_reload: "yes"
|
|
- name: Samba setup
|
|
ansible.builtin.copy:
|
|
src: smb.conf
|
|
dest: /etc/samba/
|
|
mode: "0644"
|
|
- name: Restart samba
|
|
ansible.builtin.systemd:
|
|
name: smbd
|
|
state: restarted
|
|
enabled: "yes"
|
|
# manual steps:
|
|
# - set samba passwords with smbpasswd
|
|
# - copy music into /media/musicmouse (or via samba share)
|
|
# - upload host driver?
|
|
# - manual patching of hassclient necessary :( loop has to be passed in, to not use running_event_loop
|