ConfigImportReport
restored object[]required
One entry per category, in a fixed order.
The categories of ConfigImportGroup, and stack_env, the stacks' .env files, counted by stack, of which removed is always 0.
Possible values: [shares, accounts, schedules, notifications, backup, system, custom_config, templates, stacks, stack_env]
notRestored object[]required
Everything the import did not restore, each with why. Empty when everything in the archive was restored.
Possible values: [stack_env, disk, database_secret, backup_recipient]
The stack whose .env file it is (stack_env), the array disk by its ConfigImportDisk.name (disk), the table and column of a database secret cleared by a bare-metal restore, with the row it was in (database_secret), or backup_recipient, the archive's backup recipient, which a bare-metal restore adopts only when identity.age opens and otherwise leaves this box's own in place.
no_secrets, no_passphrase and passphrase_incorrect: the archive's passphrase-protected section could not be opened (see ConfigImportSecretsStatus; for backup_recipient, its identity.age). stack_not_in_archive: that section holds an .env for a stack the archive has no files of. left_in_place: the .env on this machine was kept because the archive holds none for that stack. disk_absent, disk_replaced and disk_ambiguous: a bare-metal restore did not match the array disk (see ConfigImportDiskState), so it stays a row of the restored array, unmounted, and the array is degraded: nothing mounts, matched disks included, until the degraded array is acknowledged or the replace flow adopts a replacement disk. sealed_under_other_key: the secret was sealed under the machine key of the installation the archive came from, which this machine does not have, and the archive holds no copy of it it could be sealed again from (no passphrase opened its secrets.age, or it never carried this secret, like TOTP), so a bare-metal restore cleared it.
Possible values: [no_secrets, no_passphrase, passphrase_incorrect, stack_not_in_archive, left_in_place, disk_absent, disk_replaced, disk_ambiguous, sealed_under_other_key]
The status of the imported archive's secrets.age.
Possible values: [none, opened, no_passphrase, passphrase_incorrect]
The name of the archive of the configuration as it was before the import, which a restore can go back to. Empty when no backup destination was written to.
Which passphrase the pre-import archive's secrets.age is sealed with. request: the one given with the import, which opened the imported archive's secrets. configured: the configured backup passphrase. none: the pre-import archive has no secrets.age.
Possible values: [none, request, configured]
{
"restored": [
{
"category": "shares",
"added": 0,
"changed": 0,
"removed": 0
}
],
"notRestored": [
{
"kind": "stack_env",
"name": "string",
"reason": "no_secrets",
"message": "string"
}
],
"secrets": "none",
"preImportArchive": "string",
"preImportSecrets": "none"
}