Conversation
… charts
Layout
- Move playbooks into playbooks/ with shorter names (e.g.
install-and-configure-samba.yaml -> playbooks/samba.yaml)
- Move task includes into tasks/ and static assets into files/
- Rename group_vars/all -> group_vars/all.yaml
- Rename setup.yaml -> site.yaml (Ansible convention)
- Relocate deprecated spotify playbook under playbooks/deprecated/
New files
- ansible.cfg: default inventory, no host-key check, SSH pipelining +
ControlMaster, YAML stdout callback, smart gathering
- requirements.yml: declare kubernetes.core, community.general,
ansible.posix (kubernetes.core was already used but never declared)
- tasks/process-persistence-disks.yaml: shared helper replacing six
near-identical persistence-building blocks in charts.yaml
Bug fixes
- charts.yaml: remove stray '}' in four helm --set strings
({{ helm_common_persistence_downloads }}}) for readarr, lidarr,
calibre-web, calibre
- deprecated/spotify.yaml: fix reference to non-existent
tasks_clone_git_repo.yaml
- .gitignore: '***/kubespray/' is an invalid glob -> '**/kubespray/';
also add .venv/, *.retry, .ansible/, editor noise
- run.sh: fix broken `command -v "ansible-playbook --version"`
check, add shebang, set -euo pipefail, cd to script dir, forward
args via exec, install Galaxy collections from requirements.yml
Refactors
- charts.yaml (1248 -> 1041 lines): collapse six persistence blocks
into one include_tasks loop
- kubernetes.yaml: rename the misleading "Install kubernetes using
kubeadm" play (which ran regardless) to install cluster tooling;
replace `shell: curl | install` for kubectl with uri + get_url;
add `creates:` guard for Helm
- tasks/reload-systemd.yaml: replace 4-step shell: systemctl ...
sequence with a single ansible.builtin.systemd_service call
- samba.yaml: `shell: service smbd restart` -> ansible.builtin.service
- deprecated/spotify.yaml: rewrite to use apt, copy, user, and the
shared reload-systemd task instead of six raw shell: calls
README
- Add Repository Layout section with tree diagram
- Update all path references (group_vars/all.yaml, site.yaml,
files/kubeadm-cp.bash, playbooks/cloudflare-dns-updater.yaml)
- Expand ./run.sh usage notes (--check, arg forwarding,
PLAYBOOK/INVENTORY/VENV_DIR env overrides)
Verification
- ansible-playbook --syntax-check site.yaml -i hosts.yaml: OK
(only pre-existing warnings for 'become'/'timeout' used as var
names in include_tasks vars blocks)
- All 21 YAML files parse cleanly with PyYAML
- git detects every move as a rename; history preserved
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Restructure repo into idiomatic Ansible layout, fix bugs, deduplicate charts
Layout
install-and-configure-samba.yaml -> playbooks/samba.yaml)
New files
ControlMaster, YAML stdout callback, smart gathering
ansible.posix (kubernetes.core was already used but never declared)
near-identical persistence-building blocks in charts.yaml
Bug fixes
({{ helm_common_persistence_downloads }}}) for readarr, lidarr,
calibre-web, calibre
tasks_clone_git_repo.yaml
also add .venv/, *.retry, .ansible/, editor noise
command -v "ansible-playbook --version"check, add shebang, set -euo pipefail, cd to script dir, forward
args via exec, install Galaxy collections from requirements.yml
Refactors
into one include_tasks loop
kubeadm" play (which ran regardless) to install cluster tooling;
replace
shell: curl | installfor kubectl with uri + get_url;add
creates:guard for Helmsequence with a single ansible.builtin.systemd_service call
shell: service smbd restart-> ansible.builtin.serviceshared reload-systemd task instead of six raw shell: calls
README
files/kubeadm-cp.bash, playbooks/cloudflare-dns-updater.yaml)
PLAYBOOK/INVENTORY/VENV_DIR env overrides)
Verification
(only pre-existing warnings for 'become'/'timeout' used as var
names in include_tasks vars blocks)