From 4f41dca9adc2988f45259c0ba9f9bd041cab408a Mon Sep 17 00:00:00 2001 From: Nicolae Mihalache Date: Wed, 12 Feb 2025 11:07:49 +0100 Subject: [PATCH] Added operations to enable/disable the parameter archive automatic backfilling --- src/yamcs/cli/parameter_archive.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/yamcs/cli/parameter_archive.py b/src/yamcs/cli/parameter_archive.py index 0aeb96f..73595f5 100644 --- a/src/yamcs/cli/parameter_archive.py +++ b/src/yamcs/cli/parameter_archive.py @@ -35,6 +35,17 @@ def __init__(self, parent): subparsers, "purge", "Remove all data from the Parameter Archive" ) subparser.set_defaults(func=self.purge) + subparser = self.create_subparser( + subparsers, "backfilling", "Enable/disable the parameter archive automatic backfilling." + ) + subparser.add_argument( + "action", + metavar="ACTION", + type=str, + choices=["enable", "disable"], + help="either enable or disable", + ) + subparser.set_defaults(func=self.backfilling) def rebuild(self, args): opts = utils.CommandOptions(args) @@ -57,3 +68,21 @@ def purge(self, args): archive.purge_parameter_archive() sys.stderr.write("done\n") sys.stderr.flush() + + def backfilling(self, args): + opts = utils.CommandOptions(args) + client = YamcsClient(**opts.client_kwargs) + archive = client.get_archive(opts.require_instance()) + + if args.action.lower() == "enable": + sys.stderr.write("Enabling the automatic backfilling... ") + sys.stderr.flush() + archive.enable_parameter_archive_backfilling() + sys.stderr.write("done\n") + sys.stderr.flush() + elif args.action.lower() == "disable": + sys.stderr.write("Disabling the automatic backfilling... ") + sys.stderr.flush() + archive.disable_parameter_archive_backfilling() + sys.stderr.write("done\n") + sys.stderr.flush() \ No newline at end of file