Skip to content

muldos/aws-cdk-action-for-python-project

 
 

Repository files navigation

GitHub Action for AWS CDK

This Action for AWS CDK allow you to build your python layer in an amazon linux 2 docker image (so you will get native libs optimized for your lambda runtime environment), and allow you to run the cdk command you needs (cdk synth, npx cdk deploy, ...) after you build your python layer.

Currently supports CDK apps using Typescript cdk, and python projects

*This Github Action is specifically based on the Amazon Linux distribution to ensure Python dependencies, compiled to C, are functional when deployed to AWS Lambda.

Usage

An example workflow for building a layer zip archive, and synthesizing an AWS CloudFormation template for your app using cdk synth.

name: AWS CDK Synth

on: [push]

jobs:
  aws-cdk-synth:

    runs-on: ubuntu-latest

    steps:
    - name: Checkout
      uses: actions/checkout@v2

    - name: CDK Synth
      uses: muldos/github-action-aws-cdk-amazon-linux@master
      with:
        python_build_command: 'pip3 install -r requirements.txt -t dist/layer/python/lib/python3.8/site-packages'
        zip_layer_command: 'zip -r dist/layer/third-parties-layer.zip dist/layer/python'
        cdk_command: 'npx cdk synth'
        cdk_work_dir: 'deploy'
      env:
        AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
        AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
        AWS-DEFAULT_REGION: 'eu-west-1'

Secrets

  • AWS_ACCESS_KEY_IDRequired The AWS access key part of your credentials (more info)
  • AWS_SECRET_ACCESS_KEYRequired The AWS secret access key part of your credentials (more info)

For details on creating secrets and using them with GitHub Actions, see Creating encrypted secrets for a repository.

License

The Dockerfile and associated scripts and documentation in this project are released under the MIT License.

Container images built with this project include third party materials. See THIRD_PARTY_NOTICE.md for details.

Credits

Many thanks to Scott Brenner and Greg Farrow for their original Github Action(s) which this action is based on.

About

AWS CDK Actions on the amazonlinux distro

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 74.0%
  • Shell 26.0%