Xcode Cloud 사용해보기

Apple에서 Xcode Cloud를 2022년 11월부터 서비스를 시작했다. 서비스 초기에 살짝 관심이 있어서 유심히 지켜봤는데 가격 측면에서 너무 비싸고, 보안 문제가 있어서 회사에서는 못쓰겠구나… 생각만 하고 관심을 끄고 살았는데 최근에 가벼운 개인 프로젝트를 하면서 이번 기회에 한번 사용해볼까? 싶어서 사용해본 기록을 남겨볼려 한다.

일단 개인적으로 가장 중요하다고 느껴지는 가격 측면이다.

현재는 달마다 25시간 사용이 무료지만 2024년 부터는 15달러씩 구독해야하는 것으로 보인다… (유료 애플 개발자 계정이면 25시간 정도는 무료로 계속 제공해줘야 하는거 아닌가.. 😞)

일단 현재는 무료니까 한번 프로젝트에 Xcode Cloud를 구성해보자.

구성하는 방법은 매우 간단한데, 대부분의 작업이 Xcode를 통해 작업하는 것이 인상적이였다.

일단 프로젝트의 빌드하려는 Target의 Scheme에서 Archive가 활성화 되어있는지 확인해야 한다.

위 사진과 같이 Archive 체크박스가 활성화 되어있는지 확인한 뒤, 활성화가 되어있지 않다면 체크해주자.

그 다음은 Xcode Report navigator에 들어가서 Cloud를 선택해준뒤 Get started를 선택해주면 된다.

iOS 플랫폼의 단일 Target만 갖고 있으니 그냥 Next…

룰을 설정할 수 있는 화면이 나타난다. Edit workflow를 통해 본인이 원하는 룰로 변경할 수 있다.

빌드 환경을 설정할 수 있다. Clean 옵션을 활성화 하면 캐시 처리없이 빌드를 진행한다. (단, 빌드가 더 길어질 수 있음)

어떤 브랜치를 대상으로 빌드를 자동 시작할 것인지, 특정 조건을 만족시키면 자동 시작할 건지에 대해 설정할 수 있다.

어떤 방법으로 배포할 것인지 선택할 수 있다. 총 3가지의 방법을 제공하고 있는데,

  1. None: CI만 수행하고, TestFlight 배포 대상은 아무것도 선택되어 있지 않은 상태로 Build
  2. TestFlight (Internal Testing Only): 내부 테스트 배포로만 진행이 되고, App Store에 빌드를 선택할 수 없는 상태로 Build
  3. TestFlight and App Store: 테스트 플라이트와 App Store에 업로드할 수 있는 빌드

필자는 테스트가 목적이니 None으로 설정하였음.

Workflow가 결정되었다면 다음 과정은 Git과 연동해야한다.

접근 권한에 대해 요청하게 되는데, Grant Access를 통해 접근 권한을 부여할 수 있다.

기본 설정이 위처럼 All repositories로 되어있어서 살짝 걱정된다면 아래의 Only select repositories를 선택해줘도 무방하다.

Install 버튼을 눌러주자

버튼을 눌러주면 App Store Connect 페이지가 나타나게 되는데 Xcode에서 계속 버튼을 눌러주자.

오..!! Complete 버튼을 누르면..?!

…?! 제대로 구성되지 않은 것 같은데..? OK 버튼을 누르고 다시 Get started 버튼을 눌러주면 제대로 추가가 된다. (무슨 버그지)

위 화면이 나타나면 Xcode Cloud 구성이 놀랍게도 끝이다! (너무 간편해서 놀람…)

Start Build 버튼을 눌러보자.

본인이 설정한 빌드 환경에서 실제 빌드가 이루어지고 있었다. 구성도 너무 간편하고 Xcode에서 바로바로 확인할 수 있는게 Apple의 Xcode Cloud의 강점이다. (가격만 어떻게.. 개인에게 저렴하게 뿌려준다면…)

추가적으로 CI/CD의 필수적인 기능인 Webhook도 구성할 수 있으며

Slack 연결을 통해 메세지(알림)을 빌드 결과에 대한 알림을 보내줄 수 있다!

iOS 개발자 입장에서는 CI/CD를 신경쓰지 않고 코드에만 집중할 수 있는 환경이..!

너무 좋은 기능인만큼 개인적인 희망으로는 애플이 개인에게는 가격을 좀 낮춰줬으면 좋겠다… 🙏