Skip to content

deploy

deploy #19

Workflow file for this run

name: deploy
permissions:
id-token: write # for aws role
contents: read
on:
push:
branches:
- main
workflow_dispatch:
jobs:
lambda:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Setup Chalk
uses: crashappsec/setup-chalk-action@main
with:
connect: true
- name: Assume AWS Role
uses: aws-actions/configure-aws-credentials@5fd3084fc36e372ff1fff382a39b10d03659f355 #v2
with:
aws-region: ${{ secrets.AWS_REGION }}
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
role-session-name: GithubDeploy
- name: Login to Amazon ECR
uses: aws-actions/amazon-ecr-login@062b18b96a7aff071d4dc91bc00c4c1a7945b076 #v2.0.1
- name: Push
uses: docker/build-push-action@v5
with:
push: true
provenance: false
context: .
tags: ${{ secrets.AWS_ECR_IMAGE }}:latest
- name: Redeploy Lambda
run: |
aws lambda update-function-code \
--function-name ${{ secrets.AWS_LAMBDA_NAME }} \
--image-uri ${{ secrets.AWS_ECR_IMAGE}}:latest
aws lambda wait function-updated \
--function-name ${{ secrets.AWS_LAMBDA_NAME }}