회원가입

[Github Action] 1. Github Action 적용하는 이유

NULL 2021-12-16

Django React 프로젝트를 진행하면서 배포를 하기 위해서는 Git 레포지토리에 push 하고 서버 컴퓨터에 pull 을 받은 상태에서, 매번 React 프로젝트를 Build 한 다음 Build 된 폴더를 Django 가 가리키는 static 폴더로 옮기고 collectstatic 해야한다.

그 후, 웹서버웹서버게이트웨이 인터페이스를 재실행 해줘야 하는 불변함을 매번 겪어야 한다.

 

간단하게 이 순서를 나열하면

  1. 로컬 컴퓨터에 수정한 코드를 Github 원격 저장소에 Push 한다.
  2. 서비스를 하고 있는 서버 컴퓨터에 원격 접속하여 Github 원격 저장소에 올라온 수정된 코드를 Pull 받는다.
  3. React 같은 경우, 수정을 반영하기 위해 Build 를 한다.
  4. Build 한 폴더를 Django 가 추적할 수 있도록 static 폴더에 배치한다. (index.html 또한 따로 templates 쪽에 배치)
  5. Django 에서 collectstatic 을 한다.
  6. 웹서버와 wsgi 를 재실행 시켜준다.

벌써 재배포를 하기 위해서 여러 작업이 필요하다.

 

더 간단하게 하기 위해 CI/CD 툴을 이용했다.

CI/CD 를 도와주는 것 중에 필자가 자주 이용하는 Github 자체에 이 역할을 수행해 주는 Github Action 이라는 것이 있다고 했다.

 

Github Action 은 간단하게 설명하면 로컬에서 Github 원격저장소에 하는 일련의 행위 중 (예: push 등) 무언가를 하면 해당 Github 원격 저장소를 Github Action 으로 연결된 특정 서버에서 어떤 역할(명령어 실행) 을 할 수 있도록 도와주는 것이다.

더욱 간단하게 설명하면 아래 사진과 같다.

 

다음 장에서 직접 구현해서 프로젝트에 적용해 보자!

1 0
CI/CD
애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법
Yesterday: 1
Today: 242