Update for loop

main
Anthony 2024-03-08 23:39:45 +08:00
parent d75f5b952b
commit 62160dea12
1 changed files with 74 additions and 10 deletions

View File

@ -5,7 +5,6 @@ id: mb-backup-manager
description: Custom Backup and Restore Addon for WordPress using Restic. Supports backing up databases, core files, media files, and full backups with scheduling and retention policies. description: Custom Backup and Restore Addon for WordPress using Restic. Supports backing up databases, core files, media files, and full backups with scheduling and retention policies.
baseUrl: https://deploy.mightybox.io/addons/mb-backup-manager/raw/branch/main/ baseUrl: https://deploy.mightybox.io/addons/mb-backup-manager/raw/branch/main/
targetNodes: targetNodes:
nodeType: nodeType:
- nginxphp - nginxphp
@ -23,6 +22,14 @@ settings:
values: values:
- value: 1 - value: 1
caption: Pre-defined caption: Pre-defined
- value: 2
caption: Custom
- value: 3
caption: Manual (crontab)
tooltip: "<span>A simple <a href=\"https://en.wikipedia.org/wiki/Cron#Overview\" target=\"_blank\"> cron-based</a>
scheduler to automatically start the backup process based on prescribed timing
instructions.</span><div><b>Note</b> that the required timestamps should be specified
respectively to the UTC time zone.</div>"
showIf: showIf:
1: 1:
- name: cronTime - name: cronTime
@ -39,7 +46,72 @@ settings:
- value: 0 0 1 * * - value: 0 0 1 * *
caption: "Monthly (at 00:00 on day 1)" caption: "Monthly (at 00:00 on day 1)"
default: 0 0 * * * default: 0 0 * * *
2:
- type: string
name: backupTime
caption: Time
inputType: time
default: "09:00"
cls: x-form-text
width: 120
required: true
- caption: Days
type: compositefield
name: days
defaultMargins: 0 12 0 0
items:
- name: sun
value: true
type: checkbox
caption: Su
- name: mon
value: true
type: checkbox
caption: Mo
- name: tue
value: true
type: checkbox
caption: Tu
- name: wed
value: true
type: checkbox
caption: We
- name: thu
value: true
type: checkbox
caption: Th
- name: fri
value: true
type: checkbox
caption: Fr
- name: sat
value: true
type: checkbox
caption: Sa
- name: "tz"
caption: "Time Zone"
type: "list"
required: true
editable: true
forceSelection: true
values: values
3:
- name: cronTime
caption: Crontab
type: string
default: 0 0 * * *
regexText: Cron syntax is incorrect!
regex: "^(((([\\\\*]{1}){1,})|((\\\\*\\\\\\/){0,1}(([0-9\\/\\*\\-\\,]{1}){1,}|(([1-5]{1}){1}([0-9\\/\\*\\-\\,]{1}){1,}){1})))
((([\\\\*]{1}){1,})|((\\\\*\\\\\\/){0,1}(([0-9\\/\\*\\-\\,]{1}){1,}|(([1]{1}){1}([0-9\\/\\*\\-\\,-]{1}){1,}){1}|([2]{1}){1}([0-3]{1}){1})))
((([\\\\*]{1}){1})|((\\\\*\\\\\\/){0,1}(([1-9]{1}){1}|(([1-2]{1}){1}([0-9\\/\\*\\-\\,]{1}){1,5}){1}|([3]{1}){1}([0-1]{1}){1})))
((([\\\\*]{1}){1})|((\\\\*\\\\\\/){0,1}(([1-9]{1}){1}|(([1-2]{1}){1}([0-9\\/\\*\\-\\,]{1}){1,}){1}|([3]{1}){1}([0-1]{1}){1}))|(jan|JAN|feb|FEB|mar|MAR|apr|APR|may|MAY|jun|JUN|jul|JUL|aug|AUG|sep|SEP|okt|OKT|nov|NOV|dec|DEC)(-?\\w+?)?)
((([\\\\*]{1}){1})|((\\\\*\\\\\\/){0,1}(([0-7]{1,}(-?[0-7]?(,[0-7]){0,6})){1}))|((sun|SUN|mon|MON|tue|TUE|wed|WED|thu|THU|fri|FRI|sat|SAT)?(,(sun|SUN|mon|MON|tue|TUE|wed|WED|thu|THU|fri|FRI|sat|SAT)){0,6})(-?\\w+?)?))$|^(@(reboot|yearly|annualy|monthly|weekly|daily|hourly))$"
- caption: Backup storage
type: list
tooltip: "The environment with backup storage to be used for backups creation. Presence of this environment is obligatory."
name: storageName
dependsOn: region
required: true
- type: spinner - type: spinner
name: backupCount name: backupCount
caption: Number of backups caption: Number of backups
@ -47,14 +119,6 @@ settings:
min: 1 min: 1
max: 30 max: 30
default: 5 default: 5
- caption: Backup storage
type: list
tooltip: "The environment with backup storage to be used for backups creation. Presence of this environment is obligatory."
name: storageName
dependsOn: region
required: true
onBeforeInit: scripts/configOnBeforeInit.js onBeforeInit: scripts/configOnBeforeInit.js
restore: restore: