2026년 Cordova 앱을 위한 최고의 CI/CD 플랫폼은 보통 Android는 Linux에서, iOS는 macOS에서 Cordova CLI를 실행할 수 있는 범용 CI입니다. GitHub Actions, GitLab CI, Bitrise, Codemagic, Appcircle, CircleCI, Azure DevOps 등이 여기에 해당합니다. 다만 이들이 App Center와 Appflow에서 Cordova 팀이 누리던 관리형 live update 서비스를 대신해 주지는 못합니다. 이 비교에서는 각 옵션의 빌드 지원, 서명, 스토어 배포, Live Updates, 장기 전망을 다룹니다.
Cordova CI/CD의 현주소
Cordova 생태계를 만들어 온 관리형 서비스 세 가지가 모두 사라졌거나 곧 종료됩니다:
| 서비스 | 상태 |
|---|---|
| PhoneGap Build | 2020년 10월 1일 서비스 종료 |
| Microsoft App Center (빌드, 배포, CodePush) | 2025년 3월 31일 서비스 종료 |
| Ionic Appflow (빌드, Live Updates) | 2025년 2월부터 신규 고객 유치 중단, 2027년 12월 31일 서비스 종료 |
Cordova 프레임워크는 여전히 플랫폼 릴리스를 제공합니다. 이제 개발자가 직접 처리해야 하는 부분은 빌드 주위 작업입니다: 서명 저장, 스토어 업로드, 버전 번호, 그리고 OTA 업데이트.
오늘 바로 작동하는 파이프라인이 필요하시다면 다음으로 시작하세요: Cordova 앱용 CI/CD완전한 GitHub Actions 워크플로우가 포함되어 있습니다. 이 글은 어디서 실행할지 선택하는 데 도움을 드립니다.
Cordova 팀이 비교해야 할 사항
- Cordova 지원 여부. 플랫폼에 Cordova 단계나 템플릿이 있는지, 아니면 직접 스크립트를 작성해야 하는지 확인하세요.
cordova build스크립트 작성도 괜찮습니다. 어디서든 동일한 세 가지 명령어만 사용하면 되니까요. - Xcode 26이 설치된 macOS 러너 2026년 4월 28일부터 App Store Connect가 요구하는 사양입니다.
- 서명 저장소 Android keystore, iOS 인증서, 프로비저닝 프로필을 위한 저장 공간.
- 스토어 배포 TestFlight 및 Google Play 트랙으로
- Live Update 웹 레이어 수정에
- Git 호스팅 및 셀프 호스팅여전히 Cordova를 사용하는 엔터프라이즈 및 정부 앱에 중요합니다.
기능 매트릭스
| 플랫폼 | Cordova 지원 | iOS용 macOS | 관리형 서명 | 스토어 배포 | Cordova Live Update | 자체 호스팅 옵션 |
|---|---|---|---|---|---|---|
| GitHub 작업 | 스크립트 기반 CLI | Apple Silicon 호스팅 | Secrets 전용 | fastlane 또는 스크립트 | 아니요 | 자체 호스팅 runner |
| GitLab CI | 스크립트 기반 CLI | 호스팅 (beta, Premium/Ultimate) 또는 self-managed | 보안 파일, 변수 | fastlane, 스토어 연동 | 아니요 | 네, GitLab 전체 지원 |
| Bitrise | Cordova 전용 스텝 | Apple Silicon 호스팅 | 지원 | 내장 steps | 아니요 | 아니요 |
| Codemagic | 문서화된 Ionic Cordova 워크플로 | 호스팅 Mac 미니 | 지원 | 내장됨 | 아니요 | 아니요 |
| Appcircle | 커스텀 스크립트 단계 | 호스팅 또는 자체 구축 | 지원 | 내장됨 | 아니요 | 네, Appcircle 서버 |
| CircleCI | 스크립트 기반 CLI | Apple Silicon 호스팅 | 컨텍스트만 | fastlane | 아니요 | 자체 호스팅 runner |
| Azure DevOps | 스크립트 기반 CLI | Microsoft 호스팅 | 보안 파일 및 설치 태스크 | 스토리지 확장 작업 | 아니요 | 자체 호스팅 에이전트, Azure DevOps Server |
| Xcode Cloud | 경유 ci_scripts 훅, iOS 전용 |
Apple 관리형 | 자동 | 내장됨 | 아니요 | 아니요 |
| VoltBuilder | zip 업로드, Cordova 및 Capacitor | 관리형 | 업로드 시 인증서 포함 | 스토어 배포 가능 출력 | 아니요 | 아니요 |
| Ionic Appflow는 | 최상급 지원 | 관리형 | 지원 | 지원 | 예, 2027년 말까지 | 아니요 |
| Capgo (Live Update) | @capgo/cordova-updater 플러그인, Cordova iOS 7+ / Android 13+ |
Cordova용 빌드 서비스가 아닙니다 | 해당 없음 | 해당 없음 | 네, 채널과 롤백 지원 | 네, 오픈 소스 백엔드 제공 |
Capgo은 어떤 CI를 선택하든 이를 대체하지 않고 나란히 작동합니다. CI가 Cordova 바이너리를 빌드하고, Capgo Live Update 사용하기 설치된 앱에 웹 전용 변경 사항을 배포합니다. Capgo 빌드 Capacitor 프로젝트용으로 문서화되어 있으므로 Cordova 바이너리 빌드 옵션은 아닙니다.
플랫폼별로
GitHub 작업
GitHub에서 Cordova 팀이 가장 많이 선택하는 플랫폼. Android 빌드는 ubuntu-latest 포함 actions/setup-java에서, iOS 빌드는 macos-26 Xcode 26이 사전 설치된 환경에서 수행됩니다. 시크릿에서 keystore와 .p12 를 디코딩하고 build.json를 작성한 뒤 cordova build를 실행합니다. 업로드는 fastlane, xcrun altool또는 커뮤니티 Play 업로드 액션을 사용합니다. Cordova 전용 기능은 없지만, 사용에 제한도 없습니다. 프라이빗 리포지토리의 macOS 분당 비용을 주의하세요.
GitLab CI
동일한 스크립트 방식을 사용합니다. GitLab.com에서는 Premium과 Ultimate 요금제에서 호스팅 macOS runner를 베타로 제공하며, 다음과 같은 이미지를 사용합니다. macos-26-xcode-26. 규제 준수가 중요한 많은 Cordova 팀이 사용하는 자체 관리형 GitLab 인스턴스는 별도의 Mac runner가 필요합니다. Secure files는 keystore와 provisioning profile을 보관하기에 깔끔한 장소입니다. 다음을 참고하세요. GitLab에서 CI/CD 설정하기.
Bitrise
Cordova를 가장 명시적으로 지원하는 모바일 CI입니다. 스텝 라이브러리에는 프로젝트 준비와 iOS/Android 빌드 아카이빙을 위한 Cordova 스텝은 물론, code 서명 관리와 스토어 배포 스텝도 포함되어 있습니다. UI 중심의 워크플로우를 선호하고 크레딧 기반 과금이 괜찮다면, 예전 App Center 빌드 경험과 가장 가깝습니다.
Codemagic
Codemagic은 Ionic Cordova 빌드 방법을 다음에서 설명합니다. codemagic.yaml, 관리형 Android keystore, App Store Connect API 키를 통한 자동 iOS 서명, TestFlight와 Google Play 배포를 제공합니다. 요금은 빌드 분당 또는 연간 고정 플랜입니다. 레포지토리에 YAML로 두는 걸 선호하면서 서명은 맡기고 싶은 팀에 잘 맞습니다.
Appcircle
Appcircle은 iOS 및 Android 빌드 파이프라인 위에 워크플로우 커스텀 스크립트로 Cordova를 빌드하며, 서명 ID 저장, 테스터 배포, 엔터프라이즈 앱 스토어, 스토어 배포 기능을 더합니다. Appcircle Server는 자체 인프라에서 완전히 실행할 수 있어, 이 목록에서 셀프 호스팅이 가장 강력한 사례입니다.
CircleCI
Android용 Linux Docker executor와 iOS용 Apple Silicon macOS executor에서 스크립트 기반 Cordova build를 실행합니다. 서명과 업로드는 fastlane 또는 shell로 처리합니다. CircleCI에서 이미 백엔드를 운영 중이라면 합리적인 선택입니다.
Azure DevOps
Azure Pipelines는 Cordova CLI를 스크립트 단계로 실행하고, 보안 파일에서 Apple 인증서와 프로비저닝 프로필을 설치하며 Android 서명 및 마켓플레이스 확장을 통한 스토어 릴리스를 처리하는 퍼스트파티 작업을 추가합니다. Azure DevOps Server는 온프레미스 요구 사항을 지원합니다. 많은 기존 App Center 고객이 이곳으로 넘어왔습니다.
Xcode Cloud
iOS 쪽만 가능합니다. A ci_scripts/ci_post_clone.sh hook이 Node를 설치하고 Cordova 플랫폼을 복원한 뒤, Xcode Cloud가 생성된 프로젝트를 아카이브하기 전에 웹 레이어를 빌드합니다. Cordova가 생성하므로 platforms/ios 빌드 시점에 워크스페이스 경로가 워크플로가 시작될 때 존재해야 하므로 설정이 까다롭습니다. 대부분의 Cordova 팀은 이미 네이티브 앱에 이를 사용 중일 때만 도입합니다.
VoltBuilder
CI라기보다는 빌드 서비스에 가깝습니다. 서명 파일이 포함된 프로젝트 zip을 업로드하면 Cordova 및 Capacitor 프로젝트용 스토어 출시 가능 바이너리를 반환합니다. Git 트리거, 파이프라인, 라이브 업데이트는 없습니다. CI가 없는 소규모 팀에 유용합니다. 다음을 확인하세요: Voltbuilder 대안 비교 페이지.
Ionic Appflow는
빌드, 서명, 퍼블리싱, 라이브 업데이트를 지원하는, 여전히 가장 완전한 Cordova 플랫폼입니다. 또한 종료일이 정해진 유일한 플랫폼이기도 합니다. Appflow를 사용 중이라면 떠날지 여부가 아니라 언제 떠날지가 관건입니다. 다음을 확인하세요: Appflow 대안.
live update 공백 메우기
이 목록의 모든 일반 CI는 서명된 바이너리를 생성합니다. 설치된 앱에 OTA 업데이트를 전달하는 것은 없으며, 구형 커뮤니티 핫 code 푸시 플러그인은 더 이상 유지보수되지 않습니다. Cordova의 경우 2027년 말까지 Appflow, 자체 호스팅 업데이트 서버, 또는 Capgo만 남습니다.
Capgo는 다음을 통해 Cordova를 지원합니다 @capgo/cordova-updater, 이는 Capacitor 업데이트기 API를 미러링하고 동일한 백엔드, 채널, CLI를 사용합니다. Cordova iOS 7+ 및 Cordova Android 13+가 필요하며, 다음과 함께 사용할 수 없습니다 cordova-plugin-ionic-webview. Capgo 앱 ID로 설치하세요:
cordova plugin add @capgo/cordova-updater --variable APP_ID=com.example.app
cordova prepare android ios
호출하세요 cordova.plugins.Updater.notifyAppReady() 후 deviceready 모든 시작 시 실행되며, 웹 전용 릴리스를 위해 CI에 단계를 하나 추가하세요:
bun run build
bunx @capgo/cli@latest bundle upload --channel=production
플러그인 추가 또는 업그레이드는 여전히 스토어 빌드가 필요합니다. Capgo는 라이브 버전과 네이티브 플러그인이 다른 번들을 플래깅합니다. 자세한 내용은 Cordova updater 문서 및 live update 호환성. live update 작업을 포함한 전체 pipeline은 여기 있습니다 Cordova 앱용 CI/CD.
선택 사항: Capacitor로 전환 시 CI에 추가되는 것
Live Update를 받으려면 반드시 마이그레이션을 할 필요는 없습니다. 마이그레이션을 진행하는 팀은 대부분 빌드 측면의 이점을 위해 진행합니다.
Capacitor는 대부분의 Cordova 플러그인을 그대로 실행하고, 웹 code를 유지하며, 네이티브 프로젝트를 생성하는 대신 Git에 커밋하여 CI 빌드를 더 예측 가능하게 만듭니다. Capgo 앱 ID와 채널은 그대로 유지되며, 업데이트 플러그인만 변경됩니다. 마이그레이션 후:
- Linux CI 작업이 실행됩니다
bun run build,bunx cap sync, 그리고 플랫폼별로 하나씩bunx @capgo/cli@latest build request이 실행됩니다. iOS에는 macOS 러너가 필요하지 않습니다. - 웹 전용 릴리스는 채널, 롤백, 호환성 검사를 갖춘 Live Update로 배포됩니다:
bunx @capgo/cli@latest bundle upload --channel production. bunx @capgo/cli@latest build needed네이티브 빌드가 필요한지 여부를 pipeline에 알려줍니다.
마이그레이션 가이드: Cordova에서 Capacitor로 마이그레이션. 도움이 필요하시면 다음을 참고하세요 Cordova에서 Capacitor로.
선택 가이드
| 현재 상황 | 적합한 경우 |
|---|---|
| GitHub에서 Code, 소규모 팀, YAML에 익숙한 경우 | GitHub 작업 |
| 자체 관리 GitLab 또는 온프레미스 요구 사항이 있는 경우의 Code | 자체 Mac 러너, Appcircle Server 또는 Azure DevOps Server를 사용하는 GitLab CI |
| App Center 빌드의 가장 가까운 대체재를 원할 때 | Bitrise 또는 Codemagic |
| CI 없이 바이너리만 필요 | VoltBuilder |
| Appflow 또는 App Center 이후 Live Update 필요 | 위 CI 중 하나 + Capgo @capgo/cordova-updater |
| macOS 러너 없이 iOS 빌드 | Capacitor로 마이그레이션 후 Capgo Build |
App Center 또는 Appflow 마이그레이션 체크리스트
- Android 업로드 키스토어와 iOS 배포
.p12프라이빗 키를 다운로드하세요. 기존 플랫폼에서 생성한 경우, 접근 권한이 만료되기 전에 내보내세요. - 현재 버전 코드와 빌드 번호를 기록하여 새 플랫폼의 첫 빌드 충돌을 방지하세요.
- 새 CI를 위해 Google Play 서비스 계정과 App Store Connect API 키를 생성하세요.
- 기존 플랫폼이 빌드 시점에 주입했던 모든 환경 변수를 나열하세요.
- 프로덕션 전환 전에 내부 트랙 빌드와 TestFlight 빌드를 각각 한 번씩 실행하세요.
- 기존 서비스가 종료된 후가 아니라, 종료되기 전에 live update 플랜을 결정하세요.
iOS와 Android 관련 결정을 더 자세히 알아보려면 다음을 읽어보세요. iOS 앱용 CI/CD 플랫폼 비교 및 Android 앱용 CI/CD 플랫폼 비교.