2025-03-24 21:47:55 +00:00
|
|
|
namespace _mimir.transfer.borg
|
|
|
|
{
|
|
|
|
|
|
|
|
/**
|
2025-03-26 06:35:59 +00:00
|
|
|
* @todo parametrize pruning
|
2025-03-24 21:47:55 +00:00
|
|
|
*/
|
|
|
|
export function execute(
|
|
|
|
parameters : _mimir.conf.type_target_parameters_borg,
|
|
|
|
name : string,
|
|
|
|
stamp : string,
|
|
|
|
directory : string
|
|
|
|
) : Array<string>
|
|
|
|
{
|
|
|
|
const result : Array<string> = [];
|
|
|
|
result.push(
|
|
|
|
_mimir.helpers.borg.create(
|
|
|
|
parameters.repository,
|
|
|
|
lib_plankton.string.coin(
|
|
|
|
"{{stamp}}-{{name}}",
|
|
|
|
{
|
|
|
|
"name": name,
|
|
|
|
"stamp": stamp,
|
|
|
|
}
|
|
|
|
),
|
|
|
|
[directory],
|
|
|
|
{
|
|
|
|
"compression": parameters.compression,
|
|
|
|
}
|
|
|
|
)
|
|
|
|
);
|
|
|
|
result.push(
|
|
|
|
_mimir.helpers.borg.prune(
|
|
|
|
parameters.repository,
|
|
|
|
"2w",
|
|
|
|
{
|
|
|
|
"keep_weekly": 7,
|
|
|
|
"keep_yearly": 2,
|
|
|
|
}
|
|
|
|
)
|
|
|
|
);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|