我如何 运行 ansible 没有颜色的分子?

how can I run ansible molecule without colors?

当 运行 分子时,日志显示颜色:

 molecule lint -s preprod
 --> [36mValidating schema /home/singuliere/software/enough/infrastructure/molecule/letsencrypt-nginx/molecule.yml.[0m

[0m[0m[0m[32m验证成功完成。[0m [0m[0m[0m--> [36m验证架构 /home/singuliere/software/enough/infrastructure/molecule/postfix/molecule.yml.[0m ...

可以通过将输出管道输出到 cat 来禁用它(它仅在输出为 tty 时显示)

 molecule lint -s preprod | cat

--> 验证架构 /home/singuliere/software/enough/infrastructure/molecule/letsencrypt-nginx/molecule.yml。 验证成功完成。 ...

是否有永久的方法可以做到这一点?我尝试在环境中设置 ANSIBLE_NOCOLOR=true 但它没有达到预期的效果。

似乎这种行为是硬编码的。

您可以修补分子的记录器 class 以禁用颜色。
使用 python -c 'import molecule; print(molecule.__file__)'.
查找模块路径 在该文件夹中修改 logger.py

def color_text(color, msg):
    return msg
    # return '{}{}{}'.format(color, msg, colorama.Style.RESET_ALL)