From afe31e53d434572dbca35322fd020b91100f69ab Mon Sep 17 00:00:00 2001 From: Jonathan Miller <1+jmiller@noreply.git.mokoconsulting.tech> Date: Sun, 28 Jun 2026 18:55:17 +0000 Subject: [PATCH] docs: add retention section, fix running backups location, update example table --- Backup-Profiles.-.md | 57 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/Backup-Profiles.-.md b/Backup-Profiles.-.md index e69de29..d7f37cd 100644 --- a/Backup-Profiles.-.md +++ b/Backup-Profiles.-.md @@ -0,0 +1,57 @@ +# Backup Profiles + +Profiles define what gets backed up, how it's compressed, where it's stored, and what to exclude. + +## Default Profile + +A default profile is created on install with these settings: +- **Type**: Full site (database + files) +- **Format**: ZIP, compression level 5 +- **Backup dir**: `administrator/components/com_mokosuitebackup/backups` +- **Excluded dirs**: backups dir, tmp, cache, logs, administrator/logs +- **Excluded files**: .gitignore, .htaccess.bak +- **Excluded tables**: `#__session` + +## Backup Types + +| Type | Database | Files | Use Case | +|---|---|---|---| +| **Full** | Yes | All files | Complete site snapshot | +| **Database Only** | Yes | No | Quick DB backup before changes | +| **Files Only** | No | All files | Code/media backup | +| **Differential** | Yes (full) | Changed only | Fast daily backups between weekly fulls | + +## Retention + +Each profile has its own retention settings in the **Retention** tab: + +| Setting | Description | +|---|---| +| **Keep Backups (days)** | Delete completed backups older than this many days | +| **Keep Backups (count)** | Maximum number of completed backups to keep (oldest removed first) | + +Set either value to **0** to use the global default from component options (**Options > Cleanup**). + +The system plugin checks retention on every admin page load (throttled to once per hour). Cleanup runs per-profile: each profile's retention settings are evaluated independently, and the stricter limit (age or count) wins. + +## Creating Profiles + +1. Go to **Components > MokoSuiteBackup > Backup Profiles** +2. Click **New** +3. Configure each tab (General, Archive, Filters, Notifications, Retention, Remote) + +## Running Backups + +From the **Dashboard**: +1. Select a profile from the dropdown +2. Click **Backup Now** +3. A progress modal shows real-time step completion +4. The AJAX step engine works even on shared hosting with PHP time limits + +## Example Setup + +| Profile | Type | Schedule | Remote | Retention | +|---|---|---|---|---| +| Daily Full | Full | Daily at 02:00 | S3 | 30 days / 30 backups | +| Hourly DB | Database Only | Every hour | FTP | 7 days / 168 backups | +| Weekly Differential | Differential | Weekly Sunday | Google Drive | 90 days / 12 backups |