Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[INFRA] 자동 배포 구축 #24

Closed
6 tasks
yummygyudon opened this issue Nov 18, 2024 · 0 comments · Fixed by #25
Closed
6 tasks

[INFRA] 자동 배포 구축 #24

yummygyudon opened this issue Nov 18, 2024 · 0 comments · Fixed by #25
Assignees

Comments

@yummygyudon
Copy link
Member

작업

  • CI Script
    • Lint 실행
    • 빌드 디렉토리 정상 생성 여부 확인을 통한 검사
  • CD Script
    • Dev Lambda Server
    • Prod Lambda Server


현재 배포 구조

  • 현재 각자의 Local에 직접 AWS Credential을 세팅한 후, npm run deploy:${stage_name} 명령어 실행 ( == npm run NODE_ENV=${stage_name} sls deploy --stage ${stage_name})
  • 배포는 개인 Local 환경에서 실행 & 소스 코드 보관은 깃허브

이유

현재 깃허브의 경우, 단순 소스 코드 보관용으로 사용되고 있습니다.
물론 레포지토리 브랜치 룰로 코드리뷰 approve를 받아야만 머지가 가능한 형태이지만 형식 상의 코드리뷰만 수행되는 상황입니다.

또한 배포는 레포 merge 및 리뷰 approve 없이도 가능한 상태이기 때문에
각 구성원의 작업 내용 싱크 불일치 위험이 높으며 위험도가 높다고 판단했습니다.

즉, 개인 기기에 계정을 저장되어 배포 주체가 분산되어 실 배포에 대한 안정성은 보장되어 있지 않은 상황이므로
GitHub Actions를 통해 일반적인 프로젝트의 CI/CD 구조와 같은 배포 주체 통일을 통한 배포 안정화를 제고하려고 합니다.


개선 배포 구조

  • develop 브랜치 PR 시, CI Script 실행

  • develop 브랜치 Merge 시, Dev Lambda CD Script 실행

  • main 브랜치 Merge 시, Prod Lambda CD Script 실행

  • 작업자 개인 PC 내 조직 계정 정보 저장 지양

@yummygyudon yummygyudon self-assigned this Nov 18, 2024
@yummygyudon yummygyudon linked a pull request Nov 18, 2024 that will close this issue
yummygyudon added a commit that referenced this issue Nov 18, 2024
[INFRA] CI/CD 환경 구축
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant