在terraform计划有很多,显示<computed>
,e.g值:
aws_s3_bucket.environment-store: Creating...
acceleration_status: "" => "<computed>"
acl: "" => "private"
arn: "" => "<computed>"
bucket: "" => "my-unique-bucket-1234"
bucket_domain_name: "" => "<computed>"
bucket_regional_domain_name: "" => "<computed>"
force_destroy: "" => "false"
hosted_zone_id: "" => "<computed>"
region: "" => "<computed>"
request_payer: "" => "<computed>"
tags.%: "" => "2"
tags.Environment: "" => "env-tag"
tags.Name: "" => "Storage for my environment"
versioning.#: "" => "1"
versioning.0.enabled: "" => "true"
versioning.0.mfa_delete: "" => "false"
website_domain: "" => "<computed>"
website_endpoint: "" => "<computed>"
有没有办法不显示,有“<computed>
”价值线,就像这样:
aws_s3_bucket.environment-store: Creating...
acl: "" => "private"
bucket: "" => "my-unique-bucket-1234"
force_destroy: "" => "false"
tags.%: "" => "2"
tags.Environment: "" => "env-tag"
tags.Name: "" => "Storage for my environment"
versioning.#: "" => "1"
versioning.0.enabled: "" => "true"
versioning.0.mfa_delete: "" => "false"
编辑:我忘了提,grep -v
是不是一个不错的选择 - 它可以去除更多的不管图案有多复杂比预期的。
我不相信这是可能隐藏只为正在创建资源领域的一个子集。
每对terraform plan
command的文档,你可以使用-module-depth=n
标志来控制多少数据被输出到控制台。我相信,如果你设置-module-depth=0
你应该得到任何输出,但我不是在我的笔记本测试/确认现在。
可以简单地管计划的标准输出到grep
的排斥。
terraform plan | grep -v ' => <computed>'
甚至
alias tfnc="terraform plan | grep -v ' => <computed>'"
tfnc
如果这还不够好,你可以安装terraform-plan-parser和编写脚本来解析出未<computed>
属性。