개발환경의 종류

  1. 개발자가 개발하는 Local환경
  2. 개발자들끼리 개발내용에 대한 통합테스트를 하는 Development환경
  3. 개발이 끝나고 QA엔지니어 및 내부 사용자들이 사용해보기 위한 QA 환경
  4. 실제 유저가 사용하는 Production환경

이를 앞으로 DEV, QA, PROD 환경이라고 부른다.

보통 개발 프로세스는 다음과 같다.

  1. 개발자가 자신 로컬에서 개발진행한다.
  2. 다른 개발자가 작성한 코드와 충돌나지 않는지 내부 테스트를 진행한다.
  3. 진행한 내용을 다른 개발자와 공유하기 위해 git과같은 SCM에 올린다.
  4. dev브랜치의 내용을 개발 환경에 배포하기 전에 테스트와 lint등 코드 포맷팅을 한다.
  5. 배포하기 위한 빌드 과정을 거친다.
  6. 코드를 배포한다.
  7. 테스트를 진행한다…

굉장히 많다…

이런 환경에서 관리의 핵심은 인프라를 모듈화해서 어떤 것이 변수로 사용될 수 있는지 잘 설정하는 것임.