I am not sure what the return value of subprocess.call() means.
Can I safely assume a zero value will always mean that the command executed suc
You are at the mercy of the commands that you call. Consider this:
test.py
#!/usr/bin/env python
success=False
if not success:
exit()
Then running your code (with cmd='test.py') will result in SUCCESS!!
merely because test.py does not conform to the convention of returning a non-zero value when it is not successful.