82 lines
2.1 KiB
Plaintext
82 lines
2.1 KiB
Plaintext
{
|
|
"format": 1,
|
|
"seat": "node-backup",
|
|
"scope": "node",
|
|
"grain": "seat-list",
|
|
"domain": "Data",
|
|
"decision": "novox/hq ADR 0214",
|
|
"verbs": [
|
|
{
|
|
"name": "backed-up",
|
|
"description": "What this machine backs up: each module, what it declared, its last good night, how many restore points are kept and the repository's size.",
|
|
"replaces": [
|
|
"restic snapshots"
|
|
],
|
|
"input": {
|
|
"properties": {
|
|
"module": {
|
|
"description": "one module (optional)",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "now",
|
|
"description": "Take a backup now, of one module or of every module on this machine — before a migration, a retirement or anything else that could go wrong.",
|
|
"replaces": [
|
|
"restic backup"
|
|
],
|
|
"input": {
|
|
"properties": {
|
|
"module": {
|
|
"description": "one module (optional)",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "restore",
|
|
"description": "Restore one module's data from a restore point BESIDE the live data, never over it: each directory as \u003cpath\u003e.restored-\u003cdate\u003e. Swapping it in is a person's act. Lists the restore points when none is named.",
|
|
"replaces": [
|
|
"restic restore"
|
|
],
|
|
"input": {
|
|
"properties": {
|
|
"module": {
|
|
"description": "the module",
|
|
"type": "string"
|
|
},
|
|
"path": {
|
|
"description": "one of the module's directories (all of them when omitted)",
|
|
"type": "string"
|
|
},
|
|
"snapshot": {
|
|
"description": "the restore point (from `backed-up`; the newest when omitted)",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"module"
|
|
],
|
|
"type": "object"
|
|
}
|
|
}
|
|
],
|
|
"receives": [
|
|
{
|
|
"kind": "backup",
|
|
"comment": "#",
|
|
"dirs": true
|
|
},
|
|
{
|
|
"kind": "data",
|
|
"comment": "#",
|
|
"dirs": true
|
|
}
|
|
]
|
|
}
|