我一直试图使用Terraform部署AWS WorkSpaces基础设施。代码本身通过验证和计划检查,但无法应用。
来源:
module "networking" {
source = "../../modules/networking"
region = var.region
main_cidr_block = var.main_cidr_block
cidr_block_1 = var.cidr_block_1
cidr_block_2 = var.cidr_block_2
size = var.size
}
resource "aws_directory_service_directory" "main" {
name = var.aws_ds_name
password = var.aws_ds_passwd
size = var.size
type = "SimpleAD"
vpc_settings {
vpc_id = module.networking.main_vpc
subnet_ids = ["${module.networking.private-0}", "${module.networking.private-1}"]
}
}
resource "aws_workspaces_directory" "main" {
directory_id = aws_directory_service_directory.main.id
subnet_ids = ["${module.networking.private-0}", "${module.networking.private-1}"]
}
resource "aws_workspaces_ip_group" "main" {
name = "Contractors."
description = "Main IP access control group"
rules {
source = "10.0.0.0/16"
description = "Contractors"
}
}
错误码:
ValidationException: 2 validation errors detected: Value at 'password' failed to satisfy constraint: Member must satisfy regular expression pattern: (?=^.{8,64}$)((?=.*\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])|(?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s]))^.*; Value '' at 'name' failed to satisfy constraint: Member must satisfy regular expression pattern: ^([a-zA-Z0-9]+[\\.-])+([a-zA-Z0-9])+$
status code: 400, request id: 073f6e61-775e-4ff9-a88e-e1eab97f8519
on modules/workspaces/workspaces.tf line 10, in resource "aws_directory_service_directory" "main":
10: resource "aws_directory_service_directory" "main" {
我知道这是用户名/密码的regex问题,但我目前还没有设置任何用户,而且出于测试的原因,我已经重新设置了安全策略。
以前有人有过这个问题吗?
发布于 2020-03-20 09:58:20
属性,并匹配运行terraform apply
时在该错误中看到的内容。
密码 目录管理员的密码。目录创建过程创建一个具有用户名administrator和此密码的目录管理员帐户。 如果需要更改管理员帐户的密码,可以使用ResetUserPassword API调用。 类型:字符串 模式: (?=^.{8,64}$)((?=.*\d)(?=.*A-Z)(?=.*a-z)|(?=.*\d)(?=.*^A-Za-z0-9\s)(?=.*a-z)|(?=.*^A-Za-z0-9\s)(?=.*A-Z)(?=.*a-z)|(?=.*\d)(?=.*A-Z)(?=.*^A-Za-Z0-9\s)^* 要求:是
通常,Terraform能够用计划或验证命令验证这一点,但是不幸的是,AWS提供者是ValidateFunc
,所以它只能在应用时而不是在一分钟内失败。
如果您希望在计划或验证时间捕获它,那么您应该在提供者问题跟踪器上为它提出一个特性请求。
https://stackoverflow.com/questions/60771450
复制相似问题