Add MariaDB dumps metadata.

This commit is contained in:
Dan Helfman
2025-09-03 18:54:49 -07:00
parent fca647b3ae
commit 049132377c
+25 -4
View File
@@ -257,11 +257,12 @@ def dump_data_sources(
'''
dry_run_label = ' (dry run; not actually dumping anything)' if dry_run else ''
processes = []
dumps_metadata = []
logger.info(f'Dumping MariaDB databases{dry_run_label}')
dump_path = make_dump_path(borgmatic_runtime_directory)
for database in databases:
dump_path = make_dump_path(borgmatic_runtime_directory)
username = borgmatic.hooks.credential.parse.resolve_credential(
database.get('username'),
config,
@@ -293,10 +294,19 @@ def dump_data_sources(
raise ValueError('Cannot find any MariaDB databases to dump.')
if database['name'] == 'all' and database.get('format'):
for dump_name in dump_database_names:
for database_name in dump_database_names:
dumps_metadata.append(
borgmatic.actions.restore.Dump(
'mariadb_databases',
database_name,
database.get('hostname'),
database.get('port'),
)
)
renamed_database = copy.copy(database)
renamed_database['name'] = dump_name
renamed_database['name'] = database_name
processes.append(
execute_dump_command(
renamed_database,
@@ -304,13 +314,21 @@ def dump_data_sources(
username,
password,
dump_path,
(dump_name,),
(database_name,),
environment,
dry_run,
dry_run_label,
),
)
else:
dumps_metadata.append(
borgmatic.actions.restore.Dump(
'mariadb_databases',
database['name'],
database.get('hostname'),
database.get('port'),
)
)
processes.append(
execute_dump_command(
database,
@@ -326,6 +344,9 @@ def dump_data_sources(
)
if not dry_run:
dump.write_data_source_dumps_metadata(
borgmatic_runtime_directory, 'mariadb_databases', dumps_metadata
)
patterns.append(
borgmatic.borg.pattern.Pattern(
os.path.join(borgmatic_runtime_directory, 'mariadb_databases'),