首次应用Terraform时更新SQS属性时出错

首次应用Terraform时更新SQS属性时出错,terraform,Terraform,每次我运行terraform时,第一次都会失败,但重试后会成功 terraform给我以下错误: 1 error occurred: * module.my_module.aws_sqs_queue_policy.aws_sqs_queue_policy: 1 error occurred: * aws_sqs_queue_policy.aws_sqs_queue_policy: Error updating SQS attributes: InvalidAttributeVal

每次我运行terraform时,第一次都会失败,但重试后会成功

terraform给我以下错误:

1 error occurred:
    * module.my_module.aws_sqs_queue_policy.aws_sqs_queue_policy: 1 error occurred:
    * aws_sqs_queue_policy.aws_sqs_queue_policy: Error updating SQS attributes: InvalidAttributeValue: Invalid value for the parameter Policy.
    status code: 400, request id: 
下面是我的地形脚本: 我想创建一个带有消费者角色的sqs。所以消费者可以承担这个消费者角色来读取来自sqs的消息

resource "aws_sqs_queue" "consumer_queue" {
  name                       = "my-queue" 
}

# Allow the consumer to assume the consumer role
data "aws_iam_policy_document" "queue_consumer_role_permissions_doc" {
  statement {
    principals {
      type        = "AWS"
      identifiers = ["${var.consumer_arn}"]
    }

    actions = ["sts:AssumeRole"]
  }
}

resource "aws_iam_role" "queue_consumer_role" {
  name               = "queue-consumer-role"
  path               = "/"
  assume_role_policy = "${data.aws_iam_policy_document.queue_consumer_role_permissions_doc.json}"

}

data "aws_iam_policy_document" "zo_message_bus_queue_permissions" {

  //All consumer to read from this queue
  statement {
    principals {
      type        = "AWS"
      identifiers = ["${aws_iam_role.queue_consumer_role.arn}"]
    }

    actions = [
      "SQS:ReceiveMessage"]

    resources = ["${aws_sqs_queue.consumer_queue.arn}"]
  }
}

resource "aws_sqs_queue_policy" "aws_sqs_queue_policy" {
  depends_on = ["aws_sqs_queue.consumer_queue"]
  queue_url  = "${aws_sqs_queue.consumer_queue.id}"
  policy     = "${data.aws_iam_policy_document.zo_message_bus_queue_permissions.json}"
}


第二页上的计划显示了什么?请更新sqs redrive_策略并创建aws_sqs_queue_策略更新您的问题以显示完整的计划