mirror of
https://github.com/home-assistant/core.git
synced 2025-04-24 09:17:53 +00:00
Add flag to backup store to track backup wizard completion (#138368)
* Add flag to backup store to track backup wizard completion * Add comment * Update hassio tests * Update tests --------- Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
This commit is contained in:
parent
377da5f954
commit
351e594fe4
@ -39,6 +39,7 @@ class StoredBackupConfig(TypedDict):
|
||||
"""Represent the stored backup config."""
|
||||
|
||||
agents: dict[str, StoredAgentConfig]
|
||||
automatic_backups_configured: bool
|
||||
create_backup: StoredCreateBackupConfig
|
||||
last_attempted_automatic_backup: str | None
|
||||
last_completed_automatic_backup: str | None
|
||||
@ -51,6 +52,7 @@ class BackupConfigData:
|
||||
"""Represent loaded backup config data."""
|
||||
|
||||
agents: dict[str, AgentConfig]
|
||||
automatic_backups_configured: bool # only used by frontend
|
||||
create_backup: CreateBackupConfig
|
||||
last_attempted_automatic_backup: datetime | None = None
|
||||
last_completed_automatic_backup: datetime | None = None
|
||||
@ -88,6 +90,7 @@ class BackupConfigData:
|
||||
agent_id: AgentConfig(protected=agent_data["protected"])
|
||||
for agent_id, agent_data in data["agents"].items()
|
||||
},
|
||||
automatic_backups_configured=data["automatic_backups_configured"],
|
||||
create_backup=CreateBackupConfig(
|
||||
agent_ids=data["create_backup"]["agent_ids"],
|
||||
include_addons=data["create_backup"]["include_addons"],
|
||||
@ -127,6 +130,7 @@ class BackupConfigData:
|
||||
agents={
|
||||
agent_id: agent.to_dict() for agent_id, agent in self.agents.items()
|
||||
},
|
||||
automatic_backups_configured=self.automatic_backups_configured,
|
||||
create_backup=self.create_backup.to_dict(),
|
||||
last_attempted_automatic_backup=last_attempted,
|
||||
last_completed_automatic_backup=last_completed,
|
||||
@ -142,6 +146,7 @@ class BackupConfig:
|
||||
"""Initialize backup config."""
|
||||
self.data = BackupConfigData(
|
||||
agents={},
|
||||
automatic_backups_configured=False,
|
||||
create_backup=CreateBackupConfig(),
|
||||
retention=RetentionConfig(),
|
||||
schedule=BackupSchedule(),
|
||||
@ -159,6 +164,7 @@ class BackupConfig:
|
||||
self,
|
||||
*,
|
||||
agents: dict[str, AgentParametersDict] | UndefinedType = UNDEFINED,
|
||||
automatic_backups_configured: bool | UndefinedType = UNDEFINED,
|
||||
create_backup: CreateBackupParametersDict | UndefinedType = UNDEFINED,
|
||||
retention: RetentionParametersDict | UndefinedType = UNDEFINED,
|
||||
schedule: ScheduleParametersDict | UndefinedType = UNDEFINED,
|
||||
@ -172,6 +178,8 @@ class BackupConfig:
|
||||
self.data.agents[agent_id] = replace(
|
||||
self.data.agents[agent_id], **agent_config
|
||||
)
|
||||
if automatic_backups_configured is not UNDEFINED:
|
||||
self.data.automatic_backups_configured = automatic_backups_configured
|
||||
if create_backup is not UNDEFINED:
|
||||
self.data.create_backup = replace(self.data.create_backup, **create_backup)
|
||||
if retention is not UNDEFINED:
|
||||
|
@ -16,7 +16,7 @@ if TYPE_CHECKING:
|
||||
STORE_DELAY_SAVE = 30
|
||||
STORAGE_KEY = DOMAIN
|
||||
STORAGE_VERSION = 1
|
||||
STORAGE_VERSION_MINOR = 4
|
||||
STORAGE_VERSION_MINOR = 5
|
||||
|
||||
|
||||
class StoredBackupData(TypedDict):
|
||||
@ -67,6 +67,11 @@ class _BackupStore(Store[StoredBackupData]):
|
||||
data["config"]["retention"]["copies"] = None
|
||||
if data["config"]["retention"]["days"] == 0:
|
||||
data["config"]["retention"]["days"] = None
|
||||
if old_minor_version < 5:
|
||||
# Version 1.5 adds automatic_backups_configured
|
||||
data["config"]["automatic_backups_configured"] = (
|
||||
data["config"]["create_backup"]["password"] is not None
|
||||
)
|
||||
|
||||
# Note: We allow reading data with major version 2.
|
||||
# Reject if major version is higher than 2.
|
||||
|
@ -352,6 +352,7 @@ async def handle_config_info(
|
||||
{
|
||||
vol.Required("type"): "backup/config/update",
|
||||
vol.Optional("agents"): vol.Schema({str: {"protected": bool}}),
|
||||
vol.Optional("automatic_backups_configured"): bool,
|
||||
vol.Optional("create_backup"): vol.Schema(
|
||||
{
|
||||
vol.Optional("agent_ids"): vol.All([str], vol.Unique()),
|
||||
|
@ -13,6 +13,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -39,7 +40,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -57,6 +58,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -84,7 +86,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -102,6 +104,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -128,7 +131,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -146,6 +149,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -173,7 +177,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -194,6 +198,7 @@
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -220,7 +225,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -241,6 +246,7 @@
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -268,7 +274,201 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
# name: test_store_migration[store_data3]
|
||||
dict({
|
||||
'data': dict({
|
||||
'backups': list([
|
||||
dict({
|
||||
'backup_id': 'abc123',
|
||||
'failed_agent_ids': list([
|
||||
'test.remote',
|
||||
]),
|
||||
}),
|
||||
]),
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
'test.remote': dict({
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'state': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
# name: test_store_migration[store_data3].1
|
||||
dict({
|
||||
'data': dict({
|
||||
'backups': list([
|
||||
dict({
|
||||
'backup_id': 'abc123',
|
||||
'failed_agent_ids': list([
|
||||
'test.remote',
|
||||
]),
|
||||
}),
|
||||
]),
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
'test.remote': dict({
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'state': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
# name: test_store_migration[store_data4]
|
||||
dict({
|
||||
'data': dict({
|
||||
'backups': list([
|
||||
dict({
|
||||
'backup_id': 'abc123',
|
||||
'failed_agent_ids': list([
|
||||
'test.remote',
|
||||
]),
|
||||
}),
|
||||
]),
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
'test.remote': dict({
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': 'hunter2',
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'state': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
# name: test_store_migration[store_data4].1
|
||||
dict({
|
||||
'data': dict({
|
||||
'backups': list([
|
||||
dict({
|
||||
'backup_id': 'abc123',
|
||||
'failed_agent_ids': list([
|
||||
'test.remote',
|
||||
]),
|
||||
}),
|
||||
]),
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
'test.remote': dict({
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': 'hunter2',
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'state': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
|
@ -258,6 +258,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -295,6 +296,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -344,6 +346,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -382,6 +385,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -420,6 +424,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -459,6 +464,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -497,6 +503,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -543,6 +550,7 @@
|
||||
'protected': False,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -583,6 +591,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'hassio.local',
|
||||
@ -623,6 +632,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'hassio.local',
|
||||
@ -662,6 +672,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -699,6 +710,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -744,6 +756,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -782,6 +795,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -820,6 +834,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -859,6 +874,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -897,6 +913,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -943,6 +960,7 @@
|
||||
'protected': False,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -983,6 +1001,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'backup.local',
|
||||
@ -1022,6 +1041,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'backup.local',
|
||||
@ -1061,6 +1081,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1098,6 +1119,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1137,6 +1159,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1164,7 +1187,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1175,6 +1198,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1212,6 +1236,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1251,6 +1276,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1278,7 +1304,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1289,6 +1315,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1326,6 +1353,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1365,6 +1393,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1392,7 +1421,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1403,6 +1432,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1446,6 +1476,7 @@
|
||||
'protected': False,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1490,6 +1521,7 @@
|
||||
'protected': False,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1516,7 +1548,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1527,6 +1559,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1570,6 +1603,7 @@
|
||||
'protected': False,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1613,6 +1647,7 @@
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1657,6 +1692,7 @@
|
||||
'protected': True,
|
||||
}),
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1683,7 +1719,237 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
# name: test_config_update[commands14]
|
||||
dict({
|
||||
'id': 1,
|
||||
'result': dict({
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'next_automatic_backup': None,
|
||||
'next_automatic_backup_additional': False,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'success': True,
|
||||
'type': 'result',
|
||||
})
|
||||
# ---
|
||||
# name: test_config_update[commands14].1
|
||||
dict({
|
||||
'id': 3,
|
||||
'result': dict({
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'next_automatic_backup': None,
|
||||
'next_automatic_backup_additional': False,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'success': True,
|
||||
'type': 'result',
|
||||
})
|
||||
# ---
|
||||
# name: test_config_update[commands14].2
|
||||
dict({
|
||||
'data': dict({
|
||||
'backups': list([
|
||||
]),
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'state': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
# name: test_config_update[commands15]
|
||||
dict({
|
||||
'id': 1,
|
||||
'result': dict({
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'next_automatic_backup': None,
|
||||
'next_automatic_backup_additional': False,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'success': True,
|
||||
'type': 'result',
|
||||
})
|
||||
# ---
|
||||
# name: test_config_update[commands15].1
|
||||
dict({
|
||||
'id': 3,
|
||||
'result': dict({
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'next_automatic_backup': None,
|
||||
'next_automatic_backup_additional': False,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'success': True,
|
||||
'type': 'result',
|
||||
})
|
||||
# ---
|
||||
# name: test_config_update[commands15].2
|
||||
dict({
|
||||
'data': dict({
|
||||
'backups': list([
|
||||
]),
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
'include_addons': None,
|
||||
'include_all_addons': False,
|
||||
'include_database': True,
|
||||
'include_folders': None,
|
||||
'name': None,
|
||||
'password': None,
|
||||
}),
|
||||
'last_attempted_automatic_backup': None,
|
||||
'last_completed_automatic_backup': None,
|
||||
'retention': dict({
|
||||
'copies': None,
|
||||
'days': None,
|
||||
}),
|
||||
'schedule': dict({
|
||||
'days': list([
|
||||
]),
|
||||
'recurrence': 'never',
|
||||
'state': 'never',
|
||||
'time': None,
|
||||
}),
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1694,6 +1960,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1731,6 +1998,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1770,6 +2038,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1797,7 +2066,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1808,6 +2077,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1845,6 +2115,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1885,6 +2156,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -1913,7 +2185,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -1924,6 +2196,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -1961,6 +2234,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2000,6 +2274,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2027,7 +2302,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2038,6 +2313,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2075,6 +2351,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2116,6 +2393,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2145,7 +2423,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2156,6 +2434,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2193,6 +2472,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2236,6 +2516,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2267,7 +2548,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2278,6 +2559,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2315,6 +2597,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2354,6 +2637,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2381,7 +2665,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2392,6 +2676,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2429,6 +2714,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2468,6 +2754,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2495,7 +2782,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2506,6 +2793,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2543,6 +2831,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2582,6 +2871,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2609,7 +2899,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2620,6 +2910,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2657,6 +2948,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2696,6 +2988,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent',
|
||||
@ -2723,7 +3016,7 @@
|
||||
}),
|
||||
}),
|
||||
'key': 'backup',
|
||||
'minor_version': 4,
|
||||
'minor_version': 5,
|
||||
'version': 1,
|
||||
})
|
||||
# ---
|
||||
@ -2734,6 +3027,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2771,6 +3065,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2808,6 +3103,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2845,6 +3141,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2882,6 +3179,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2919,6 +3217,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2956,6 +3255,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -2993,6 +3293,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3030,6 +3331,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3067,6 +3369,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3104,6 +3407,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3141,6 +3445,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3178,6 +3483,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3215,6 +3521,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3252,6 +3559,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3289,6 +3597,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3326,6 +3635,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3363,6 +3673,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3400,6 +3711,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3437,6 +3749,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3474,6 +3787,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3511,6 +3825,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3548,6 +3863,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -3585,6 +3901,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
|
@ -99,6 +99,7 @@ def mock_delay_save() -> Generator[None]:
|
||||
],
|
||||
"config": {
|
||||
"agents": {"test.remote": {"protected": True}},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": [],
|
||||
"include_addons": None,
|
||||
@ -125,6 +126,80 @@ def mock_delay_save() -> Generator[None]:
|
||||
"key": DOMAIN,
|
||||
"version": 2,
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"backups": [
|
||||
{
|
||||
"backup_id": "abc123",
|
||||
"failed_agent_ids": ["test.remote"],
|
||||
}
|
||||
],
|
||||
"config": {
|
||||
"agents": {"test.remote": {"protected": True}},
|
||||
"create_backup": {
|
||||
"agent_ids": [],
|
||||
"include_addons": None,
|
||||
"include_all_addons": False,
|
||||
"include_database": True,
|
||||
"include_folders": None,
|
||||
"name": None,
|
||||
"password": None,
|
||||
},
|
||||
"last_attempted_automatic_backup": None,
|
||||
"last_completed_automatic_backup": None,
|
||||
"retention": {
|
||||
"copies": None,
|
||||
"days": None,
|
||||
},
|
||||
"schedule": {
|
||||
"days": [],
|
||||
"recurrence": "never",
|
||||
"state": "never",
|
||||
"time": None,
|
||||
},
|
||||
},
|
||||
},
|
||||
"key": DOMAIN,
|
||||
"minor_version": 4,
|
||||
"version": 1,
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"backups": [
|
||||
{
|
||||
"backup_id": "abc123",
|
||||
"failed_agent_ids": ["test.remote"],
|
||||
}
|
||||
],
|
||||
"config": {
|
||||
"agents": {"test.remote": {"protected": True}},
|
||||
"create_backup": {
|
||||
"agent_ids": [],
|
||||
"include_addons": None,
|
||||
"include_all_addons": False,
|
||||
"include_database": True,
|
||||
"include_folders": None,
|
||||
"name": None,
|
||||
"password": "hunter2",
|
||||
},
|
||||
"last_attempted_automatic_backup": None,
|
||||
"last_completed_automatic_backup": None,
|
||||
"retention": {
|
||||
"copies": None,
|
||||
"days": None,
|
||||
},
|
||||
"schedule": {
|
||||
"days": [],
|
||||
"recurrence": "never",
|
||||
"state": "never",
|
||||
"time": None,
|
||||
},
|
||||
},
|
||||
},
|
||||
"key": DOMAIN,
|
||||
"minor_version": 4,
|
||||
"version": 1,
|
||||
},
|
||||
],
|
||||
)
|
||||
async def test_store_migration(
|
||||
|
@ -55,6 +55,7 @@ DEFAULT_STORAGE_DATA: dict[str, Any] = {
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": [],
|
||||
"include_addons": None,
|
||||
@ -907,6 +908,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": ["test-addon"],
|
||||
@ -938,6 +940,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": True,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": None,
|
||||
@ -969,6 +972,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1000,6 +1004,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1031,6 +1036,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1062,6 +1068,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1096,6 +1103,7 @@ async def test_agents_info(
|
||||
"test-agent1": {"protected": True},
|
||||
"test-agent2": {"protected": False},
|
||||
},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1127,6 +1135,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": True,
|
||||
"create_backup": {
|
||||
"agent_ids": ["hassio.local", "hassio.share", "test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1158,6 +1167,7 @@ async def test_agents_info(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": True,
|
||||
"create_backup": {
|
||||
"agent_ids": ["backup.local", "test-agent"],
|
||||
"include_addons": None,
|
||||
@ -1343,6 +1353,18 @@ async def test_config_load_config_info(
|
||||
},
|
||||
},
|
||||
],
|
||||
[
|
||||
{
|
||||
"type": "backup/config/update",
|
||||
"automatic_backups_configured": False,
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"type": "backup/config/update",
|
||||
"automatic_backups_configured": True,
|
||||
}
|
||||
],
|
||||
],
|
||||
)
|
||||
@patch("homeassistant.components.backup.config.random.randint", Mock(return_value=600))
|
||||
@ -1774,6 +1796,7 @@ async def test_config_schedule_logic(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test.test-agent"],
|
||||
"include_addons": [],
|
||||
@ -2436,6 +2459,7 @@ async def test_config_retention_copies_logic(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": ["test-addon"],
|
||||
@ -2714,6 +2738,7 @@ async def test_config_retention_copies_logic_manual_backup(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": ["test-addon"],
|
||||
@ -3161,6 +3186,7 @@ async def test_config_retention_days_logic(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": False,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent"],
|
||||
"include_addons": ["test-addon"],
|
||||
|
@ -6,6 +6,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': False,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
]),
|
||||
@ -43,6 +44,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent1',
|
||||
@ -89,6 +91,7 @@
|
||||
'config': dict({
|
||||
'agents': dict({
|
||||
}),
|
||||
'automatic_backups_configured': True,
|
||||
'create_backup': dict({
|
||||
'agent_ids': list([
|
||||
'test-agent1',
|
||||
|
@ -2480,6 +2480,7 @@ async def test_restore_progress_after_restart_unknown_job(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": True,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent1", "hassio.local", "test-agent2"],
|
||||
"include_addons": ["addon1", "addon2"],
|
||||
@ -2511,6 +2512,7 @@ async def test_restore_progress_after_restart_unknown_job(
|
||||
"backups": [],
|
||||
"config": {
|
||||
"agents": {},
|
||||
"automatic_backups_configured": True,
|
||||
"create_backup": {
|
||||
"agent_ids": ["test-agent1", "backup.local", "test-agent2"],
|
||||
"include_addons": ["addon1", "addon2"],
|
||||
|
Loading…
x
Reference in New Issue
Block a user