This is a preliminary diff to show code we came up with @jskladan, open for discussion. It changes bash directive to shell directive, the new format is
shell: - command with shell=True - [command, with, shell=False] - ignorereturn: - command with ignored returncode - command which output is exported
On top of that it also introduces filters for variables in yaml:
${variable.attr|escape} ${variable.attr|noescape}