diff --git a/install-mpsd-software-environment.py b/install-mpsd-software-environment.py index 548ae6feedb8ad70691e8afa4ad0e9b3975d85a2..1a954b13e10f7fe4f64b8a309eca4542f00c7a94 100755 --- a/install-mpsd-software-environment.py +++ b/install-mpsd-software-environment.py @@ -119,10 +119,23 @@ def main(): # Add parser for "install" action parser_install = subparsers.add_parser('install', help='Install a software environment') parser_install.add_argument('--release', type=str, required=True, help='Release version to install') - parser_install.add_argument('--target-dir', type=str, help='Target directory for installation (use DEFAULT to install to default directory)') + parser_install.add_argument('--toolchains', type=str, nargs='*', help='List of toolchains to install (use ALL to install all toolchains)', default='ALL') + parser_install.add_argument('--target-dir', type=str, help='Target directory for installation (use DEFAULT or leave empty to install to default directory)', default='DEFAULT') parser_install.add_argument('--force-reinstall', action='store_true', help='Force reinstall an existing toolchain directory') parser_install.add_argument('--skip-build-cache', action='store_true', help='Skip Spack build cache during installation') + # Add parser for "remove" action + parser_remove = subparsers.add_parser('remove', help='Remove a software environment or toolchains from an environment') + parser_remove.add_argument('--release', type=str, required=True, help='Release version to remove') + parser_remove.add_argument('--toolchains', type=str, nargs='*', help='Toolchains to remove (use ALL to remove all toolchains)') + parser_install.add_argument('--target-dir', type=str, help='Target directory for removal') + + # Add parser for "start-new" action + parser_start_new = subparsers.add_parser('start-new', help='Start a new software environment version') + parser_start_new.add_argument('--from-release', dest='from_release', type=str, required=True, help='Release version to start from') + parser_start_new.add_argument('--to-release', dest='to_release', type=str, required=True, help='Release version to create') + parser_install.add_argument('--target-dir', type=str, help='Base directory for software environment installation (both source and target have the same base directory)(use DEFAULT or leave empty to install to default directory)', default='DEFAULT') + if __name__ == "__main__": main()