깃허브 Travis CI

깃허브에 푸시를 하면 자동으로 Test & Build & Deploy 되도록 만들어보자

 

CI(Continuous Integration - 지속적 통합) : 안정적인 배포 파일을 만드는 과정

CD(Continuous Deployment - 지속적인 배포) : 빌드 결과를 자동으로 운영 서버에 무중단 배포되는 과정

 

CI의 4가지 규칙 (by 마틴 파울러)

1. 모든 소스 코드가 살아있고(현재 실행되고) 누구든 현재의 소스에 접근할 수 있는 단일 지점을 유지할 것

2. 빌드 프로세스를 자동화해서 누구든 소스로부터 시스템을 빌드하는 단일 명령어를 사용할 수 있게 할 것

3. 테스팅을 자동화해서 단일 명령어로 언제든지 시스템에 대한 건전한 테스트 수트를 실행할 수 있게 할 것

4. 누구나 현재 실행 파일을 얻으면 지금까지 가장 완전한 실행 파일을 얻었다는 확신을 하게 할 것

 

1. Travis CI 연동하기

 

Travis CI는 깃허브에서 제공하는 무료 CI 서비스다. 주소가 org에서 com으로 바꼈다.

https://travis-ci.com

 

Travis CI - Test and Deploy Your Code with Confidence

 

travis-ci.org

 

Travis 시작 가이드 링크

https://app.travis-ci.com/getting_started

 

Travis CI - Test and Deploy with Confidence

 

app.travis-ci.com

Travis에 깃허브 아이디로 로그인하고~ 메일 인증하고~ 깃허브 서드파티 추가하고~ 설정에서 repositories, plan 선택하자. 옛날보다 쪼꼼 뭐가 생겼다? 과금 상품도 좀 생기고? 그래도 무료버전 있다 ㅎㅎㅎ

모든 Plan을 사용하기 위해서는 현재 VAT ID. 즉, 사업자 번호가 필요하다... 난 사업자번호가 없어서 에러난다...ㅠㅠ

 

이제 프로젝트에서 .travis.yml 파일을 만들고 아래와 같이 입력.

language: java
jdk:
    - openjdk8
branches:
    only:
        - master

# Travis CI 서버의 Home
cache:
    directories:
        - '$HOME/.m2/repository'
        - '$HOME/.gradle'

script: "./gradlew clean build"

# CI 실행 완료 시 메일로 알람
notifications:
    email:
        recipients:
            - 본인 메일 주소


이제 프로젝트를 커밋, 푸시 하면 빌드가 된 것이 확인된다.

적어둔 메일로도 결과를 전달 받을 수 있다.

 

여기까지 CI를 해보았다.

이후에는 S3와 같은 저장소를 연동해서 빌드파일을 저장하고 저장된 파일을 실제 서버에 배포(CD)해야한다.

CI와 CD를 분리하면 CI시간을 단축할 수 있고! 문제가 발견되어 백업을 해야할 상황에서도 간단해진다!

그런데 오늘은 시간상 여기까지 하고 다음에 구현해보도록 하겠다.

 

모든 Plan이 VAT ID가 필요하기에... 이제 나는 사용할 수 없게되었다... 개인은 무시하는거임? ㅡㅡ

깃허브와 연동을 해줘서 좋았는데... 그래도 CI도구가 이것밖에 없는건 아니니까 침착하자.

 

 

 

 

 

 

 

 

 

'git' 카테고리의 다른 글

Gitweb & apache 원하는 포트로 띄우기  (0) 2022.04.12
firebase deploy  (0) 2021.06.10
window 명령프롬프트에서 git 사용하기 01  (0) 2021.05.18

이 글을 공유하기

댓글

Designed by JB FACTORY