본문 바로가기
튜토리얼

Xcode Cloud에서 Ionic Capacitor 앱을 빌드하는 방법

Xcode Cloud를 사용하면 Capacitor JS 앱을 빌드할 수 있고 macOS가 필요 없습니다.

Xcode Cloud에서 Ionic Capacitor 앱을 빌드하는 방법 Capgo 블로그 일러스트

사전 요구사항

튜토리얼을 계속하기 전에…

  • GitHub를 사용 중인지 확인하세요
  • Capacitor 사용하기
  • 앱이 이미 App Store에 배포되었습니다
  • 읽고 싶은 마음 😆…

Ionic 사용은 선택 사항입니다. Cordova에서도 작동할 수 있지만, 직접 테스트해보지는 않았습니다.

가격 관련 중요 사항

Xcode Cloud 가격

https://developer.apple.com/xcode-cloud/

이 서비스는 '무료'이며, 한도까지 가능합니다.
스크린샷에서 가격과 한도를 확인할 수 있습니다 (가격은 튜토리얼 작성 시점 기준이며, 향후 변경될 수 있습니다).

🔴 요구 사항과 가격을 확인했으니, 괜찮으시면 계속 진행하겠습니다…

📣 본 포스트에서는 App Store에 앱이 이미 생성되어 있다고 가정합니다.

소개

Xcode에서 Capacitor 앱을 빌드하려면 몇 가지 설정이 필요합니다.

패키지 준비

빌드 명령어가 다음 파일에 포함되어 있는지 확인하세요. package.json script. 그런 다음 아래와 같은 sync:ios 명령어를 추가하세요.

{
  "scripts": {
    "build": "YOUR BUILD COMMAND",
    "sync:ios": "cap sync ios"
  }
}

이 단계를 거치면 post script가 간단하게 동작합니다.

Post clone 스크립트

이 스크립트는 clone 단계 이후에 Xcode Cloud에서 실행됩니다.

#!/usr/bin/env bash

set -x

export HOMEBREW_NO_INSTALL_CLEANUP=TRUE
# Install CocoaPods
echo "📦 Install CocoaPods"
brew install cocoapods
brew install node@18
brew link node@18

# Install dependencies
# XCode Cloud is literally broken for 2 months now - https://developer.apple.com/forums/thread/738136?answerId=774510022#774510022
npm config set maxsockets 3
npm ci
# or `pnpm install --frozen-lockfile` or `yarn add --frozen-lockfile` or bun install
npm run build 
# or npm run build
npm run sync:ios

이 파일을 프로젝트 루트에 저장하고 이름을 다음과 같이 지정하세요. ios/App/ci_scripts/ci_post_clone.sh

그런 다음 아래 명령어로 이 파일에 실행 권한을 부여하세요. chmod +x ios/App/ci_scripts/ci_post_clone.sh

Xcode workflow 만들기

Xcode를 엽니다 (네, Xcode를 삭제하려면 Xcode가 필요합니다)

그리고 이 탭으로 이동하세요: Xcode 1단계

create workflow를 클릭하고 앱을 선택한 뒤, 아래와 같이 next를 클릭합니다.

Xcode 2단계

왼쪽에서 Edit workflow를 클릭합니다 Xcode 2단계

environments 탭으로 이동하여 아래와 같이 Mac 12.4를 선택하고 적절한 옵션을 체크합니다 Xcode 3단계

시작 조건(start condition)을 선택합니다. 저희와 동일한 build를 사용한다면 중복 빌드를 피하기 위해 branch 대신 Tag를 사용하는 것을 권장합니다.

환경 변수(env variable)를 설정합니다 Xcode 4단계

GitHub 계정 연결하기 Xcode 5단계

Xcode 6단계

그 다음 workflow를 활성화하고 첫 변경 사항을 commit하면, Xcode에서 빌드가 실행되는 것을 확인할 수 있습니다.

빌드 처리 중

Xcode Cloud에서는, 비용은 분 단위로 청구됩니다 CI/CD workflow 실행에 사용한 시간을 기준으로 하며, 경험상 Apple Store에서 빌드가 처리되기까지 약 10~15분이 걸립니다.

비공개 프로젝트의 경우, 빌드당 예상 비용은 최대 $0.008/분 x 5분 = $0.4까지 발생할 수 있으며, 프로젝트 설정이나 의존성에 따라 더 높아질 수 있습니다.

오픈소스 프로젝트라면 전혀 문제되지 않을 것입니다. 참고: 가격.

Xcode Cloud에서 Ionic Capacitor 앱을 빌드하는 방법부터 이어서 보기

사용 중이라면 Xcode Cloud에서 Ionic Capacitor 앱을 빌드하는 방법 CI/CD 자동화를 계획하려면, 다음을 연결하세요 Capgo CI/CD 설정하기 Capgo CI/CD의 제품 워크플로우용, Capgo Native Build Capgo Native Builds의 제품 워크플로우용, Capgo 연동 서비스 Capgo Integrations의 제품 워크플로우용, CI/CD 통합 CI/CD Integration의 구현 세부 사항은, 그리고 GitHub Actions 연동 GitHub Actions Integration의 구현 세부 사항을 참고하세요.

Capacitor 앱용 Live updates

웹 레이어 버그가 라이브 상태라면, 앱 스토어 승인을 며칠씩 기다리지 말고 Capgo를 통해 수정 사항을 배포하세요. 네이티브 변경 사항은 정상 리뷰 절차를 그대로 따르는 반면, 사용자는 백그라운드에서 업데이트를 받습니다.

블로그 최신 글

Capgo는 정말 프로페셔널한 모바일 앱을 만드는 데 필요한 최고의 인사이트를 제공합니다.