The state will not fail gracefully, instead you will get
an error like this one:
ID: users_rhertzog_user_gitconfig_0
Function: git.config_set
Name: alias.br
Result: False
Comment: State 'git.config_set' was not found in SLS 'users'
Reason: 'git' __virtual__ returned False
Changes:
And since pillar data can't be (easily) tuned according to minion's
status, we really need this check here.
My tests with Salt 2017.7.3 have shown that cmd.has_exec() is reliable
for this, contrary the what the comment was implying.