У меня проблема с тем, что моя терраформа как-то отличается от развернутой, хотя я не знаю почему.Согласно моей истории мерзавцев, файл, который управляет Cognito User Pools, не изменился с момента его развертывания, но terraform считает, что это так, и жалуется, что изменения требуют принудительного создания нового ресурса.
версия terraform: 0.11.7
Версия провайдера AWS: 1.14.1
My Terraform code
:
resource "aws_cognito_user_pool" "my_app" {
name = "My App Pool"
/* Fields that can work as aliases */
alias_attributes = [
"email"
]
/* Auto-verify these fields */
auto_verified_attributes = [
"email"
]
/* This is the template used to verify addresses / accounts */
verification_message_template {
default_email_option = "CONFIRM_WITH_CODE"
}
admin_create_user_config {
allow_admin_create_user_only = false
invite_message_template {
email_message = <<EOF
{####}
EOF
email_subject = "MyApp"
sms_message = "Welcome to MyApp. Your username: {username} and password: {####} Thank you!"
}
}
email_verification_subject = "MyApp's Confirmation Code"
email_verification_message = "Your confirmation code: {####} Thank you."
password_policy {
minimum_length = 8
require_lowercase = true
require_numbers = true
require_symbols = true
require_uppercase = true
}
schema {
attribute_data_type = "String"
developer_only_attribute = false
mutable = true
name = "email"
required = true
}
schema {
attribute_data_type = "String"
developer_only_attribute = false
mutable = true
name = "custom1"
required = false
}
schema {
attribute_data_type = "String"
developer_only_attribute = false
mutable = true
name = "custom2"
required = false
}
tags {
"name" = "MyApp"
"Project" = "Terraform"
}
}
Я получаю следующий результат:
schema.3021841581.attribute_data_type: "String" => "" (forces new resource)
schema.3021841581.developer_only_attribute: "false" => "false"
schema.3021841581.mutable: "true" => "false" (forces new resource)
schema.3021841581.name: "custom1" => "" (forces new resource)
schema.3021841581.number_attribute_constraints.#: "0" => "0"
schema.3021841581.required: "false" => "false"
schema.3021841581.string_attribute_constraints.#: "1" => "0" (forces new resource)
schema.3021841581.string_attribute_constraints.0.max_length: "" => ""
schema.3021841581.string_attribute_constraints.0.min_length: "" => ""
Я пытался обновление Terraform , и это не сработало.
Показывает, что находится в состоянии, выполняя показ состояния terraform дает это
schema.3021841581.attribute_data_type = String
schema.3021841581.developer_only_attribute = false
schema.3021841581.mutable = true
schema.3021841581.name = custom1
schema.3021841581.number_attribute_constraints.# = 0
schema.3021841581.required = false
schema.3021841581.string_attribute_constraints.# = 1
Итак, мой вопрос:
Я знаю, что это, вероятно, не идеально, но есть ли способ игнорировать или пропустить Cognito?Я не хочу ничего менять в этом сервисе, и мне нужно защищать его из-за наших пользователей.
Есть ли способ выяснить, почему он считает, что есть разница, и разрешить еебез разрушения моего бассейна?