uscheduler/examples/HyperV-Backup/scriptsettings.json
2026-01-28 19:32:28 +01:00

40 lines
1.7 KiB
JSON

{
"$schema": "https://json-schema.org/draft-07/schema",
"title": "Hyper-V Backup Script Settings",
"description": "Configuration file for hyper-v-backup.ps1 script",
"version": "1.0.2",
"lastModified": "2026-01-28",
"schedule": {
"runMonth": [],
"runWeekday": ["Monday"],
"runTime": ["00:00"],
"minIntervalMinutes": 10
},
"backupRoot": "\\\\nassrv0001.corp.maks-it.com\\data-1",
"credentialEnvVar": "nassrv0001",
"tempExportRoot": "D:\\Temp\\HyperVExport",
"retentionCount": 3,
"excludeVMs": ["nassrv0002"],
"options": {
"dryRun": false
},
"_comments": {
"version": "Configuration schema version",
"lastModified": "Last modification date (YYYY-MM-DD)",
"schedule": {
"runMonth": "Array of month names (e.g. 'January', 'June', 'December') to run backup. Empty array = every month.",
"runWeekday": "Array of weekday names (e.g. 'Monday', 'Friday') to run backup. Empty array = every day.",
"runTime": "Array of UTC times in HH:mm format when backup should run.",
"minIntervalMinutes": "Minimum minutes between backup runs to prevent duplicate executions."
},
"backupRoot": "UNC path or local path to backup root directory. Hostname will be appended automatically.",
"credentialEnvVar": "Name of Machine-level environment variable containing Base64-encoded 'username:password'",
"tempExportRoot": "Local directory for temporary VM exports. Space is checked dynamically per VM (1.5x VM size).",
"retentionCount": "Number of backup generations to keep (1-365). Older backups are automatically deleted.",
"excludeVMs": "Array of VM names to exclude from backup process",
"options": {
"dryRun": "Simulate backup without actually exporting or copying VMs"
}
}
}