Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ecs): vpc link for api gatway and load balanced services #1541

Merged
merged 3 commits into from
Jan 16, 2019

Commits on Jan 14, 2019

  1. feat(ecs): vpc link for api gatway and load balanced services

    Overview
    ========
    The primary purpose of this work is to fill in the gaps in
    implementation for deploying a VPC link between API Gateway, and an
    ECS service. My goal was to allow setting up a {proxy+} API which would
    forward to a Fargate service in a private VPC.
    
    This has been tagged as 'ecs', but also involves changes to api gateway.
    
    Since VPC links require an NLB, the LoadBalanced{Fargate|Ecs}Service classes
    have been modified to support selecting either an ALB or an NLB.
    
    Changes
    =======
    On the APIGW side, `IntegrationOptions` now accepts an optional connetion
    type enum, as well as a VpcLink. `VpcLink` itself is a new construct
    which accepts an array of Network Load Balancers. I also added the missing
    `requestParameters` prop for `Method`, to allow properly setting up a proxy
    path variable.
    
    For ECS, in my use case I wanted to use the LoadBalanced*Service constructs, however
    they only supported ALB. I have pulled all of the ELBv2 related setup
    into the new `LoadBalancedService` base class, and also created a base
    props interface `LoadBalancedServiceProps`. This deals with the common setup
    between the Fargate and ECS services, and allows the selection of ALB or NLB.
    As a side-effect of this refactoring, you can also now pass a Certificate to
    `LoadBalancedEcsService`.
    
    There is a new `Method` test for the VPC link props, as well as new tests
    for both `VpcLink` and `LoadBalancedFargateService`.
    dotxlem committed Jan 14, 2019
    Configuration menu
    Copy the full SHA
    b3ea253 View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2019

  1. Configuration menu
    Copy the full SHA
    a35680e View commit details
    Browse the repository at this point in the history

Commits on Jan 16, 2019

  1. throw error if a vpc link is set for an integration while the connect…

    …ion type is set to 'internet'
    dotxlem committed Jan 16, 2019
    Configuration menu
    Copy the full SHA
    3d3f72d View commit details
    Browse the repository at this point in the history