我们在多个服务内的多个脚本中使用 terraform 命令,并且使用文件或 AWS CloudWatch 访问这些脚本的输出,因此我们看到的是一堆令人困惑的颜色字符分布在几乎所有 terraform 输出行中。我希望禁用这些字符,但 github 上的讨论线程不太清楚当前禁用所有 terraform 命令的颜色输出的最佳方法是什么(例如:https://github.com/hashicorp/terraform/issues /15264)
我的问题是,如何在 2021 年 9 月最好地解决这个问题?我们目前使用 terraform 版本
0.14.0
并将很快升级到版本 1.x
,因此解决方案如下:两个版本都比较好,但如果有一些只适用于1.x
,我们可以考虑在升级时实现它。
terraform plan
、terraform plan
和 terraform output
支持 TF 1.x 中的 -no-color
选项。例如:
terraform plan -no-color
现在很多终端程序已经支持通用设置了:
export NO_COLOR="1"
但不幸的是 terraform 至少在 1.9 版本上仍然不支持它。
所以现在,剩下的唯一选择就是将其添加到您的
.profile
文件中:
export TF_CLI_ARGS="-no-color"
或 CICD 中的 Docker 文件,以删除纯文本日志中的颜色编码垃圾:
ENV NO_COLOR="1"
ENV TF_CLI_ARGS="-no-color"