Terraform-depends_on

时间:2023-11-01 16:16:29

depends_on

在同一个 Terraform 配置文件中可以包含多个资源。通过在资源中引用其他资源的属性值,Terraform可以自动推断出资源的依赖关系。然而,某些资源的依赖关系对于Terraform是不可见的,这就需要使用 depends_on 来创建显式依赖。我们可以使用 depends_on 来更改资源的创建顺序或执行顺序,使其在所依赖资源之后处理。depends_on 的表达式是依赖资源的地址列表。例如我们在远程操作一台E CS 服务器之前,需要为其绑定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 = [      ...    ]  }}
support.huaweicloud.com/basics-terraform/terraform_0016.html