Travis
- Ruby 로 작성된 오픈소스 기반의 CI(Continuous Integration), CD(Continuous Delivery/Development) 도구이다.
- GitHub 의 프로젝트를 연결하여 테스트, 빌드 및 배포가 가능하다.
CI(Continuous Integration)/CD(Continuous Delivery/Development)
여기서 말하는 CI 란 '지속적인 통합' 으로 개발자가 개발한 소스의 빌드 과정을 주기적으로 수행하여 소스 통합 과정에서 발생하는 오류를 사전에 해결하고 이런 과정들에 필요한 시간을 줄일 수 있도록 해준다. CI 를 통해 빌드, 테스트를 자동화 하는 것이 가능하다는 이야기이다.
CI 를 통해 빌드, 테스트를 자동화 하는것이 성공하면 배포 단계로 넘어가야 하는데, 배포 단계 자동화도 가능하며, 배포 자동화에 대한 개념을 CD 라고 한다.
팀 단위 개발에 있어서 CI 는 매우 유용하게 사용 되는 도구이다.
(Java, Spring 을 이용한 서버사이드 개발에서는 CI Server 로 Jenkins 를 사용했었다. GitLab 의 프로젝트로 Push 하면 Jenkins 가 Testcase, Coding convention 등을 체크하고 빌드가 완료되면 GitLab 의 Commit 메세지에 빌드 결과(Success/fail)를 남기고, 성공시에만 코드를 머지하는 방식으로 사용했던 경험이 있다.)
시작하기
1. Travis 를 설정하려는 GitHub Repository 를 Clone 한다. (Repository 가 없는 경우 'New Repository' 한다.)
2. Travis 에 가입한다. (Sign up with GitHub)
3. Travis 에서 'Legacy Services Integration' 항목에서 Travis 를 설정하려는 프로젝트의 엑세스 권한을 활성화 해준다.
4. (선택) Private Dependencies 를 위해 프로젝트에 GitHub access token 생성/추가
- Creating a personal access token for the command line 을 따라 Access token 생성
5. Clone 한 프로젝트의 Root Path 에 '.travis.yml' 파일을 생성 (.travis.yml 작성법 참고)
- node_js: stable (빌드하려는 node 버전 설정)
- script: - npm run build (package.json 의 build script 설정)
- deploy
- local-dir: ./dist (빌드, 배포하려는 디렉토리 설정)
- github-token: $GITHUB_TOKEN (환경변수로 등록된 변수 설정)
.gitignore 에 등록된 ./dist 배포하기
'Front-End > ETC' 카테고리의 다른 글
CSS Position 에 대하여 (0) | 2018.09.11 |
---|---|
CSS 렌더링 에 대하여 (0) | 2018.09.01 |
SPA(Single Page Application) (0) | 2018.08.16 |
Babel, Polyfill 그리고 Babel-Polyfill (1) | 2018.08.07 |
GitHub 커밋에 ESLint 를 이용한 Code Convention 지키기 (1) | 2018.08.06 |