This uses a function in the runtests_helpers custom module to perform
all the logic, and only returns what failed the test. This saves us from
having to return the entire contents of sys.doc (as well as log all of
the function calls), and also removes the need to run sys.doc in batches
to get around the "max message size" issue.
https://github.com/saltstack/salt/pull/39504 fixed what was a legitimate
bug, but in turn this causes this warning to be logged hundreds of times
in the minion log on unprivileged containers.
This commit changes the log level for this message to debug.
Since we have recently changed the test suite to use new-style
git_pillar, GitPython or Pygit2 is a hard dep for the test suite.
Additionally, when starting up the daemons, if no IPv4 addresses can be
detected (which can happen on docker containers which tend to have
minimal installs) then the suite will time out trying to detect whether
or not the minion/sub-minion has connected, which while it does not
prove fatal for the test suite, it does make the suite take several
minutes to start up and begin running tests. This is because the test
suite invokes the manage.joined runner, which in turn invokes
salt.utils.network.ip_addrs() to get the system's IP addresses to match
against those which are connected. If it can't get the IP addresses,
then the manage.joined runner returns an empty list, and the test suite
believes that no minions have connected, and the function that
periodically runs manage.joined will eventually time out.
This commit adds messages to the console when no suitable gitfs provider
is installed, and when salt.utils.network.ip_addrs() returns an empty
list, to hopefully prompt the user to install the missing requisites.
If there is a failure in `Minion._post_master_init` (for example,
the `compile_pillar` fails) and the `master_type` is `failover`,
then `MinionManager._connect_minion` will catch the exception and then
retry. However, the retry will cause the minion to exit because
`opts['master']` is currently a string and not a list. Fix this
case to enable the retry to not cause the minion to exit.
Signed-off-by: Sergey Kizunov <sergey.kizunov@ni.com>
Conflicts:
salt/minion.py
All refs have been checked and confirmed to be passing args/kwargs in
the correct way. This commit removes the deprecation notice and replaces
it with a log message when string kwargs are passed.