我如何运行无色分子?

时间:2019-01-10 13:31:34

标签: ansible molecule

运行分子时,日志显示为彩色

 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,但效果不理想。

1 个答案:

答案 0 :(得分:1)

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

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

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