[enh] Pause and start a timer

This commit is contained in:
ljf 2022-10-24 16:14:27 +02:00
parent 1cdbeef17f
commit 5d9b91af96
No known key found for this signature in database
3 changed files with 36 additions and 15 deletions

View file

@ -1290,8 +1290,8 @@ backup:
help: Show more details help: Show more details
action: store_true action: store_true
### backup_timer_add() ### backup_timer_create()
add: create:
action_help: Add a backup timer action_help: Add a backup timer
api: POST /backup/timer/<name> api: POST /backup/timer/<name>
arguments: arguments:
@ -1382,13 +1382,26 @@ backup:
extra: extra:
pattern: *pattern_backup_timer_name pattern: *pattern_backup_timer_name
### backup_timer_run() ### backup_timer_start()
run: start:
action_help: Run a backup timer action_help: Start a backup timer
api: POST /backup/timer/<name>/run api: POST /backup/timer/<name>/start
arguments: arguments:
name: name:
help: Backup timer to run help: Backup timer to start
extra:
pattern: *pattern_backup_timer_name
--now:
help: Trigger a backup immediately
action: store_true
### backup_timer_pause()
pause:
action_help: Pause a backup timer
api: POST /backup/timer/<name>/pause
arguments:
name:
help: Backup timer to pause
extra: extra:
pattern: *pattern_backup_timer_name pattern: *pattern_backup_timer_name

View file

@ -14,7 +14,7 @@ name.en = ""
[main.main.repositories] [main.main.repositories]
type = "tags" type = "tags"
visible = "creation" visible = "creation"
default = "no" default = []
[main.main.system] [main.main.system]
type = "tags" type = "tags"

View file

@ -2116,10 +2116,9 @@ Group=root
self._run_service_command("stop") self._run_service_command("stop")
self._run_service_command("disable") self._run_service_command("disable")
def run(self, operation_logger): def run(self):
self._load_current_values() self._load_current_values()
backup_create( backup_create(
operation_logger,
name=self.entity, name=self.entity,
description=self.description, description=self.description,
repositories=self.repositories, repositories=self.repositories,
@ -2128,7 +2127,6 @@ Group=root
) )
for repository in self.repositories: for repository in self.repositories:
backup_repository_prune( backup_repository_prune(
operation_logger,
shortname=repository, shortname=repository,
prefix=self.entity, prefix=self.entity,
keep_hourly=self.keep_hourly, keep_hourly=self.keep_hourly,
@ -2150,7 +2148,7 @@ def backup_timer_info(name):
@is_unit_operation() @is_unit_operation()
def backup_timer_add( def backup_timer_create(
operation_logger, operation_logger,
name=None, name=None,
description=None, description=None,
@ -2196,11 +2194,21 @@ def backup_timer_remove(operation_logger, name):
@is_unit_operation() @is_unit_operation()
def backup_timer_run(operation_logger, name): def backup_timer_start(operation_logger, name, now=False):
""" """
Run a backup timer Start a backup timer
""" """
BackupTimer(name).run(operation_logger) if now:
BackupTimer(name).run()
BackupTimer(name).start()
@is_unit_operation()
def backup_timer_pause(operation_logger, name):
"""
Pause a backup timer
"""
BackupTimer(name).stop()
# #