'매버릭스'에 해당되는 글 1건

한국시간으로 지난 10월 23일 새벽 2시에 애플의 새 OS인 Mavericks(OS X 10.9, 이하 매버릭스)가 정식 출시되었다.

다양한 기능 개선과 추가로 맥 사용자들은 오래전부터 매버릭스가 출시되기를 고대하고 있었다.


*자세한 기능은 … http://www.apple.com/kr/osx/whats-new/


그 기다림의 끝에서 아주 반가운 소식과 함께 매버릭스가 출시되었는데…

바로 '무료 배포'라는 것이다.


그런데 애플 개발자 사이트에 등록한 개발자들에게는 또 하나의 선물이 있었으니…

OS X Server가 그것이다.


원래 OS X Server는 라이언 버전까지는 OS에 통합되어 일반 데스크탑용 Lion과는 달리

OS X Lion Server라는 별도의 OS로 판매가 되었다. 마치 윈도우 Server와 같은 개념이다.

그러던 것이 Mountain Lion으로 오면서 아예 OS X Server라는 서버 모듈만을 별도로 분리하여

판매를 하게 되었다. 즉, Mountain Lion을 데스크탑에 쓰다가 별도로 OS X Server를 구매하여

설치하면 바로 서버 버전의 OS가 되는 것이다. 기존 OS X Server의 가격은 $19.99이다.





이 OS X Server를 개발자들에게 무료 배포한 것이다.


그런데 이상한 점이 있다.

일반적인 개발자들이라면, 특히 애플 기반의 개발자들이라면 특별히 서버 모듈같은 것은 사용할 일이

없을텐데…


어쨌든 공짜니까! 양잿물보단 훨씬 좋으니까! 일단 다운로드 받아 설치를 해보았다.

그리고 서버 관리 콘솔을 실행시켜 찬찬히 보다보니….그 전에 보지 못했던 것들 중 유독 하나가

눈에 띈다.


Xcode…




상세한 도움말도 지원한다.




그렇다! 이번 업그레이드를 통해 OS X Server에 맥 OS 기반의 개발 IDE인 Xcode가 통합된 것이다.

용도는 CI(Continuous Integration)이다.


프로세스는 이렇다.


서버 콘솔의 Xcode 항목에서 Repositary(SVN과  Git 지원)를 등록한다.

사용할 이름과 URL 그리고 인증 방식을 선택하여 입력하면 된다.







Xcode IDE에서 등록된 Repositary와 연동되는 BOT을 다음과 같이 생성한다.


1. Scheme(빌드 대상)과 이름 및 서버 선택



2. 빌드 스케쥴과 빌드시 수행할 액션 그리고 빌드 전에 clean 수행 여부를 설정



3. 빌드 성공 혹은 실패시 메일을 전달 받을 메일 주소 설정




이렇게 설정해 놓으면 BOT 생성시 등록한 스케쥴에 맞춰 프로젝트 환경에 따라 빌드, 분석, 테스트, Archive 및

최종 커밋까지 자동으로 수행이 된다.


이렇게 진행된 작업은 Xcode IDE 내에서나 웹을 통해 그 결과를 확인할 수 있다.


Xcode 화면





web 화면





사실 CI는 소스코드 무결성 유지와 테스트 및 빌드 그리고 최종 생산품 제출에 이르기까지

그야말로  개발 전과정에 대한 통합이 이루어지는 시스템이다.  이러한 과정에서 개발자들은 보다 신속하게

빌드를 진행할 수 있고 보다 빨리 소스 상의 오류를 감지할 수 있게 된다.


이러한 막강한 기능과 역할에 비해 다른 개발 시스템에 비해 관심도가 그리 높지 않은 형편이다.

꽤 역사가 오래된 Cruise Control부터 최근의 Travis까지 다양한 Tool들도 존재한다.

자세한 내용은 위키피디아 참조 : http://en.wikipedia.org/wiki/Continuous_integration


현재 일하고 있는 곳에서는 Jenkins(구 Hudson)를 사용하고 있는데 Jenkins도 MAC 환경하에서

Xcode 빌드를 지원하여 iOS 개발자로서는 매우 유용하게 사용을 하고 있다.

그런데 새로운 OS X Server와 Xcode5에 이러한 기능이 통합되어 MAC/iOS 개발자들은 최적화된 환경을

제공 받을 수 있게 된 것이다.

(다만 나는 아쉽게도 안드로이드도 함께 관리를 해야 하는 입장이어서 jenkins를 버릴 수는 없다)




(맥 OS X 상에서의 jenkins를 이용한 CI 시스템 구축은 다음 링크를 참조 : http://mazdah.tistory.com/519)


애플은 가장 앞서서 개발자-벤더-사용자가 통합되는 IT 생태계를 만들어왔다. 이 생태계를 통해 이익을 얻는

사람들이 많겠으나 그중 가장 이익을 얻고 있는 것은 개발자가 아닌가 한다. 그리고 그걸 증명이라도 하듯이

애플은 개발자들에게 더 나은 환경을 제공해주고 있다.


비록 국내에서 아이폰의 점유율이 높지 않아 OS X 기반의 개발자들의 입지가 좁아지고 있는 것은 사실이지만

이런 개선들이 지속적으로 이루어진다면 앞으로의 전망은 밝을 것으로 기대된다.

블로그 이미지

마즈다

이미 마흔을 넘어섰지만 아직도 꿈을 좇고 있습니다. 그래서 그 꿈에 다가가기 위한 단편들을 하나 둘 씩 모아가고 있지요. 이 곳에 그 단편들이 모일 겁니다...^^