This makes some further tweaks to make the test more stable under heavy
load. Firstly, the background job sleeps longer, and secondly, we make
up to 3 attempts run state.running instead of just the one, in case our
first attempt was too early. It also uses threading to make the job
sleep, since the method of adding a & to the command seemed to be
producing intermittent failures with returning clean JSON.
This can happen in the test suite while running
integration.ssh.test_state.SSHStateTest.test_state_running because the
instance of salt-ssh running in the background has completed during the
second salt-ssh run, and since the contents of the thin tarball haven't
changed between runs, the checksum used to derive the path of the thin
tarball hasn't changed, so it is unlinked before the 2nd salt-ssh run in
that test completes.
Without setting the man path, this would be checking that the installed salt
package used to bootstap has an spm man page, which is possible that it
doesn't, and also not what we want to check
We do weird things with the pip modules for salt-jenkins, we need to directly
import the module instead of a function from the module for the namespacing we
do there to work.
the running tests run second because of alphabetical order, and stopping sshd
does not kill off the running connection, so we know that sshd has to be on
arch for us to connect, so stop it with dead and start it back with running.
It is also not possible to stop the systemd-journald process without shutting
down the full machine.
yum is no longer installed by default on fedora. apparently it has been
removed from the base installs, and only dnf is available. Stop depending on
the pkg manager, and just use bash.
1. Let pyzmq to correctly cleanup stream by itself
2. Don't close IOLoop that closes managed IO objects until full async
object cleanup that produces closing streams and attempts to operate to
strutures deinitialized by the closed IOLoop.