iOS 및 Android 앱 릴리즈를 더 빠르고 오류가 없는 것으로 만들고 싶으신가요? CI/CD PIPELINE Capacitor 앱은 자동 빌드, 테스트 및 배포를 통해 70%까지의 릴리즈 시간을 단축하고 오류를 60%까지 줄일 수 있습니다. 이 가이드에서는 환경 설정부터 라이브 업데이트를 자동화하는 방법까지 모든 것을 다룹니다. Capgo.
중요한 점:
- CI/CD는 Capacitor 앱에 중요합니다: 빌드 속도를 78%까지 높이고 스토어에서 거부를 60%까지 줄입니다.
- 필수 도구: Xcode, Android Studio, CocoaPods, 및 더 많은 것들.
- Pipeline 설정: 자동화 작업으로
npx cap sync, 의존성 캐싱 및 플랫폼별 빌드. - 실시간 업데이트와 Capgo: phased rollout 및 롤백 보장과 함께 post-release 업데이트 활성화.
빠른 설정 단계:
- 환경 준비: iOS 및 Android용으로 필요한 도구 설치.
- 프로젝트 구성:
capacitor.config.ts및 환경 변수를 안전하게 업데이트하고 관리. - pipeline 빌드: __CAPGO_KEEP_0__ 의 종속성 설치, 빌드 및 테스트를 자동화하세요.
- 최적화: 캐싱, 병렬 빌드 및 조건부 워크플로우를 사용하여 성능을 최적화하세요.
- 실시간 업데이트: Capgo 에서 안전하고 OTA 업데이트를 위한 단계적 롤아웃을 지원하는 Capgo 를 통합하세요.
CI/CD를 사용하면 Capacitor 앱은 오류와 수동 개입을 최소화하면서 더 빠르고 smoother한 릴리즈를 달성할 수 있습니다. 워크플로우를 최적화하기 위해 준비되셨나요? 시작해 보세요!
모바일 기능과 CI/CD PIPELINE을 통합하세요.
CI/CD 환경 준비
CI/CD의 기본 개념을 이해한 후, 환경 설정을 시작하세요. 이는 신뢰할 수 있는 자동화의 근간입니다.
도구 및 소프트웨어 설정
다음 키 도구가 설치되어 있는지 확인하세요:
iOS 개발을 위해:
- Xcode 14 이상
- Xcode Command Line Tools
- CocoaPods 의존성 관리를 위해
Android 개발을 위해:
- Android Studio
- Android SDK 33 이상
- Java Development Kit (JDK)
Xcode Command Line Tools이 설치되어 있는지 확인하려면 다음 명령어를 사용하세요.
xcode-select -p
__CAPGO_KEEP_0__ 생성을 위한 Capacitor 프로젝트

Capacitor 프로젝트는 CI/CD 워크플로우를 위해 올바르게 구성되어야 합니다. 이 설정의 핵심은 다음과 같습니다. capacitor.config.ts 이 파일은 CI/CD 요구 사항에 따라 프로젝트를 맞춰주는 것입니다.
const config: CapacitorConfig = {
appId: 'com.example.app',
webDir: 'build',
ios: {
scheme: 'MyApp'
}
}
환경 변수 설정
환경 변수를 안전하게 관리하는 것은 CI/CD pipeline와 환경 설정을 연결하는 데 중요한 부분입니다.
정의해야 할 주요 변수:
: 배포 단계를 지정합니다 (예:
BUILD_ENV: __CAPGO_KEEP_0__ 서명 인증서production)IOS_SIGNING_IDENTITY: Your code signing certificateANDROID_KEYSTORE_PATHAndroid 빌드의 경우 동적으로 서명 인증서를 생성합니다.
environment variables local.properties __CAPGO_KEEP_0__ 파일은 CI 프로세스 중에:
echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties
iOS 빌드와 작업할 때, CI 플랫폼이 macOS agent를 지원하는지 확인하세요.
환경이 준비되었는지 확인하려면:
node --version | grep "v16" && xcodebuild -version | grep "Xcode 14" || exit 1
__CAPGO_KEEP_0__ 앱의 앱 스토어 승인 확률을 높이기 위해, 키와 자격 증명을 적절하게 관리하세요. 이에 대한 자세한 통계는 이전에 언급되었습니다. [1].
CI/CD PIPELINE을 생성하는 방법
환경이 준비되면, __CAPGO_KEEP_0__ 앱에 대한 CI/CD PIPELINE을 설정하는 것이 다음 단계입니다. Capacitor app의존성 설치 및 업데이트
CI/CD 환경에서 의존성 관리는 엄격한 버전 관리가 필요합니다. 시작하려면 깨끗한 설치 프로세스를 사용하세요:
빌드 속도를 높이려면 의존성 캐싱을 사용하세요. 예를 들어:
npm install --ignore-scripts
npm install @capacitor/cli
Azure DevOps __CAPGO_KEEP_0__ 사용자는 이 설정으로 빌드 시간이 40-60% 향상된 것을 보았습니다.:
- task: Cache@2
inputs:
key: 'npm | "$(Agent.OS)" | package-lock.json'
path: |
node_modules
android/.gradle
ios/Pods
iOS 및 Android 빌드 설정
iOS 및 Android両 플랫폼을 위한 빌드 설정을 구성하는 방법입니다.
iOS 빌드 구성:
steps:
- task: InstallAppleCertificate@2
inputs:
certSecureFile: 'certificate.p12'
certPwd: $(P12_PASSWORD)
- script: |
xcodebuild -workspace ios/App/App.xcworkspace -scheme App -configuration Release -archivePath ios/App/App.xcarchive archive
Android 빌드 구성:
cd android
./gradlew bundleRelease
테스트 및 배포 단계
플랫폼 테스트를 매트릭스 전략을 사용하여 병렬로 실행합니다.
test:
steps:
- run: npm run test:unit
- run: npm run test:e2e
- name: Run Platform Tests
matrix:
platform: [ios, android]
run: npm run test:${{ matrix.platform }}
배포 시 플랫폼별 아티팩트 처리를 설정합니다.
| 플랫폼 | 아티팩트 유형 | 배포 채널 |
|---|---|---|
| iOS | .ipa | App Store Connect |
| 안드로이드 | .aab | Google Play Console |
파이프라인 실행 시간을 크게 줄일 수 있는 병렬 빌드 설정이 올바르게 구성되면.
빌드가 검증되고 패키징이 완료되면, Capgo (다음 섹션에서 설명)에 대해 라이브 업데이트로 넘어가세요.
sbb-itb-f9944d2
추가 Capgo 라이브 업데이트용

CI/CD 프로세스를 향상시키기 위해 Capgo을 통합하면 릴리스 후 업데이트를 허용합니다. 설정 방법은 다음과 같습니다:
Capgo Pipe라인 구성
첫 번째로 pipeline 환경에서 Capgo CLI 을 설치합니다.
steps:
- name: Install Capgo CLI
run: npm install -g @capgo/cli
- name: Configure Authentication
env:
CAPGO_KEY: ${{ secrets.CAPGO_API_KEY }}
CI/CD 라이프 사이클을 확장하고 자동 빌드 및 배포 프로세스에 업데이트 관리를 통합하는 이 추가 기능은 다음과 같이 업로드 명령을 빌드 단계 이후에 포함합니다:
업데이트를
- name: Upload Update
run: |
capgo upload --api-key $CAPGO_KEY --bundle ./build/app-release.apk
capgo deploy v${VERSION} --channel production
안전하게 수행하려면유효성 검사 설정을 다음처럼 구성합니다:
{
"verification": {
"checksum": "strict",
"certificatePinning": true,
"updateTimeout": 500
}
}
Capgo 기능 소개
| 기능 | 설명 |
|---|---|
| 끝-to-끝 암호화 | 배포 오류를 크게 줄입니다. |
| 채널 기반 배포 | 업데이트를 특정 환경에 맞게 조정합니다. |
| 단계적 배포 | 업데이트를 점진적으로 배포합니다. |
OTA 업데이트 지침
배포 후에 다음 주요 지표를 추적하여 테스트 프로세스를 개선하세요.
단계적 배포 전략
업데이트 배포를 제어하는 데 사용하는 스테이지 롤아웃을 사용하십시오:
- name: Staged Rollout
run: |
capgo deploy v1.2.3 --group "beta-users" --rollout 10%
capgo deploy v1.2.3 --rollout 50%
업데이트 모니터링
이러한 지표를 지켜보십시오:
- 첫 24시간 내에 40-60%를 목표로 하십시오.크래시 프리 세션
- : 첫 24시간 내에 99.5% 이상 유지하십시오.인증 시간
- : 500ms 이하로 유지하십시오.허용 가능한 수준을 초과하는 크래시가 발생하면 롤백을 자동화하십시오:
pipeline 성능 향상
- name: Rollback Check
run: |
if [ $(capgo stats --version v1.2.3 --metric crashes) -gt 2 ]; then
capgo rollback --channel production
fi
pipeline 성능 향상에 기여하는 세 가지 주요 영역에 집중하면 pipeline 성능 향상에 눈에 띄는 개선이 있을 수 있습니다.
Focusing on three key areas can lead to noticeable improvements in your pipeline:
속도 최적화
웹 전용 변경 사항을 사용할 때 npx cap sync 전체 네이티브 재빌드 Skip을 통해 시간을 절약할 수 있으며, 재빌드 시간이 약 40% 줄어듭니다. 이 방법을 구현하는 방법은 다음과 같습니다.
- name: Build Strategy
run: |
[ "$WEB_ONLY" = true ] && npx cap sync || (./gradlew assembleRelease && xcodebuild ...)
이 접근 방식은 필요로 하는 컴포넌트만 재빌드되도록 하여 프로세스를 단순화합니다.
버전 관리 자동화
버전 관리를 자동화하면 워크플로우가 단순화됩니다. 다음 스크립트를 사용하여 버전 및 빌드 번호를 동적으로 설정할 수 있습니다.
- name: Set Version
run: |
VERSION=$(node -p "require('./package.json').version")
BUILD_NUMBER=$GITHUB_RUN_NUMBER
echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV
echo "BUILD_ID=${BUILD_NUMBER}" >> $GITHUB_ENV
또한 이 구성으로 자동화된 의미론적 버전 관리를 설정할 수 있습니다.
{
"scripts": {
"version": "standard-version",
"build:prod": "npm version patch && ionic build --prod"
}
}
이러한 관행은 다음 메트릭스와 같은 pipeline 성능 추적 및 개선에 대한坚固한 프레임워크를 제공합니다.
- 단계별 빌드 시간
- 캐시 효율성 (Hit/Miss 비율)
- Peak 리소스 사용량
다중 환경 설정
다양한 환경을 관리하는 것은 환경에 따라 구성을 사용하여 단순화 될 수 있습니다. 예를 들어, 다음과 같은 설정을 사용할 수 있습니다:
| 환경 | 구성 파일 |
|---|---|
| 개발 | .env.dev |
| 스테이징 | .env.staging |
| 운영 | 보안 보관함 |
이 스크립트를 사용하여 환경을 동적으로 구성할 수 있습니다:
- name: Configure Environment
env:
API_KEY: ${{ secrets.ENV_SPECIFIC_API_KEY }}
BUNDLE_ID: ${{ parameters.bundleId }}
run: |
echo "ENVIRONMENT=${{ parameters.environment }}" >> $GITHUB_ENV
echo "API_ENDPOINT=${{ parameters.apiUrl }}" >> $GITHUB_ENV
이 구성과 Capgo의 채널 기반 배포를 pair하면, 환경에 따라 정확한 업데이트를 제공하여 smoother 롤아웃과 더 나은 애플리케이션 동작을 제공합니다.
요약
CI/CD의 개발 역할
Capacitor 앱을 위한 CI/CD pipeline을 사용하면 workflow의 효율성이 크게 향상됩니다. 업계 데이터에 따르면, 팀은 50-70% 빠른 릴리스 주기 iOS와 Android 빌드를 동시에 수행함으로써 [3]. 의존성 설치 및 플랫폼 동기화와 같은 작업을 자동화함으로써 배포 오류를 40-60% [1][2].
예를 들어, Azure DevOps pipeline을 사용하는 팀은 순차적인 빌드 단계와 Xcode 패키징과 같은 자동화된 프로세스를 사용합니다. 또한 개발 및 프로덕션 환경에 대한 매개 변수화 된 환경을 사용합니다. 이 접근 방식은 Gradle 및 Xcode CLI 작업의 수동 작업이 필요하지 않도록 하여, 매번 신뢰할 수 있는 아티팩트 생성을 보장합니다.
이러한 개선 사항은 Capgo와 pair할 때 업데이트 관리를 단순화하는 데 기초가 됩니다.
Capgo for Update Management
Capgo는 CI/CD pipeline과 완벽하게 호환되며, 앱 스토어 정책 준수와 동시에 즉시 업데이트를 제공합니다. 업데이트는 pipeline 내에 구축된 자동화된 테스트 게이트를 통과한 후에만 배포됩니다.
자동화된 빌드와 phased rollouts를 combination한 팀은 다음과 같은 놀라운 결과를 달성합니다: 7일 이내 80%의 사용자 커버리지 1시간 이내 rollback 가능성
병렬 배포 트랙을 실행하는 일반적인 전략을 사용합니다. 자동화된 빌드는 내부 테스트에 사용되며, phased rollouts는 사용자 세그먼트를 대상으로합니다. 이로써 업데이트는 빠르면서도 안전하며, 엄격한 자동화된 테스트 게이트에 의해 뒷받침됩니다. [1].
FAQs
How to create a Capacitor app?
Capacitor 앱을 만들려면 몇 가지 단순한 단계를 거치면 됩니다:
-
환경 설정: Node.js와 npm를 시스템에 설치한 후, Ionic CLI을 사용하여 Capacitor 지원을 시작하는 새로운 프로젝트를 생성하세요.
ionic start myApp tabs --capacitor -
플랫폼 지원 추가: iOS 또는 Android와 같은 목표 플랫폼을 추가하세요.
npx cap add ios npx cap add android -
웹 code 동기화: 네이티브 플랫폼과 일치하도록 웹 code를 동기화하기 위해 다음 명령어를 실행하세요.
npx cap sync
동기화 단계는 플랫폼 간 일관성을 유지하고 CI/CD PIPELINE에서 smooth한 작동을 보장하기 위해 중요합니다. 환경 설정에 대한 자세한 내용은 Tools 섹션을 참조하세요.
Capacitor 앱 CI/CD 설정
: __CAPGO_KEEP_0__ 앱을 사용하는 경우 Capacitor 앱 CI/CD 설정 CI/CD 자동화 계획을 수립하기 위해 연결하세요. Capgo CI/CD Capgo CI/CD에서 제품 워크플로우를 위해 Capgo 네이티브 빌드 Capgo 네이티브 빌드에서 제품 워크플로우를 위해 Capgo 통합 Capgo 통합에서 제품 워크플로우를 위해 CI/CD 통합 CI/CD 통합 구현 세부 사항에 대해 GitHub 액션 통합 GitHub 액션 통합 구현 세부 사항에 대해