繁体   English   中英

Terraform AWS iam 角色 AlreadyExists 错误

[英]Terraform AWS iam role AlreadyExists error

我对将 aws 与 terraform 一起使用几乎没有疑问。

我正在使用 milliHQ/next.js/aws ( https://registry.terraform.io/modules/dealmore/next.js/aws/latest ) 将 nextjs 项目部署到 aws。

我已经在我的本地 mac 中成功应用了 terraform 项目,我想在我的 github 项目上构建持续集成以进行部署。

我引用了这个存储库( https://github.com/milliHQ/terraform-aws-next.js/tree/main/examples/with-custom-domain

github 操作代码如下

name: Develop Branch Build and Deploy
on:
  push:
    branches:
      - develop

jobs:
  deployment:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout source code
        uses: actions/checkout@master
        with:
          ref: develop

      - name: Install dependencies
        run: yarn install --frozen-lockfile

      - name: Build for Terraform
        run: yarn tf-next

      - name: Configure AWS credentials
        uses: aws-actions/configure-aws-credentials@v1
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: ap-northeast-2

      - name: Setup Terraform
        uses: hashicorp/setup-terraform@v1
        with:
          terraform_version: latest

      - name: Terraform Initialize
        run: terraform init

      - name: Terraform Plan
        run: terraform plan -no-color

      - name: Terraform Apply
        run: terraform apply -auto-approve
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

我在下面收到错误

github动作错误

此错误来自 Terraform 代码本身。

Terraform会在你第一次创建资源的时候创建一个tfstate文件,Terraform会用它来检测哪些资源需要再创建、修改或删除。 我没有在 repo 中看到后端配置,所以每次运行 terraform apply 时,Terraform 都会知道它正在创建新资源,这就是错误出现的方式。

您可以在 main.tf 文件中添加此块

provider "aws" {
  region = "us-west-1"
}

terraform {
  backend "s3" {
    encrypt = true
    region  = "us-west-1"
    bucket  = "Bucket-to-store-state"
    key     = "location-of-state-file"
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM