Github Actions를 이용한 클라이언트 CI/CD 구축 - 프로젝트 개요

엄현태·2020년 11월 11일
3

Github Actions - CI/CD

목록 보기
1/4
post-thumbnail
post-custom-banner

오랜만에 블로그를 써보려고 합니다.
오랫동안 끌고 있는 개인프로젝트가 있는데, 여러가지 개인 사정으로 끝을 못내고 있습니다. (개인적인 이직, 결혼 등등의 사유...)
관련 프로젝트에 대하여 포스팅한적이 있는데

AWS Lamgda 로 가벼운 API 만들기
GraphQL 로 영화 정보 가져오기

두가지가 관련 프로젝트 포스팅입니다.
오늘은 이에 따라 Github Actions를 사용하여 쉽고 빠른 CI/CD 를 구축해보겠습니다.

일단 제가 하고자 하는 프로젝트의 스펙을 설명해보겠습니다.

클라이언트는 Flutter or RN 기반에 React webapp으로 만들 예정이고 Node 를 가지고 graph QL서버를 만들건데 아직 생각중입니다.
Graph QL 서버를 Lambda 에 올려놓고 돌릴지 아니면 EC2로 해서 돌릴지, 그리고 마지막으로 크롤링을 하는 Crawler는 이미 Lambda 로 동작하고 있는데 이를 serverless 를 사용해서 자동으로 배포를 할 예정입니다. (언제할지 모르겠으나)

또는 한가지 방법중 하나가 react-query를 사용하여 제가 만든 crawler api를 직접 클라이언트에서 호출할 지도 고민중에 있습니다.
이러한 고민 중에 일단 클라이언트에 CI/CD 환경을 구축하고 함께 작업하는 디자이너가 조금 더 편안한 환경에서 작업 할 수 있도록 구성해 보았습니다.

시나리오는 master 에 commit, merge하였을 때에 자동으로 빌드 후, S3 에 업로드 하는 방식을 사용했으며, 더 나아가 Route53 을 이용하여 url을 구성하고, 이를 CloudFrontManagement 로 연결하여 http -> https 변환까지 포스팅 해볼 생각입니다.

  1. github action으로 CI/CD 구축
    1. S3 업로드
  2. Route 53을 이용한 domain 설정
  3. ACM을 이용한 SSL 인증
  4. CloudFrontMangement을 이용한 https 변경

요약하자면 위와 같을것 같습니다.
차근차근 포스팅 해보겠습니다.

profile
개발을 취미로 하는 개발자가 되고픔
post-custom-banner

1개의 댓글

comment-user-thumbnail
2020년 11월 11일

기대가 됩니다.

답글 달기