我如何 运行 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)
当 运行 分子时,日志显示颜色:
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)