464fba619f
fix: Python boolean case for Jinja2 rendered values
2026-03-14 14:32:50 -07:00
2cd8aac039
fix: Python boolean case for Jinja2 rendered values
2026-03-14 14:32:28 -07:00
Semaphore
ef5803d6cf
refactor: proxmox_upgrade use inline Python for all API calls
2026-03-14 14:29:04 -07:00
Semaphore
a19fe2ce5d
fix: loop_var under loop_control in drain.yml and restore.yml
2026-03-14 14:25:24 -07:00
Semaphore
e771f6d9a9
fix: remove delegate_to from include_role in node_upgrade.yml
2026-03-14 14:17:49 -07:00
Semaphore
5005b87773
fix: preflight use inline python for API call to avoid variable scope issue
2026-03-14 14:16:14 -07:00
Semaphore
d952cb9723
fix: proxmox_upgrade preflight delegate_to and run_once
2026-03-14 14:14:34 -07:00
Semaphore
d17070f312
fix: proxmox_upgrade loop_var syntax
2026-03-14 14:08:57 -07:00
Semaphore
e0a5ff298a
feat: proxmox_upgrade role and playbook
2026-03-14 14:05:40 -07:00
9f929ac5ee
Updated to work around symlink issues
2026-03-13 16:19:28 -07:00
Semaphore
161c40dbbb
feat: hypervisor_backup_config role and playbook
2026-03-13 15:02:13 -07:00
Semaphore
a8bfe77354
Fix linux_patch role — remove dead os_family tasks, use ansible_os_family throughout
2026-03-12 21:50:31 -07:00
Semaphore
ca0f11b1c9
Fix snapshot role — XO REST API, fix playbook host targeting
...
- roles/snapshot/tasks/main.yml: replace xe CLI with XO REST API
- POST /rest/v0/vms/<uuid>/actions/snapshot?sync=true
- stores returned snapshot UUID as snapshot_id
- baremetal: skips gracefully with warning
- playbooks/snapshot_pre.yml: target linux_hosts only (was all)
- playbooks/linux_patch.yml: remove snapshot + report roles (snapshot is separate step)
- playbooks/site_maintenance.yml: remove bootstrap play (handled per-playbook),
remove windows_patch import (WinRM not implemented)
2026-03-12 21:44:20 -07:00
Semaphore
e530ae016b
Fix linux_patch — normalize upgradable_packages_list to avoid stdout_lines error on skipped OS tasks
2026-03-11 21:09:40 -07:00
153502fe86
Updated logging rules based on OS type.
2026-03-11 15:38:44 -07:00
Semaphore
e5fd6a56b6
Add Alpine apk support to linux_patch role — update check, upgrade, reboot detection
2026-03-11 12:03:58 -07:00
Semaphore
de36867075
Fix XCP-NG delegate_to — use inline conditional to avoid empty hostname error
2026-03-11 12:00:33 -07:00
Semaphore
bd1b99f47d
Fix XCP-NG tasks — skip when xcpng_host is empty, default delegate_to localhost
2026-03-11 11:56:55 -07:00
Semaphore
7368701e85
Fix YAML quote conflict in snapshot role — single quotes inside Jinja2 split filter
2026-03-11 11:33:37 -07:00
Semaphore
a88354149d
Add proxmox_vmid 110 to alpine-caddy inventory
2026-03-11 11:31:23 -07:00
Semaphore
cccaec29ab
Skip disk assert when mountpoint missing — handles Alpine LXC no /boot
2026-03-11 10:55:06 -07:00
Semaphore
184af05310
Fix disk check — df -P POSIX flag compatible with BusyBox Alpine and GNU coreutils
2026-03-11 10:48:16 -07:00
Semaphore
964b2a7909
Fix bootstrap OS detection — use /etc/os-release instead of ansible_os_family
2026-03-11 10:41:35 -07:00
Semaphore
4e7a78810a
Add Python bootstrap task — auto-installs python3 on Alpine/Debian before gather_facts
2026-03-11 10:39:34 -07:00
Semaphore
fb8ea52d0f
Add Proxmox helper script detection to preflight
2026-03-10 16:26:31 -07:00
Semaphore
f563df26d4
Fix change_freeze boolean coercion in preflight assert
2026-03-10 14:38:36 -07:00
Semaphore
187933b8c0
Add windows_patch role — KB version tracking, reboot detection, category filtering
2026-03-10 14:24:38 -07:00
Semaphore
4a0e4fa4f9
Add linux_patch role — package facts before/after, apt/dnf, version diff tracking
2026-03-10 14:23:38 -07:00
Semaphore
379fc49331
Add snapshot role — Proxmox and XCP-NG pre-patch snapshot with verification
2026-03-10 14:22:38 -07:00
Semaphore
a6029cd081
Add preflight role — disk, load, reboot, change freeze checks
2026-03-10 14:16:48 -07:00
Semaphore
1ae6576dab
Initial repo structure — playbook skeletons, roles, client template inventory
2026-03-10 14:03:29 -07:00