feat(ansible): openwrt-iot-vlan role foundation (Phase C start) #112
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/openwrt-iot-vlan-role"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Phase 0 (inert foundation) of the IoT VLAN isolation project: the community.openwrt-based openwrt-iot-vlan Ansible role. Applies nothing until run; disruptive steps gated behind default-false vars. Verified with a read-only --check --diff against the live router. (Re-opened from #110 after a concurrent-session branch collision on the shared checkout.)
Phase 1 of the Spotify-as-a-module plan. First OAuth integration seeded here. - seed-spotify init container writes BOTH storage files (format verified vs HA source, logic unit-tested, idempotent, non-destructive): * .storage/application_credentials (items=LIST; auth_domain=spotify) * .storage/core.config_entries spotify entry with the OAuth token blob; token.expires_at=0 so HA refreshes on boot from refresh_token + client creds. Runs only when the OPTIONAL spotify-credentials secret exists (pod boots fine without it). - spotify-ha-bootstrap.py: mints a refresh token with HA's exact 10 SPOTIFY_SCOPES (a superset that also satisfies the concerts bridge) + fetches the Spotify user id/name the seeder needs. - spotify-secret.yaml.template: the creds shape. INERT until the SOPS secret is created from real creds — NOT merged yet; will verify media_player.spotify end-to-end (real token refresh) before merging. No dashboard edits needed: media_player.spotify auto-appears in the domain- filtered Media/Speakers cards.