Значение по умолчанию для wait_for_ready_timeout составляет 20 минут. В ресурсе «aws_elastic_beanstalk_application_version» я установил его на 40 м в надежде переопределить значение по умолчанию. Он будет работать только 20 минут и тайм-аут.
Я зашел в консоль AWS и сделал это вручную. Сделав это вручную в консоли AWS, я увидел, что этот шаг занимает чуть более 20 минут. Я не понимаю, почему тайм-аут на 20, должен работать на 40.
Ничего особенного, в приведенном ниже коде используются некоторые переменные в другом файле, и все. Команда просто - terraform apply
#Provider
provider "aws" {
#version = "~> 1.5"
access_key = "${var.access_key}"
secret_key = "${var.secret_key}"
region = "${var.region}"
}
#S3 Bucket
resource "aws_s3_bucket" "eb_staging" {
bucket_prefix = "a_prefix-automate-eb1"
}
#S3 Bucket Object
#take zipped folder from working directory and upload it to S3 as etag hashed file
resource "aws_s3_bucket_object" "eb_staging" {
bucket = "${aws_s3_bucket.eb_staging.id}"
key = "v003"
source = "${var.eb_source_stage_path}"
etag = "${md5(file("${var.eb_source_stage_path}"))}"
}
#Application
resource "aws_elastic_beanstalk_application" "mvc-site" {
name = "mvc-site"
description = "mvc-site-desc"
}
#Application Version
resource "aws_elastic_beanstalk_application_version" "mvc_staging" {
name = "v003-mvc-site"
application = "mvc-site"
description = "app version staging mvc staging"
bucket = "${aws_s3_bucket.eb_staging.id}"
key = "${aws_s3_bucket_object.eb_staging.id}"
}
#Environment
resource "aws_elastic_beanstalk_environment" "mvc-staging" {
#still timeout at 20....==========================================
wait_for_ready_timeout = "40m"
name = "mvc-staging"
application = "${aws_elastic_beanstalk_application.mvc-site.name}"
solution_stack_name = "${var.eb_solution_stack}"
version_label = "${aws_elastic_beanstalk_application_version.mvc_staging.name}"
}