【问题标题】:Cannot deploy a new war file to beanstalk via Terraform无法通过 Terraform 将新的 war 文件部署到 beanstalk
【发布时间】:2018-01-12 21:06:54
【问题描述】:

我想通过 Terraform 创建一个新的 beanstalk 环境并让它运行指定的 war 文件。使用我的 terraform 配置脚本,我可以创建 beanstalk 环境,还可以将 war 文件上传到 S3 存储桶。但是,我无法将此 war 文件部署到这个新创建的 beanstalk 环境中。

这是我的 TF 配置。

resource "aws_s3_bucket_object" "myjar" {
  bucket = "mybucketname"
  key    = "jars/myapp-1.0.war"
  source = "localdir/myapp-1.0.war"
  etag   = "${md5(file("localdir/myapp-1.0.war"))}"
}

resource "aws_elastic_beanstalk_application_version" "myjarversion" {
  application = "MyBeanstalkApplication"
  name = "1.0"
  bucket = "mybucketname"
  key = "jars/myapp-1.0.war"
}

resource "aws_elastic_beanstalk_environment" "tftestenv" {
  name                = "myapp-tftest"
  application         = "MyBeanstalkApplication"
  solution_stack_name = "64bit Amazon Linux 2017.03 v2.6.2 running Tomcat 8 Java 8"

  setting {
    namespace = "aws:autoscaling:asg"
    name      = "MinSize"
    value     = "1"
  }
  ... # bunch of other beanstalk settings
}

Terraform 成功获取本地文件localdir/myapp-1.0.war,上传到 S3 中的相应存储桶和密钥,并将 war 文件关联为我的 beanstalk 应用程序中的一个版本(查看时我可以看到 beanstalk 应用程序版本列表中列出的 war通过 AWS 控制台)。

它还为我的应用程序创建了一个myapp-tftest 环境,但没有将war 文件部署到它。

我在这里缺少什么?还是无法通过 terraform 将版本部署到 beanstalk 环境(这会令人失望)。

【问题讨论】:

    标签: deployment terraform amazon-elastic-beanstalk


    【解决方案1】:

    我没有意识到有一个名为version_label 的选项可以指定应用程序版本。

    关闭问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-28
      • 2019-01-23
      • 1970-01-01
      • 1970-01-01
      • 2015-11-04
      • 2018-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多