Fix Enable Auto Backup
parent
662621143c
commit
17414609db
214
manifest.jps
214
manifest.jps
|
@ -14,8 +14,8 @@ targetNodes:
|
||||||
|
|
||||||
globals:
|
globals:
|
||||||
envName: "${env.name}"
|
envName: "${env.name}"
|
||||||
scriptPath: "/home/litespeed/mb-backups"
|
scriptPath: "/home/jelastic/mb-backups"
|
||||||
logPath: "/home/litespeed/mb-backups/logs"
|
logPath: "/home/jelastic/mb-backups/logs"
|
||||||
|
|
||||||
onInstall:
|
onInstall:
|
||||||
- checkAddons
|
- checkAddons
|
||||||
|
@ -63,70 +63,6 @@ menu:
|
||||||
confirmText: View current backup schedule?
|
confirmText: View current backup schedule?
|
||||||
successText: Current schedule retrieved successfully
|
successText: Current schedule retrieved successfully
|
||||||
|
|
||||||
- caption: Check Backup Repository
|
|
||||||
confirmText: Do you want to check and repair the backup repository?
|
|
||||||
loadingText: Checking and repairing backup repository...
|
|
||||||
action: checkBackupRepo
|
|
||||||
successText: Backup repository check completed successfully.
|
|
||||||
title: Check Backup Repository
|
|
||||||
submitButtonText: Run Check
|
|
||||||
|
|
||||||
- caption: Core File Backup
|
|
||||||
confirmText: Backup Core Files?
|
|
||||||
loadingText: Backing up Core Files...
|
|
||||||
action: backupcore
|
|
||||||
successText: Core Files Backup Completed Successfully
|
|
||||||
settings: backupSettings
|
|
||||||
title: Backup Core Files
|
|
||||||
submitButtonText: Backup Now
|
|
||||||
|
|
||||||
- caption: Media Backup
|
|
||||||
confirmText: Backup Media Files?
|
|
||||||
loadingText: Backing up Media Files...
|
|
||||||
action: backupmedia
|
|
||||||
successText: Media Files Backup Completed Successfully
|
|
||||||
settings: backupSettings
|
|
||||||
title: Backup Media Files
|
|
||||||
submitButtonText: Backup Now
|
|
||||||
|
|
||||||
- caption: Database Backup
|
|
||||||
confirmText: Backup Database?
|
|
||||||
loadingText: Backing up Database...
|
|
||||||
action: backupdb
|
|
||||||
successText: Database Backup Completed Successfully
|
|
||||||
settings: backupSettings
|
|
||||||
title: Backup Database
|
|
||||||
submitButtonText: Backup Now
|
|
||||||
|
|
||||||
- caption: Restore
|
|
||||||
confirmText: Restore from Snapshot?
|
|
||||||
loadingText: Restoring...
|
|
||||||
action: restore
|
|
||||||
successText: Restore Completed Successfully
|
|
||||||
settings: restoreSettings
|
|
||||||
title: Restore from Snapshot
|
|
||||||
submitButtonText: Restore Now
|
|
||||||
|
|
||||||
- caption: View Full Backups
|
|
||||||
action: viewFullBackups
|
|
||||||
confirmText: Are you sure you want to view full backups?
|
|
||||||
successText: Full backups listed successfully.
|
|
||||||
|
|
||||||
- caption: View Core Backups
|
|
||||||
action: viewCoreBackups
|
|
||||||
confirmText: Are you sure you want to view core backups?
|
|
||||||
successText: Core backups listed successfully.
|
|
||||||
|
|
||||||
- caption: View Media Backups
|
|
||||||
action: viewMediaBackups
|
|
||||||
confirmText: Are you sure you want to view media backups?
|
|
||||||
successText: Media backups listed successfully.
|
|
||||||
|
|
||||||
- caption: View Database Backups
|
|
||||||
action: viewDatabaseBackups
|
|
||||||
confirmText: Are you sure you want to view database backups?
|
|
||||||
successText: Database backups listed successfully.
|
|
||||||
|
|
||||||
onUninstall:
|
onUninstall:
|
||||||
- removeScript
|
- removeScript
|
||||||
|
|
||||||
|
@ -149,15 +85,7 @@ actions:
|
||||||
- cmd[cp]:
|
- cmd[cp]:
|
||||||
user: root
|
user: root
|
||||||
commands: |
|
commands: |
|
||||||
if [ ! -x "/home/litespeed/mb-backups/manage_backup_schedule.sh" ]; then
|
bash "/home/jelastic/mb-backups/manage_backup_schedule.sh" add "0 0 * * *" "$(cat /etc/restic-password)"
|
||||||
echo "Error: manage_backup_schedule.sh not found or not executable"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
bash "/home/litespeed/mb-backups/manage_backup_schedule.sh"
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "Error executing manage_backup_schedule.sh"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
- return:
|
- return:
|
||||||
type: info
|
type: info
|
||||||
message: "Daily backup schedule configured successfully"
|
message: "Daily backup schedule configured successfully"
|
||||||
|
@ -165,18 +93,10 @@ actions:
|
||||||
removeAutoBackup:
|
removeAutoBackup:
|
||||||
- cmd[cp]:
|
- cmd[cp]:
|
||||||
user: root
|
user: root
|
||||||
commands: bash /home/litespeed/mb-backups/manage_backup_schedule.sh remove
|
commands: bash /home/jelastic/mb-backups/manage_backup_schedule.sh remove
|
||||||
- return:
|
- return:
|
||||||
type: info
|
type: info
|
||||||
message: "${response.out}"
|
message: "Backup schedule removed successfully"
|
||||||
|
|
||||||
checkBackupRepo:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/backup-logic.sh check_backup_repo "${globals.envName}"
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
backupnow:
|
backupnow:
|
||||||
- cmd[cp]:
|
- cmd[cp]:
|
||||||
|
@ -184,135 +104,25 @@ actions:
|
||||||
commands: bash /home/jelastic/mb-backups/backup_all.sh "${globals.envName}"
|
commands: bash /home/jelastic/mb-backups/backup_all.sh "${globals.envName}"
|
||||||
- return:
|
- return:
|
||||||
type: info
|
type: info
|
||||||
message: "${response.out}"
|
message: "Backup initiated successfully."
|
||||||
|
|
||||||
backupcore:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/backup_core_files.sh "${globals.envName}" "${settings.blabel}"
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
backupmedia:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/backup_media.sh "${globals.envName}" "${settings.blabel}"
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
backupdb:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/backup_database.sh "${globals.envName}" "${settings.blabel}"
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
restore:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/restore_backup_direct.sh "${settings.snapshotId}" "${globals.envName}"
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
viewFullBackups:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/view_snapshots.sh main_backup
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
viewCoreBackups:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/view_snapshots.sh core_files
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
viewMediaBackups:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/view_snapshots.sh media_themes
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
viewDatabaseBackups:
|
|
||||||
- cmd[cp]:
|
|
||||||
user: root
|
|
||||||
commands: bash /home/jelastic/mb-backups/view_snapshots.sh wordpress_db
|
|
||||||
- return:
|
|
||||||
type: info
|
|
||||||
message: "${response.out}"
|
|
||||||
|
|
||||||
viewBackupSchedule:
|
viewBackupSchedule:
|
||||||
- cmd[cp]:
|
- cmd[cp]:
|
||||||
user: root
|
user: root
|
||||||
commands: bash /home/litespeed/mb-backups/check_sched.sh
|
commands: bash /home/jelastic/mb-backups/check_sched.sh
|
||||||
- return:
|
- return:
|
||||||
type: info
|
type: info
|
||||||
message: "${response.out}"
|
message: "${response.out}"
|
||||||
|
|
||||||
checkAddons:
|
|
||||||
- script: |-
|
|
||||||
var onAfterReturn = { setGlobals: {} },
|
|
||||||
glbs = onAfterReturn.setGlobals,
|
|
||||||
resp = api.marketplace.app.GetAddonList({
|
|
||||||
search: {},
|
|
||||||
envName: "${env.name}",
|
|
||||||
session: session
|
|
||||||
});
|
|
||||||
if (resp.result != 0) return resp;
|
|
||||||
glbs["alreadyInstalled"] = false;
|
|
||||||
for (let i = 0, n = resp.apps.length; i < n; i++) {
|
|
||||||
if (resp.apps[i].isInstalled) {
|
|
||||||
if (resp.apps[i].app_id == 'db-backup') {
|
|
||||||
glbs["alreadyInstalled"] = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return { result: 0, onAfterReturn: onAfterReturn };
|
|
||||||
- if ('${globals.alreadyInstalled}' == 'true' ):
|
|
||||||
- stopEvent:
|
|
||||||
type: warning
|
|
||||||
message: Database backup add-on is already installed on ${env.name}. Backup addon installation is not possible.
|
|
||||||
|
|
||||||
installRestic:
|
|
||||||
cmd [cp]: |-
|
|
||||||
if which dnf >/dev/null 2>&1; then
|
|
||||||
dnf install -y epel-release
|
|
||||||
dnf install -y restic
|
|
||||||
else
|
|
||||||
yum-config-manager --add-repo https://copr.fedorainfracloud.org/coprs/copart/restic/repo/epel-7/copart-restic-epel-7.repo
|
|
||||||
yum-config-manager --enable copr:copr.fedorainfracloud.org:copart:restic
|
|
||||||
yum -y install restic
|
|
||||||
yum-config-manager --disable copr:copr.fedorainfracloud.org:copart:restic
|
|
||||||
echo "/var/log/backup_addon.log {
|
|
||||||
weekly
|
|
||||||
rotate 52
|
|
||||||
missingok
|
|
||||||
notifempty
|
|
||||||
compress
|
|
||||||
copytruncate
|
|
||||||
}" > /etc/logrotate.d/backup-addon
|
|
||||||
fi
|
|
||||||
user: root
|
|
||||||
|
|
||||||
importScripts:
|
importScripts:
|
||||||
- cmd[cp]:
|
- cmd[cp]:
|
||||||
user: root
|
user: root
|
||||||
commands:
|
commands:
|
||||||
- mkdir -p /home/jelastic/mb-backups
|
- mkdir -p /home/jelastic/mb-backups
|
||||||
- mkdir -p /home/litespeed/mb-backups/logs
|
- mkdir -p /home/jelastic/mb-backups/logs
|
||||||
- mkdir -p /home/litespeed/mb-backups/logs/auto
|
- mkdir -p /home/jelastic/mb-backups/logs/auto
|
||||||
- mkdir -p /home/litespeed/mb-backups/logs/manual
|
- mkdir -p /home/jelastic/mb-backups/logs/manual
|
||||||
- mkdir -p /home/litespeed/mb-backups/logs/restore
|
- mkdir -p /home/jelastic/mb-backups/logs/restore
|
||||||
- cd /home/jelastic/mb-backups
|
- cd /home/jelastic/mb-backups
|
||||||
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/backup_all.sh
|
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/backup_all.sh
|
||||||
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/backup_core_files.sh
|
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/backup_core_files.sh
|
||||||
|
@ -323,4 +133,4 @@ actions:
|
||||||
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/restore_backup_direct.sh
|
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/restore_backup_direct.sh
|
||||||
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/view_snapshots.sh
|
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/imports/view_snapshots.sh
|
||||||
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/backup-logic.sh
|
- curl -O https://deploy-proxy.mightybox.io/addons/mb-backup-manager/raw/branch/main/scripts/backup-logic.sh
|
||||||
- chmod +x /home/litespeed/mb-backups/*.sh
|
- chmod +x /home/jelastic/mb-backups/*.sh
|
Loading…
Reference in New Issue