-
Notifications
You must be signed in to change notification settings - Fork 176
Description
ISIS version(s) affected: >= 8.3.0
Description
The built-in help for downloadIsisData says
ISIS3/isis/scripts/downloadIsisData
Line 229 in 640f9ca
| After positional args, accepts arbitrary rclone flags. Run "rclone help flags" to get a full list of rclone flags. |
but the script does not appear to actually be passing these optional extra arguments to rclone. The
create_rclone_arguments() function accepts a list of rclone keyword arguments, but then doesn't do anything with them, so the resulting rclone command will not include any arguments that a user may have passed on the command line.
How to reproduce
The easiest way to reproduce this is to pass a known invalid argument on the command line:
python downloadIsisData mro $ISISDATA --this-is-a-fake-rclone-option
The script will then proceed to execute a download of the MRO kernels to $ISISDATA. What should happen is that rclone will exit with an error and print NOTICE: Fatal error: unknown flag: --this-is-a-fake-rclone-option because it has been given an invalid argument. The reason the script doesn't error out is because the invalid option that the user passed is never appended to the rclone arguments.
Possible Solution
Insert extra_args.extend(rclone_kwargs) after Line 171 inside the create_rclone_arguments() function.
Additional context
Bug discovered while helping an outside user debug #5887