본문 바로가기

Trouble Shooting

🔑 Travis CI 중요한 키값 관리하기

🗣 서론

개발하면서 외부 API와 연동하기 위해 중요한 키값들을 관리하는 파일을 만들고 .gitignore 설정을 했지만, push 하고 키값들이 없어서 travis ci에서 아래와 같이 테스트에 실패했다고 나왔다. 해결해보자.

그림[1] travis ci 테스트 실패

📌 폴더로 관리하기

1) 압축

tar -cvf [압축 파일이름.tar] [.폴더명]

2) 암호화

//1. 터미널에 travis를 설치한다.
gem install travis

//2. 터미널에 travis 로그인 (Github Username과 password를 입력하면 된다)
travis login

//3. 암호화
travis encrypt-file [압축 파일이름] --add

3) gitignore에 압축 파일 추가

해당 압축 파일은 올라가면 안되니, gitignore에 추가해주자.

4) 복호화

.travis.yml파일을 열어보면, before_install에 명령어가 자동으로 추가된 것을 볼 수 있다. 이것은 travis에 코드를 올리면 지정한 파일을 복호화 하라는 명령어이다. 하지만 압축을 해제 해야 하므로 아래 명령어를 before_install: 맨 아래에 써주자.

- tar xvf [압축 파일이름].tar

📌 파일로 관리하기

1) 암호화

참고로, 마지막 3번째 단계에서 파일 경로를 제대로 써주지 않으면 실패한다. (이것 때문에 한참 삽질..)

//1. 터미널에 travis를 설치한다.
gem install travis

//2. 터미널에 travis 로그인 (Github Username과 password를 입력하면 된다)
travis login

//3. 암호화
travis encrypt-file 파일이름 --add

2) 복호화

폴더로 관리하는 것과 똑같다. .travis.yml 파일에 알아서 명령어가 추가되었다. 압축을 해제 할 일이 없으므로, 마지막에 추가할 코드는 없다. github으로 push 해보면 끝.

그림[2] - 정상적으로 배포 완료

📌 참고

 

Django 프로젝트에 Travis-CI 연동 및 Secret Key 암호화

Django 프로젝트에 Travis-CI를 연동하는 방법과 Secret Key를 암호화하는 방법을 다룹니다.

rainsound-k.github.io