update
This commit is contained in:
parent
0c903e3732
commit
9034257c59
@ -1,20 +0,0 @@
|
|||||||
import argparse
|
|
||||||
import os
|
|
||||||
import subprocess
|
|
||||||
import sys
|
|
||||||
|
|
||||||
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "../")))
|
|
||||||
from services import config as Config
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
config = Config.Config(config_path="utility/config/settings.yaml")
|
|
||||||
instances = config.get_instances()
|
|
||||||
|
|
||||||
for instance in instances:
|
|
||||||
cmd = "python utility/main.py"
|
|
||||||
subprocess.run(f"{cmd} module uninstall {instance['name']}", shell=True)
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
main()
|
|
35
scripts/update_modules.py
Normal file
35
scripts/update_modules.py
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
import argparse
|
||||||
|
import os
|
||||||
|
import subprocess
|
||||||
|
import sys
|
||||||
|
|
||||||
|
# Ensure the config module is available
|
||||||
|
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "../")))
|
||||||
|
from services import config as Config
|
||||||
|
|
||||||
|
# Parse arguments properly
|
||||||
|
parser = argparse.ArgumentParser(description="Uninstall module for each instance")
|
||||||
|
parser.add_argument(
|
||||||
|
"action", help="Action to perform", choices=["uninstall", "install", "upgrade"]
|
||||||
|
)
|
||||||
|
parser.add_argument("config_path", help="Path to the config file")
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
# Load the configuration
|
||||||
|
print(f"Config path: {args.config_path}")
|
||||||
|
config = Config.Config(config_path=args.config_path)
|
||||||
|
|
||||||
|
instances = config.get_instances()
|
||||||
|
|
||||||
|
# Ensure instances is a valid list
|
||||||
|
if not isinstance(instances, list):
|
||||||
|
print("Error: instances is not a valid list.")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
# Loop over each instance and run the uninstall command
|
||||||
|
for instance in instances:
|
||||||
|
if "name" in instance:
|
||||||
|
cmd = ["python", "utility/main.py", "module", args.action, instance["name"]]
|
||||||
|
subprocess.run(cmd)
|
||||||
|
else:
|
||||||
|
print(f"Warning: Instance missing 'name' field. Skipping.")
|
5
utility.mk
Normal file
5
utility.mk
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
UTILITY_DIR =${PWD}/utility
|
||||||
|
SCRIPTS_DIR = ${UTILITY_DIR}/scripts
|
||||||
|
UTILITY_CONFIG = ${PWD}/utility/config/settings.yaml
|
||||||
|
update_modules:
|
||||||
|
${PYTHON} ${SCRIPTS_DIR}/update_modules.py upgrade ${UTILITY_CONFIG}
|
Loading…
Reference in New Issue
Block a user