Travis CI 적용(2)

김현진·2020년 10월 13일
0

CI,CD

목록 보기
2/3

1편에 이어서 내용을 작성하겠습니다.

Travis CI를 통해 test를 진행을 할 수 있는데 그러기 위해서는 travis.yml파일을 작성해주어야 합니다.

YAML: Ain’t Markup Language 약자이며 yml이라고도 불린다. 쉽게 설명한다면 데이터를 사람이 쉽게 읽을 수 있는 형태로 표현을 할 수 있습니다.(json, xml파일등에 비해)

.travis.yml 파일

sudo: required

language: generic

services: 
  - docker

  before_install:
    - echo "start creating an image"
    - docker build -t wmc15156/docker-react-app -f Dockerfile.dev

  script:
    - docker run -e CI=ture wmc15156/docker-react-app npm run test -- --coverage

  after_success:
    - echo "Test success"

sudo: required => 관리자 권한부여

language: generic => generic 언어 사용

services: docker => docker 환경에서 프로젝트(앱)을 실행하므로

before_install:
    - echo "start creating an image"
    - docker build -t wmc15156/docker-react-app -f Dockerfile.dev .

=> script를 실행하기전에 실행 할 명령어 , echo 터미널창에 출력 , docker 파일 빌드

docker build -t 도커 이미지 이름 지정 -f 도커파일이름 위치

제일 마지막에 점은 현재 디렉토리에 Dockerfile.dev가 있기때문에 적어줘야한다. Dockerfile이라는 이름으로 되어 있다면 -f 옵션은 따로 적어주지 않아도 됨.

script:
    - docker run -e CI=ture wmc15156/docker-react-app npm run test -- --coverage

=> docker 실행 (e 옵션은 Travis CI를 사용할려면 적어줘야 하는 옵션 npm run test는 package.json에 있는 test 스크립트이며 -- --coverage 좀 더 상세내역을 볼수 있음

after_success:
- echo "Test success"

=> script를 정상적으로 수행했다면 터미널에 Test success 출력

이전 편에서 내용을 적지 않은내용이지만 Travis CI에 toggle 버튼을 활성화를 시키면 선택한 프로젝트가 깃헙으로 push가 되면 Travis C가.travis.yml을 실행시켜준다.

그럼 push를 한 다음 https://travis-ci.org/에 들어간 다음 확인 gogo

after_success 가 실행된걸 볼 수 있다.

실행하다가 에러가 2개 떳는데 우선 첫번째는 yml 파일자체가 들여쓰기로 문법을 검사해 들여쓰기를 틀려서;; 또 하나는 before_install에서 제일 마지막에 . 안찍어서 build 실패 ;;

profile
기록의 중요성

0개의 댓글