There are three ways of specifying an output directory through the ArgumentParser used by our CmdLineTasks:
-
--outputcommand-line argument: specify an output directory directly -
--reruncommand-line argument: specify an output directory as<input>/rerun/<rerun> -
PIPE_OUTPUT_ROOTenvironment variable: specify an output directory directly
There is general agreement that it is not good if none of these is specified (because you get clutter in the top-level data repo, and data in shared repos may be clobbered unwittingly). On DM-4236, we will introduce a change that makes it mandatory to specify an output directory (using any of the above means). The only command that is excluded from this requirement currently is ingestImages.py (since that should ingest into the top-level data repo).
I am concerned that this will break some CI or validation packages that I am not aware of or am not set up to check. I have already run Jenkins against lsst_sims lsst_distrib ci_hsc, and it passes. Please let me know what else needs to be tested (and how), or test the package against tickets/DM-4236 (with changes in pipe_base, pipe_tasks and ci_hsc). I hope to merge DM-4236 on Monday (March 14) afternoon in advance of the sprint closure.