The *-update.yml playbooks hard-coded the pre-migration VMIDs, so after cutover the "safety backup" ran against the stopped OLD container. Now the VMID comes from homelab_services['<svc>'].vmid. Also removes `--prune-backups keep-all=1` from the vzdump calls: retention is PBS's job (prune-pbs), and the client-side flag needed Datastore.Modify/Prune the ansible@pve token does not have, which made vzdump print "Backup ... failed" and exit non-zero after a successful upload. gitea-update.yml additionally splits the offsite backup (hosts: gitea) from its audit (hosts: cloud-pc), matching the profile move into the container. pve-*.yml imports pass pve_provisioning_enabled: false so the runtime update path never re-enters container creation. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012uoq5AVK8mkBgg83Mq6o5V
52 lines
1.2 KiB
YAML
52 lines
1.2 KiB
YAML
---
|
|
- name: Create and verify Gitea backup before update
|
|
hosts: gitea
|
|
gather_facts: false
|
|
tasks:
|
|
- name: Create a fresh Gitea offsite backup
|
|
ansible.builtin.command:
|
|
argv:
|
|
- systemctl
|
|
- start
|
|
- --wait
|
|
- homelab-restic-offsite-gitea.service
|
|
changed_when: true
|
|
|
|
- name: Run Gitea backup audit
|
|
hosts: cloud-pc
|
|
gather_facts: false
|
|
tasks:
|
|
- name: Run Gitea offsite backup audit
|
|
ansible.builtin.command:
|
|
argv:
|
|
- systemctl
|
|
- start
|
|
- --wait
|
|
- homelab-backup-audit-gitea.service
|
|
changed_when: true
|
|
|
|
- import_playbook: pve-gitea.yml
|
|
vars:
|
|
pve_provisioning_enabled: false
|
|
|
|
- name: Verify Gitea public endpoints after update
|
|
hosts: ru-vps
|
|
gather_facts: false
|
|
tasks:
|
|
- name: Check Gitea HTTPS endpoint
|
|
ansible.builtin.uri:
|
|
url: https://git.ada-dev.ru/
|
|
status_code: 200
|
|
return_content: false
|
|
register: gitea_https_check
|
|
retries: 24
|
|
delay: 5
|
|
until: gitea_https_check.status == 200
|
|
|
|
- name: Check Gitea SSH port from ru-vps
|
|
ansible.builtin.wait_for:
|
|
host: 192.168.1.25
|
|
port: 2222
|
|
state: started
|
|
timeout: 30
|