You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform创建AWS CodePipeline时Deploy ActionType不可用问题求助

解决AWS CodePipeline ECS Deploy动作在ap-south-1区域的不可用问题

你遇到的这个InvalidActionDeclarationException错误,核心原因是ap-south-1(孟买)区域并不支持你指定的ECS Deploy动作版本1。AWS的CodePipeline动作类型支持情况是分区域的,不同区域对同一动作的版本支持可能存在差异。

解决步骤:

  1. 确认区域支持的动作版本
    你可以通过AWS CLI命令查看ap-south-1区域支持的ECS Deploy动作版本:

    aws codepipeline list-action-types --region ap-south-1 --filter "category=Deploy,owner=AWS,provider=ECS"
    

    执行后会返回该区域可用的动作版本,通常ap-south-1支持的是版本2。

  2. 修改Terraform配置中的动作版本
    把你的aws_codepipeline资源里的version字段从"1"改成"2"即可。修改后的配置如下:

    resource "aws_codepipeline" "pipeline" {
      name     = "${var.cluster_name}-pipeline"
      role_arn = "${aws_iam_role.codepipeline_role.arn}"
    
      artifact_store {
        location = "${aws_s3_bucket.source.bucket}"
        type     = "S3"
      }
    
      stage {
        name = "Production"
    
        action {
          name             = "Deploy"
          category         = "Deploy"
          owner            = "AWS"
          provider         = "ECS"
          input_artifacts  = ["imagedefinitions"]
          version          = "2" # 这里改成版本2
          configuration {
            ClusterName = "${var.cluster_name}"
            ServiceName = "${var.app_service_name}"
            FileName    = "imagedefinitions.json"
          }
        }
      }
    }
    

额外说明:

版本2的ECS Deploy动作和版本1的核心配置参数基本一致,不需要额外调整其他配置项。修改后重新执行terraform apply应该就能成功创建CodePipeline了。

内容的提问来源于stack exchange,提问作者the-petrolhead

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:58:30