Terraform
Terraform
本文导读
展开导读
链接复制成功!
depends_on
在同一个 Terraform 配置文件中可以包含多个资源。通过在资源中引用其他资源的属性值,Terraform可以自动推断出资源的依赖关系。然而,某些资源的依赖关系对于Terraform是不可见的,这就需要使用 depends_on 来创建显式依赖。我们可以使用 depends_on 来更改资源的创建顺序或执行顺序,使其在所依赖资源之后处理。depends_on 的表达式是依赖资源的地址列表。例如我们在远程操作一台ECS服务器之前,需要为其绑定EIP或配置NAT规则。
resource "huaweicloud_compute_instance" "myinstance" {
...
}
resource "huaweicloud_vpc_eip" "myeip" {
...
}
resource "huaweicloud_compute_eip_associate" "associated" {
public_ip = huaweicloud_vpc_eip.myeip.address
instance_id = huaweicloud_compute_instance.myinstance.id
}
resource "null_resource" "provision" {
depends_on = [huaweicloud_compute_eip_associate.associated]
provisioner "remote-exec" {
connection {
# 通过公网地址访问 ECS
host = huaweicloud_vpc_eip.myeip.address
...
}
inline = [
...
]
}
}
父主题: Metadata