{"repo":"blombard/lambda-monorepo","free":true,"listed":false,"github":"https://github.com/blombard/lambda-monorepo","clone":"git clone https://github.com/blombard/lambda-monorepo.git","description":"GitHub Action for Deploying AWS Lambda functions in a mono repo","language":"JavaScript","stars":19,"topics":["aws-lambda","monorepo","github-actions","hacktoberfest"],"license":"MIT","category":"workflow-automation","readme_excerpt":"AWS Lambda monorepo Deploy your AWS Lambda functions based on the files changed in a mono repo with this Github Action. Prerequisites Set you AWS credentials in the secrets of your repo: - AWS ACCESS KEY ID - AWS SECRET ACCESS KEY - AWS REGION Create a filters.yml file and put it in .github/worklows : .github/worklows/filters.yml The structure of the file should be : Example Inputs lambda-functions By default should be '${{ toJson(steps.filter.outputs) }}' . Update this only if you know what you are doing. zip-params Arguments of the command zip lambda.zip -r $ZIP PARAMS . It is the files who will be uploaded to your Lambda function. alias-name A Lambda alias is like a pointer to a specific Lambda function version. This alias will now point to the new version of your function. layer-name If your Lambda use a layer, it will update you function with the latest version of this layer. Build your own deploy function If your deployment script is very specific to your project you can override the default deploy.sh script with your own. For that you'll need a deploy.sh file at the root of your project. deploy.sh Note Since the AWS CLI is really verbose, if you need to deploy sensitive data (in your env variables for example) you can use : if you don't want to display stdout but still keep stderr. Sources This action is based on those Github actions : - configure-aws-credentials - paths-filter","default_branch":null,"files":null,"tree":[],"storefront":"/r/blombard","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/blombard/lambda-monorepo/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}