Skip to content
Snippets Groups Projects

Try remove cmd

Merged Ashwin Kumar Karnad requested to merge try-remove-cmd into main
Files
2
+ 15
5
@@ -980,7 +980,7 @@ def install_environment(
)
def remove_environment(mpsd_release, root_dir, package_sets="NONE", force=False):
def remove_environment(mpsd_release, root_dir, package_sets="NONE", force_remove=False):
"""Remove release from installation."""
msg = (
f"Removing release {mpsd_release}"
@@ -994,16 +994,26 @@ def remove_environment(mpsd_release, root_dir, package_sets="NONE", force=False)
sys.exit(1)
if "ALL" in package_sets:
# we need to remove the entire release folder
logging.info(
logging.warning(
f"Removing release {mpsd_release} from {root_dir}"
"do you want to continue? [y/n]"
)
if force or input().lower() == "y":
if force_remove or input().lower() == "y":
folders_to_remove = os.listdir(root_dir / mpsd_release)
# skip logs folder
folders_to_remove.remove("logs")
if "logs" in folders_to_remove:
folders_to_remove.remove("logs")
for folder in folders_to_remove:
shutil.rmtree(root_dir / mpsd_release / folder)
sys.exit(0)
for package_set in package_sets:
# we load the spack environment and remove the package_set
spack_env = ""
commands_to_execute = [
f"source {spack_env}",
f"spack env remove -y {package_set}",
]
run(" && ".join(commands_to_execute), shell=True, check=True)
def start_new_environment(release, from_release, target_dir):
@@ -1123,7 +1133,7 @@ def main():
("available", "What is available for installation?"),
("install", "Install a software environment"),
# ("reinstall", "Reinstall a package_set"),
("remove", "Remove a package set"),
# ("remove", "Remove a package set"),
# ("start-new", "Start a new MPSD software release version"),
("status", "Show status: what is installed?"),
("prepare", "Prepare installation of MPSD-release (dev only)"),
Loading