82555272549bcfac79166bb29781d6b02bfd2c4a
backup-myapps.sh/restore-myapps.sh only ever knew about Docker volumes, which no longer exist for n8n/odoo/mautic/nextcloud/frappe now that they're all running in k3s — nightly backups have been silently hollow for these apps since the migration. These new scripts capture/restore each app's k8s manifests, Secret, DB (pg_dump/mysqldump via kubectl exec), and app-data PVC contents (kubectl exec tar, never raw filesystem access), reusing the existing local+VM+R2 3-2-1 storage/retention logic unchanged. Tested standalone: full backup of all 5 apps produces verified non-empty manifests/secrets/DB dumps/PVC data; restore-in-place tested end-to-end against n8n (DB row counts and PVC data matched exactly pre/post, app verified healthy over HTTPS). Not wired into management-platform yet (app.py stays untouched) — restore script also doesn't yet handle a fresh/DR cluster where the PVCs and their manifests don't already exist (same-cluster restore only for now). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
CloudOps - Infrastructure Management & Disaster Recovery Platform
Overview
This repository contains the complete infrastructure code for Navitrends' backup and disaster recovery platform.
Components
- Platform: Flask web application for backup/restore management
- Scripts: Backup, restore, and sync scripts
- Docker Compose: Configuration for all 5 applications
Applications Managed
- Nextcloud (File sharing)
- Odoo (ERP/CRM)
- Frappe/ERPNext
- Mautic (Marketing automation)
- n8n (Workflow automation)
Servers
- Main Server: 173.249.20.244
- Backup VM: 192.168.152.128
Description
Languages
PHP
66.6%
JavaScript
15.8%
Twig
8.6%
CSS
4.4%
Less
2.1%
Other
2.4%