Tests fail if host tools are not in a standard directory

Summary

If git is not in ["git", "/bin/git", "/usr/bin/git"], but in another directory (like /opt/git/git), the tests will fail with FileNotFoundError: [Errno 2] No such file or directory: 'git': 'git'. The "HAVE_GIT" variable however finds git normally so tests are not skipped.

Steps to reproduce

install git in a non-standard path (/opt/git) tox -e py3X

What is the current bug behavior?

Tests fail with obscure error about missing git

What is the expected correct behavior?

Tests should succeed. We have git in path

Possible fixes

rename variables from "HAVE_{TOOL}" to "{TOOL}", containing the full path to the tool and use this instead.

Other relevant information

  • BuildStream version affected: /milestone %BuildStream_v1.x