깜놀하는 해므찌로

Github action deploy 깃허브 액션 배포 예시 본문

IT

Github action deploy 깃허브 액션 배포 예시

agnusdei1207 2023. 8. 7. 13:47
반응형
SMALL

"generatePackageJson": true

1. 설정 추가하기

 

2. github workflows 폴더 생성 및 deploy_server.yml 확장자 파일 생성

 

 

name: Deploy Server

on:
  push:
    branches:
      - 'develop'
    paths:
      - 'apps/server/**'
  workflow_dispatch:

jobs:
  deploy_server:
    runs-on: self-hosted
    steps:
      - uses: actions/checkout@v3
      - name: Install Dependencies
        run: npm install --force
      - name: Build Project
        run: |
          nx build server --configuration production
          rm -rf c/workspace/프로젝트명/server
          mkdir c/workspace/프로젝트명/server
          cp -r dist/apps/server c/workspace/프로젝트명/server
          cp ecosystem.config.js c/workspace/프로젝트명/server/ecosystem.config.js
          cp .env.serve.production c/workspace/프로젝트명/server/.env
          cd c/workspace/프로젝트명/server
          npm install --production
          pm2 restart ecosystem.config.js --update-env

3. 작성 예시 (푸쉬하면 바로 배포 하도록 설정)

https://docs.github.com/ko/actions/using-workflows/workflow-syntax-for-github-actions

 

GitHub Actions에 대한 워크플로 구문 - GitHub Docs

워크플로는 하나 이상의 작업으로 구성된 구성 가능한 자동화된 프로세스입니다. 워크플로 구성을 정의하려면 YAML 파일을 만들어야 합니다.

docs.github.com

작성법 참조 링크

 

 

 

4. 최상단 뎁스에 ecosystem.config.js 파일 생성

exports.modules = {
  apps: [{ name: '@프로젝트명/server', script: 'dist/src/index.js' }],
};

5. 에코시스템 config 파일 내부 설정

 

끝!

반응형
LIST