1. Github Actions를 이용한 Serverless CI/CD
Serverless 프레임워크를 사용해 내 AWS Lambda를 배포하였다.
Github Actions를 사용해 수정 사항을 push 할 경우 Serverless가 자동으로 배포하도록 만들어보자.
Severless Github Action 사용법 참고: https://github.com/serverless/github-action
GitHub - serverless/github-action: A Github Action for deploying with the Serverless Framework
:zap::octocat: A Github Action for deploying with the Serverless Framework - GitHub - serverless/github-action: A Github Action for deploying with the Serverless Framework
github.com
serverless 배포한 레파지토리의 Actions를 눌러 새로운 workflow를 생성한다.
main.yml 파일에 아래와 같이 입력한다.
name: serverless deploy
on:
push:
branches:
- main
jobs:
deploy:
name: deploy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install SLS and Deploy
uses: serverless/github-action@v3
with:
args: -c "sls plugin install -n serverless-wsgi && sls plugin install -n serverless-python-requirements && serverless deploy"
entrypoint: /bin/sh
env:
AWS_ACCESS_KEY_ID: ${{secrets.AWS_ACCESS_KEY_ID}}
AWS_SECRET_ACCESS_KEY: ${{secrets.AWS_SECRET_ACCESS_KEY}}
AWS_ACCESS_KEY_ID와 AWS_SECRET_ACCESS_KEY는
AWS IAM 사용자의 ACCESS_KEY와 SECRET_ACCESS_KEY를 의미한다.
본인의 IAM 액세스 키 정보를 Github secrets에 등록해 사용하면 된다.
2. 잘 동작하는지 테스트
- 원래 위와 같이 동작하는 API를 수정해서 테스트 해보겠다.
- 메시지를 추가하고 commit, push 했다.
- workflow 동작중
- 작업이 완료되었다.
- 포스트맨으로 확인해본다.
- 자동으로 배포가 잘 된것을 확인했다.
'AWS > Lambda' 카테고리의 다른 글
AWS Lambda - 사용자 지정 Layer 생성, 추가하기 (2) (0) | 2023.01.12 |
---|---|
AWS Lambda - 사용자 지정 Layer 생성, 추가하기 (1) (0) | 2023.01.11 |
AWS Lambda - serverless 배포 region 변경하기 (0) | 2023.01.11 |
AWS Lambda - App에 필요한 패키지 설치하기. requirements.txt 사용 (0) | 2023.01.11 |
AWS Lambda - Serverless 프레임워크로 테스트 배포하기 (0) | 2023.01.11 |