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(aws-apprunner): support the Service L2 construct #15810

Merged
merged 45 commits into from
Sep 23, 2021
Merged

feat(aws-apprunner): support the Service L2 construct #15810

merged 45 commits into from
Sep 23, 2021

Conversation

pahud
Copy link
Contributor

@pahud pahud commented Jul 29, 2021

Support the Service L2 construct for App Runner.

  • implementation
  • unit testing and integ testing
  • README

What's included

This PR introduces the initial L2 implementation of the Service construct. We are allowed to create App Runner services with:

  1. ECR public
  2. ECR(private) from any existing ECR repository
  3. ECR(private) built and pushed from local assets
  4. remote github repository

Design

AWS App Runner allows us to create Service with ECR_PUBLIC, ECR and Github. We should specify the source with the source property to define the source of the repository for the Service and conditionally create the required IAM access role for ECR to pull the required images(doc).

source: Source.fromEcrPublic()  // To define a source from ECR Public container image.
source: Source.fromEcr()  // To define a source from ECR container image.
source: Source.fromGitHub()  // To define a source from a GitHub repository.
source: Source.fromAsset()  // To define a source from local code asset directory.

The connection for Github is required for Source.fromGitHub(). However, as there's no cloudformation support to create the App Runner connection, an existing connection will be required for service with github as the source.

Closes: #14813


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

@gitpod-io
Copy link

gitpod-io bot commented Jul 29, 2021

@pahud pahud marked this pull request as ready for review July 29, 2021 08:01
@peterwoodworth peterwoodworth added the @aws-cdk/aws-apprunner Related to the apprunner package label Jul 29, 2021
packages/@aws-cdk/aws-apprunner/README.md Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
packages/@aws-cdk/aws-apprunner/lib/service.ts Outdated Show resolved Hide resolved
pahud and others added 8 commits July 30, 2021 15:49
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
Co-authored-by: Romain Marcadier <romain.muller@telecomnancy.net>
@pahud pahud requested a review from RomainMuller August 9, 2021 04:53
@pahud
Copy link
Contributor Author

pahud commented Aug 11, 2021

Hi @RomainMuller

Can you take a look?

@pahud
Copy link
Contributor Author

pahud commented Sep 16, 2021

The CodeBuild CI failed due to Javascript heap OOM :(

圖片

@pahud
Copy link
Contributor Author

pahud commented Sep 16, 2021

Hi @RomainMuller please check it out again.

@pprahlad
Copy link

What is the status of this PR? This is a highly requested capability and it's a shame we haven't been able to merge this change

@pahud
Copy link
Contributor Author

pahud commented Sep 23, 2021

What is the status of this PR? This is a highly requested capability and it's a shame we haven't been able to merge this change

Still fixing the CI failure but the core function should be ready. I am reaching out to @RomainMuller to take a look.

@RomainMuller
Copy link
Contributor

@Mergifyio update

@mergify
Copy link
Contributor

mergify bot commented Sep 23, 2021

Command update: success

Branch has been successfully updated

@mergify
Copy link
Contributor

mergify bot commented Sep 23, 2021

Thank you for contributing! Your pull request will be updated from master and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork).

@aws-cdk-automation
Copy link
Collaborator

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildProject89A8053A-LhjRyN9kxr8o
  • Commit ID: 99748a6
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

@mergify mergify bot merged commit 3cea941 into aws:master Sep 23, 2021
@mergify
Copy link
Contributor

mergify bot commented Sep 23, 2021

Thank you for contributing! Your pull request will be updated from master and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
@aws-cdk/aws-apprunner Related to the apprunner package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

(aws-apprunner): Support AWS Apprunner as new L2 construct
6 participants