From d86d08b98633483350a95406a72d9a72f5df63f9 Mon Sep 17 00:00:00 2001 From: Ali Mosallaei Date: Thu, 18 Jul 2024 16:17:20 -0700 Subject: [PATCH] Prompt user if they want to execute a config hook --- src/fppm/cli/commands/config.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/fppm/cli/commands/config.py b/src/fppm/cli/commands/config.py index b4c2a1b..b8e00ee 100644 --- a/src/fppm/cli/commands/config.py +++ b/src/fppm/cli/commands/config.py @@ -341,6 +341,29 @@ def apply_config_fillables(args, context): else: metaVarContent[key] = fillableContent[key] + + if "__pre_hook" in metaVarContent.keys(): + prePrompt = FppmUtils.prompt( + f"[INFO]: Pre-hook script [{metaVarContent['__pre_hook']}] provided by package developer. Do you want to execute it? Make sure you trust the package developer [y/n]: ", ["y", "n"] + ) + + if prePrompt.lower() == "n": + print(f"[INFO]: Skipping pre-hook script [{metaVarContent['__pre_hook']}].") + del metaVarContent['__pre_hook'] + else: + FppmUtils.print_warning(f"[INFO]: Pre-hook script [{metaVarContent['__pre_hook']}] will be executed.") + + if "__post_hook" in metaVarContent.keys(): + postPrompt = FppmUtils.prompt( + f"[INFO]: Post-hook script [{metaVarContent['__post_hook']}] provided by package developer. Do you want to execute it? Make sure you trust the package developer [y/n]: ", ["y", "n"] + ) + + if postPrompt.lower() == "n": + print(f"[INFO]: Skipping post-hook script [{metaVarContent['__post_hook']}].") + del metaVarContent['__post_hook'] + else: + FppmUtils.print_warning(f"[INFO]: Post-hook script [{metaVarContent['__post_hook']}] will be executed.") + if "__pre_hook" in metaVarContent.keys(): totalPath = str(Path(f"_fprime_packages/{packageFolder}/{metaVarContent['__pre_hook']}").absolute())