Skip to content

feat(ecs): support assign_public_ip in vpc_config for public Fargate clusters#104

Merged
Will Graham (wlggraham) merged 1 commit into
mainfrom
ecs-public-ip
May 26, 2026
Merged

feat(ecs): support assign_public_ip in vpc_config for public Fargate clusters#104
Will Graham (wlggraham) merged 1 commit into
mainfrom
ecs-public-ip

Conversation

@wlggraham
Copy link
Copy Markdown
Contributor

@wlggraham Will Graham (wlggraham) commented May 20, 2026

Summary

  • Adds assign_public_ip boolean field to the vpcConfig struct in the ECS plugin
  • When true, tasks are launched with AssignPublicIp: ENABLED; defaults to DISABLED (no behavior change for existing clusters)
  • Enables running Fargate tasks in public subnets without a NAT gateway

Test plan

  • Verify existing private-subnet clusters (e.g. ecs-fargate-0.0.1) still work with no config change
  • Deploy a test job against the new ecs-fargate-public-0.0.1 cluster in heimdall-config and confirm the task gets a public IP and can pull the ECR image

🤖 Generated with Claude Code

Test Results:

  • Successfully ran an ECS Fargate job in a public subnet using the public cluster configuration
Screenshot 2026-05-26 at 10 34 58 AM

Sample ECS Fargate Cluster Config:

- name: ecs-fargate-public-0.0.1
    status: active
    version: 0.0.1
    description: AWS Fargate cluster using public subnets with public IPs (no NAT required)
    tags:
      - type:fargate
      - type:fargate-public
    context:
      max_cpu: 4096
      max_memory: 8192
      max_task_count: 30
      execution_role_arn: arn:aws:iam::myexecutionrole
      task_role_arn: arn:aws:iam::myrole
      cluster_name: prod-data-platform-1
      launch_type: FARGATE
      vpc_config:
        subnets:
          - subnet-id-1
          - subnet-id-2
          - subnet-id-3
          - subnet-id-4
        security_groups:
          - sg-0
        assign_public_ip: true

…clusters

Add AssignPublicIp field to vpcConfig so clusters can opt in to public IP
assignment via assign_public_ip: true in their cluster context. Defaults to
disabled to preserve existing behavior.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@wlggraham Will Graham (wlggraham) merged commit b0e582b into main May 26, 2026
7 checks passed
@wlggraham Will Graham (wlggraham) deleted the ecs-public-ip branch May 26, 2026 17:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants