하나의 맥이 릴리스 병목 현상을 됩니다.
작은 릴리스는 Xcode, 유효한 macOS 설정 및 정확한 인증서가 하나의 기계에 저장된 경우 하드웨어 및 서명 문제가 됩니다.
어떤 기계에서든 Cloud iOS 빌드를
스위프트 컴파일이 어려운 것은 아닙니다. Xcode, 인증서, 배포 프로파일, 앱 스토어 연결 키, 그리고 한 대의 노트북이 릴리즈 게이트가 되는 것입니다. Capgo 빌더는 Capacitor 팀에게 CLI-첫 번째 경로를 제공하여 어디서든 서명된 iOS 빌드를 빌드할 수 있습니다.
npx @capgo/cli@latest build init --platform ios
npx @capgo/cli@latest build request --platform ios
# signed build runs on an ephemeral Mac runner
# logs stream back to your terminal
관리되는 맥 용량
Apple이 그들을 요구할 때 iOS 빌드를 실행하십시오. 그들을 이미 사용하는 기계에서 트리거하십시오.
같은 Capgo 릴리스 루프
자연/native 변경에 대한 원본 바이너리를 유지하고 웹 변경 후 스토어 빌드가 설치된 후 OTA를 사용하십시오.
문제
작은 릴리스는 Xcode, 유효한 macOS 설정 및 정확한 인증서가 하나의 기계에 저장된 경우 하드웨어 및 서명 문제가 됩니다.
작업 자격 프로필을 가진 사람의 온라인 상태에 따라 릴리스는 대기합니다. 프로필이 만료되면 모든 사람이 Apple 서명에 대한 학습을 다시 시작합니다.
자체 호스팅 macOS CI는 여전히 비밀, Fastlane 경로, Xcode 이미지 업데이트, 로그 보존 규칙 및 Apple의 동작 변경에 대한 디버깅이 필요합니다.
숨겨진 작업
Mac을 구매하는 것은 단지 하드웨어 요구 사항만 해결합니다. Apple 서명, 자격 증명漂移, 러너 유지, 또는 팀 동료 병목 현상이 제거되지 않습니다.
Apple Developer 팀, 번들 ID, 기능, App Store Connect 앱 레코드 및 업로드 권한이 필요한 경우 첫 번째 빌드가 성공할 수 있습니다.
릴리스 빌드는 배포 인증서, P12 내보내기, 배포 프로파일, 프로파일-번들 매핑 및 만료 시 재생위한 프로세스가 필요합니다.
Xcode 버전, macOS 실행자, CocoaPods, Fastlane, 비밀 저장소 및 업로드 로그는 모두 제품 팀이 유지해야 하는 인프라가 됩니다.
CLI 예시
iOS의 일반적인 경로에서는 애플 서명에 대한 이해를 먼저 얻어야 앱이 빌드되는지 알 수 있습니다. Capgo는 이 과정을 상호 작용적인 설정과 한 번의 빌드 요청으로 바꿉니다.
# First-time iOS setup
npx @capgo/cli@latest build init --platform ios
# Then any teammate or CI runner can request the build
npx @capgo/cli@latest build request --platform ios
해결책
Capgo는 일상적인 제품 문제와 드문 바이너리 문제를 분리합니다. 네이티브 빌드는 클라우드에서 서명되며 웹 변경 사항은 실시간 업데이트를 통해 계속 진행됩니다.
Capgo 빌더는 iOS 빌드를 관리하는 애플 하드웨어에서 실행합니다. 윈도우, 리눅스 또는 저사양 랩톱에서 터미널에서 서명된 iOS 빌드를 트리거할 수 있습니다.
CLI는 어려운 애플 조각인 번들 ID, App Store Connect 키, 배포 인증서, P12, 프로비전 프로파일 및 다중 타겟 프로파일 매핑을 안내합니다.
로컬, CI, 또는 에이전트 워크플로우에서 동일한 명령어를 실행하세요. 릴리스를 대시보드에 옮기거나 Xcode를 모든 팀원에게 가르치지 않아도 됩니다.
네이티브 code, 플러그인, 아이콘, 권한, 또는 SDK 버전이 변경되었을 때 빌더를 사용하세요. 라이브 업데이트 기능은 JavaScript, CSS, 및 자산 변경 사항을 스토어 제출 간에 사용하세요.
신뢰 모델
클라우드 빌드는 운영 위험을 없애야 하며, 새로운 곳에서 소스, 키, 로그가 영원히 살아남지 않도록 해야 합니다.
자연 빌드에 필요한 파일만 빌드 러너로 전송됩니다. Capgo는 전체 Git 저장소 클론이 필요하지 않습니다.
빌드 로그는 터미널에 스트리밍되므로敏感한 출력물이 팀이 감사해야 하는 또 다른 장기적인 데이터베이스가 되지 않습니다.
인증 정보는 활성 빌드 환경으로 전달되고 빌드 후 삭제됩니다. 빌더는 임시 실행자이며 영구 인증 보관소가 아닙니다.
__CAPGO_KEEP_0__
CLI 프로젝트에서 Builder 초기화 흐름을 실행하세요. CLI는 Capacitor 앱을 읽고 플랫폼 설정을 안내합니다.
서명 자격 증명 생성 또는 가져오기, 배포 프로파일을 번들 ID에 매핑하고 CI 준비된 환경 파일을 내보내기할 때까지.
터미널, CI, 또는 agent 워크플로에서 로컬에서 서명된 iOS 빌드를 요청하고 빌드가 실행되는 동안 로그를 스트리밍하세요.
테스트 플라이트에 업로드하거나 IPA를 수집하고 Capgo 라이브 업데이트와 함께 JS 및 자산 수정을 계속 배포하세요.
사용자 신호
사용자들이 가장 먼저 언급하는 것은 Mac이 아닌 것이 아니라, 릴리즈 프로세스가 반복 가능해지기 때문입니다: init 한번, 빌드를 요청, 로그를 스트리밍, 서명 파일을 팀에 넘기지 않습니다.
일반 Capgo 빌더 피드백
Capacitor로 빌드된 앱
학교, 교통 및 지원 앱은 팀이 대부분 웹, 지원 또는 운영일 때도 서명된 모바일 릴리스가 필요합니다. 호스팅 빌드 워크플로우는 단일 머신 병목 현상을 제거하면서 서명 단계를 반복할 수 있도록합니다.
교육
학교와의 신뢰할 수 있는 연결을 유지하는 비영어권 팀이 필요로 하는 학교 커뮤니케이션 앱.
여행 및 현지
여행 예약 앱에서 릴리즈 전달이 한 개발자 머신에 의존하지 않아야 한다.
도구
운영 팀이 반복 가능한 모바일 빌드 기록이 필요한 지원 유틸리티입니다.
__CAPGO_KEEP_0__ 앱을 시작하여 iOS에 한 번 서명한 후 Android, CI, 라이브 업데이트, 및 팀 워크플로우를 추가하여 릴리스 프로세스가 성장할 때까지.