# 如果输入的image_id不符合正则表达式的要求,那么regex函数调用会抛出一个错误,这个错误会被can函数捕获,输出false variable "image_id" { type = string description = "The id of the machine image (AMI) to use for the server."
validation { # regex(...) fails if it cannot find a match condition = can(regex("^ami-", var.image_id)) error_message = "The image_id value must be a valid AMI id, starting with \"ami-\"." } }
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create
Terraform will perform the following actions:
# alicloud_vpc.main will be created + resource "alicloud_vpc" "main" { + cidr_block = "10.1.0.0/21" + id = (known after apply) + ipv6_cidr_block = (known after apply) + name = (known after apply) + resource_group_id = (known after apply) + route_table_id = (known after apply) + router_id = (known after apply) + router_table_id = (known after apply) + status = (known after apply) + vpc_name = "terraform-vpc" }
# alicloud_vswitch.main[0] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.0.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw 0" + zone_id = (known after apply) }
# alicloud_vswitch.main[1] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.1.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw 1" + zone_id = (known after apply) }
# alicloud_vswitch.main[2] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.2.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw 2" + zone_id = (known after apply) }
# alicloud_vswitch.main[3] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.3.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw 3" + zone_id = (known after apply) }
# alicloud_vswitch.main[4] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.4.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw 4" + zone_id = (known after apply) }
Plan: 6 to add, 0 to change, 0 to destroy. ╷ │ Warning: "availability_zone": [DEPRECATED] Field 'availability_zone' has been deprecated from provider version 1.119.0. New field 'zone_id' instead. │ │ with alicloud_vswitch.main, │ on terraform.tf line 18, in resource "alicloud_vswitch" "main": │ 18: resource "alicloud_vswitch" "main" { │ │ (and 5 more similar warnings elsewhere) ╵
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create
Terraform will perform the following actions:
# alicloud_vpc.main will be created + resource "alicloud_vpc" "main" { + cidr_block = "10.1.0.0/21" + id = (known after apply) + ipv6_cidr_block = (known after apply) + name = (known after apply) + resource_group_id = (known after apply) + route_table_id = (known after apply) + router_id = (known after apply) + router_table_id = (known after apply) + status = (known after apply) + vpc_name = "terraform-vpc" }
# alicloud_vswitch.main["vsw0"] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.0.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw0" + zone_id = (known after apply) }
# alicloud_vswitch.main["vsw1"] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-b" + cidr_block = "10.1.1.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw1" + zone_id = (known after apply) }
# alicloud_vswitch.main["vsw2"] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-b" + cidr_block = "10.1.2.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw2" + zone_id = (known after apply) }
# alicloud_vswitch.main["vsw3"] will be created + resource "alicloud_vswitch" "main" { + availability_zone = "cn-guangzhou-a" + cidr_block = "10.1.3.0/24" + id = (known after apply) + name = (known after apply) + status = (known after apply) + vpc_id = (known after apply) + vswitch_name = "vsw3" + zone_id = (known after apply) }
Plan: 5 to add, 0 to change, 0 to destroy. ╷ │ Warning: "availability_zone": [DEPRECATED] Field 'availability_zone' has been deprecated from provider version 1.119.0. New field 'zone_id' instead. │ │ with alicloud_vswitch.main, │ on terraform.tf line 43, in resource "alicloud_vswitch" "main": │ 43: resource "alicloud_vswitch" "main" { │ │ (and 4 more similar warnings elsewhere)