Skip to content
name: Nest Application
on:
push:
branches:
- main
env:
REGION: "ap-northeast-2"
jobs:
build-and-push:
name: Build and Push
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Cache node_modules
uses: actions/cache@v2
with:
path: ~/.npm # npm의 캐시 디렉토리 지정
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} # 캐시 키 지정
restore-keys: |
${{ runner.os }}-node-
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ env.REGION }}
- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1
- name: Build Docker image
run: |
docker build -t ${{ secrets.ECR_REGISTRY }}:latest .
- name: Push Docker image to ECR
run: |
docker push ${{ secrets.ECR_REGISTRY }}:latest