我想运行不包含特定资源的terraform

时间:2017-10-16 02:13:41

标签: terraform

运行terraform并等待需要很长时间。 所以我想运行它来排除花费最长时间执行的rds 或者我想只运行ec2资源。 有没有办法在terraform中做这些事情?

3 个答案:

答案 0 :(得分:9)

您可以像这样使用-target=resource

terraform plan -target=module.mymodule.aws_instance.myinstance
terraform apply -target=module.mymodule.aws_instance.myinstance

terraform plan -target=aws_instance.myinstance
terraform apply -target=aws_instance.myinstance

答案 1 :(得分:1)

<块引用>

我想运行它以排除花费时间最长的 rds

Terraform 目前不支持排除资源(也就是反向定位)。

Issue #2253: "feature request: inverse targeting / exclude"

(感谢 Julio Daniel Reyes 的链接。)

答案 2 :(得分:0)

加上 Julio 的 answer,您可以通过以下方式定位多个资源:

terraform init
terraform plan -target=resource_type1.resource_name1 -target=resource_type2.resource_name1
terraform apply -target=resource_type1.resource_name1 -target=resource_type2.resource_name1