> I seem to recall evan had a way to do this in tests/run.py that didn't
> require calling juju status (which might take a while to timeout if
> sshuttle isn't running)?
Yes, you are correct, it takes a while for it to timeout if sshuttle isn't running (I added a comment in the code acknowledging that).
I originally created this branch because I was tired of guessing what was wrong when juju-deployer error message was only "returned with non-zero status". I've seen the code in tests/run.py, I think the "way to do this" you mention is needs_bootstrap in tests/run.py, which is a bit more sophisticated than the simple check I'm performing right now. It seemed a bit too much to accomplish what I wanted here but maybe we should just go ahead and make the same validations in both places, as we need similar setups to be able to deploy and test.
> I seem to recall evan had a way to do this in tests/run.py that didn't
> require calling juju status (which might take a while to timeout if
> sshuttle isn't running)?
Yes, you are correct, it takes a while for it to timeout if sshuttle isn't running (I added a comment in the code acknowledging that).
I originally created this branch because I was tired of guessing what was wrong when juju-deployer error message was only "returned with non-zero status". I've seen the code in tests/run.py, I think the "way to do this" you mention is needs_bootstrap in tests/run.py, which is a bit more sophisticated than the simple check I'm performing right now. It seemed a bit too much to accomplish what I wanted here but maybe we should just go ahead and make the same validations in both places, as we need similar setups to be able to deploy and test.