안드로이드 프로젝트 빌드 유지(CI)를 위한 팀시티(TeamCity) 설치

이 글은 안드로이드 프로젝트의 빌드를 유지하는 세 개의 글 중에 첫 번째이다.

팀시티(TeamCity)는 JetBrain에서 개발한 지속 통합(CI, Continuous Integration)을 지원하는 툴이다. 지속 통합 툴로 유명한 것으로는 Jenkins, Travis, 그리고 Cruise Control등이 있다. 지속 통합에 대한 개념은 아래의 링크에서 확인해 보자.
https://en.wikipedia.org/wiki/Continuous_integration
http://happystory.tistory.com/89

팀시티는 기본 무료로 사용할 수 있지만, 프로젝트 개수와 볼륨의 크기에 따라 상업용으로 구매해야 할 수도 있다. 라이선스에 대한 내용은 라이선스 페이지 에서 확인할 수 있고, 현재는 아래의 사용까지는 무료로 사용할 수 있다.

20 build configurations
3 build agents

이 정도면 작은 기업에서는 구입하지 않아도 충분히 사용할 수 있을 것이다. 이제 팀시티를 설치하고, 소스 저장소에 있는 안드로이드 앱을 연결해서 지속 통합을 하는데 필요한 환경을 설치하는 방법을 살펴보자. 아래 내용은 안드로이드 개발환경이 없는 윈도 서버(2012)에 설치하는 것을 가정한다.

1. 자바, 안드로이드 SDK 설치

팀시티로 안드로이드 앱을 빌드하는데는 자바와 안드로이드 SDK가 필요하고, 자바와 안드로이드 SDK를 설치하는 것을 살펴보자.

1.1 자바 설치

자바는 오라클 자바 사이트에서 내려받아 설치한다. 설치한 후에 “내 PC > 속성(R) > 고급 시스템 설정 > 고급 > 환경 변수 > 시스템 변수”에 JAVA_HOME을 추가한다.

1.2 안드로이드 SDK 설치

안드로이드 SDK는 안드로이드 앱을 개발/빌드/실행 하는데 필요한 라이브러리, 툴, 에뮬레이터 환경을 가지고 있다. 이 툴은 개발툴 다운로드 페이지에서 내려받을 수 있고, 이 페이지 아래에 “Get just the command line tools”의 하위에 SDK만을 별로도 다운로드 받을 수 있게 분리되어 있다.

여기에서는 윈도 2012 서버에 android-sdk_r24.4.1-windows.zip 파일을 다운로드 받아서 C:\Dev\android-sdk에 압축을 풀어서 저장하고 사용한다. SDK가 준비되면, “내 PC > 속성(R) > 고급 시스템 설정 > 고급 > 환경 변수 > 시스템 변수”에 ANDROID_HOME 변수를 추가하고 SDK 위치를 설정한다. 아래 이미지에 자바와 안드로이드 SDK가 설정된 것을 볼 수 있다.

system_variable_settings

SDK 설치를 완료하면, SDK 매니저(Manager)를 실행해서 필요한 툴, 플랫폼, 저장소 소스등을 내려받는다. 아래 이미지는 SDK 매니저를 실행해서 필요한 툴, 플랫폼(화면은 없지만, 앱에서 사용하는 플랫폼은 선택해야 한다), 그리고 라이브러리 및 툴등을 선택한 화면이다.

sdk_image_01

위 이미지는 필요한 빌드툴을 선택해서 설치하는 화면이다.

sdk_image_02

위 이미지는 필요한 라이브러리등을 선택한 화면이다.

SDK 매니저를 사용해서 필요한 것들의 설치를 완료하면 팀시티를 사용해서 빌드할 수 있는 기본 환경 구성을 완료한 것이다.

2. 팀시티(TeamCity) 설치

팀시티는 팀시티 웹 사이트에서 다운로드 메뉴를 클릭해서 내려받고 설치한다. 여기에서 사용하는 버전 정보는 다음과 같다.

Version : 10.0.2
Build: 42234
Released: September 19, 2016

이제 팀시티를 설치해 보자. 아래에 설치하면서 필요한 설정이 있는 부분들을 기준으로 살펴본다.

2.1 다운로드 받은 파일을 실행하고, 설치 위치를 확인한다.

아래의 왼쪽 이미지가 설치를 시작하는 화면이고, 오른쪽 화면이 설치 위치(C:\TeamCity)를 설정하는 화면이다.
teamcity_install_01 teamcity_install_02

2.2 웹 서비스를 위한 서버의 포트를 설정하고, 각종 설정을 확인한다.

왼쪽 화면이 팀시티가 실행하면서 접속하는 웹 서비스 포트를 설정하는 화면이고, 오른쪽은 설정된 값들을 확인하고 추가할 수 있는 화면이다.

teamcity_install_03 teamcity_install_04

2.3 팀시티의 시작 계정을 설정한다.

이 단계에서는 팀시티를 구성하는 서버/에이전트를 런칭하는 계정을 설정하고, 서비스를 시작하도록 설정한다. 아래 화면을 보면 시스템 계정으로 시작시키는 것을 알 수 있다. 시스템 계정으로 시작시키기에 위에서 설정한 JAVA_HOME과 ANDROID_HOME을 내 계정이 아닌 시스템으로 설정한 이유이기도 하다.

teamcity_install_05 teamcity_install_06 teamcity_install_07

2.4 팀시티 웹 서비스에 연결해서 필요한 설정을 추가한다.

teamcity_install_08 teamcity_install_09

위 화면은 팀시티 설치를 완료하고, 팀시티 웹서비스에 연결해서 필요한 설정을 시작하는 화면이다. 오른쪽 화면에서 팀시티의 데이터를 저장하는 위치를 설정한다. 기본으로 C:\ProgramData 폴더가 지정되어 있는데, 이 폴더는 윈도에서 앱들의 데이터 저장 위치로, 기본 설정이 숨김폴더이다. 그래서 저장하는 데이터를 쉽게 확인할 수 있게 저장 위치를 C:\TeamCityData로 변경한다.
teamcity_install_10

위 화면은 팀시티가 사용할 데이터베이스를 선택하는 화면이다. 데이터베이스로 Internal(HSQLDB), PostgreSQL, MySQL, Oracle, MS SQL Server를 지원한다. 여기에서는 프로젝트가 많지 않아서, Internal(HSQLDB)을 선택한다.

teamcity_install_11 teamcity_install_12

다음은 라이선스 동의 화면으로, “Accept license agreement”는 선택해야 하고, “Send anonymous usage statistics to TeamCity development team”은 옵션이라서, 선택을 해제한다. 그리고 우측의 화면에서 관리자 계정을 생성한다.

teamcity_install_13

이 화면은 관리자 계정을 생성한 후에, 로그인된 화면이다.

이제 팀시티 설치가 마무리 되었다. 다음 포스트에서 팀시티로 안드로이드 앱을 지속적으로 빌드하는데 필요한 설정을 살펴보겠다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.