from functools import reduce
from itertools import chain
+try:
+ input = raw_input
+except NameError:
+ pass
virtual_profiles = [
# (name, description, callback)
if options["--remove"] not in profiles.keys():
raise AutorandrException("Cannot remove profile '%s':\nThis profile does not exist." % options["--remove"])
try:
+ remove = True
profile_folder = os.path.join(profile_path, options["--remove"])
- shutil.rmtree(profile_folder)
+ profile_dirlist = os.listdir(profile_folder)
+ profile_dirlist.remove("config")
+ profile_dirlist.remove("setup")
+ if profile_dirlist:
+ print("Profile folder '%s' contains the following additional files:\n---\n%s\n---" % (options["--remove"], "\n".join(profile_dirlist)))
+ response = input("Do you really want to remove profile '%s'? If so, type 'yes': " % options["--remove"]).strip()
+ if response != "yes":
+ remove = False
+ if remove is True:
+ shutil.rmtree(profile_folder)
+ print("Removed profile '%s'" % options["--remove"])
+ else:
+ print("Profile '%s' was not removed" % options["--remove"])
except Exception as e:
raise AutorandrException("Failed to remove profile '%s'" % (options["--remove"],), e)
- print("Removed profile '%s'" % options["--remove"])
sys.exit(0)
if "-h" in options or "--help" in options:
"PROFILE_FOLDER": scripts_path,
}
exec_scripts(scripts_path, "preswitch", script_metadata)
+ if "--debug" in options:
+ print("Going to run:")
+ apply_configuration(load_config, config, True)
apply_configuration(load_config, config, False)
exec_scripts(scripts_path, "postswitch", script_metadata)
except Exception as e: