fermitools / jobsub_lite

jobsub_lite is a wrapper for HTCondor job submission
Apache License 2.0
1 stars 7 forks source link

If cigetcert fails for any reason, raise `PermissionError` #572

Closed shreyb closed 5 months ago

shreyb commented 5 months ago

Fixes #570.

This PR also adds two new unit tests to check the new logic, as well as a minor bug fix for the existing getProxy tests themselves.

Note: According to the docs:

there are two ways to check if a subprocess.run() call fails:

  1. Pass the check=True kwarg to the function, which will make it raise a CalledProcessError if the return code of the underlying subprocess is nonzero (i.e. subprocess.run('exit 1', check=True) will raise a CalledProcessError), and
  2. If you don't want to immediately raise the error, set check=False, and then save the return value of subprocess.run() to a variable (e.g. result). Then, when you're ready, you can run result.check_returncode(), which will raise the CalledProcessError if the return code is nonzero.

We use the second method here, since we want to raise different errors based on the output of cigetcert.

goodenou commented 5 months ago

These changes look good Shreyas. Good ahead and merge the PR.

shreyb commented 5 months ago

Merging, as Lisa gave her written approval in the comment above.