Fix Version/s: None
This may not be as important once restarts in middle of submission work. But currently if someone forgets to put HTCondor in their environment, it does all the prep work (which can take hours) and then dies. And currently most of that wasted time will have to be repeated for the new run.
Add a function to the base WMS service class for checking have env correct for that class (currently can be does it just have the right things in the environment, but it could be expanded if there are version restrictions). Because we don't want all plugins to just stop working, have the default behavior in the base class just print a warning message to the log.
This function should be called prior to prepare and submit. It would be nice to not print the warning message twice, but not worth extra time if have to jump through hoops or rewrite a bunch of code.
Then add this check to the htcondor plugin (If quick add to Pegasus plugin, but the plugin is probably enough out of date to not run the current default yaml).
If the right wms environment isn't in place, the submission process should stop before doing anything (no QuantumGraph generation, ...) and halt with appropriate message.
The changes probably will not survive the changes for starting the submission process in the middle, but should be good enough in the short term and get folks starting to think about what checks should be done early.
Based on comments in
DM-32830, marking this as backport-approved.
I think that Sergey Padolski could add to this function in the PanDA plugin the check for valid PanDA/IDF credentials. Or could add a separate credentials function check at the same time but make the credentials function check independent of the WMS plugin (e.g., like the clustering algorithm)