내용으로 건너뛰기

구성 옵션

Cloud Build 구성 옵션의 모든 완전한 참조입니다. 이 페이지를 사용하여 CLI 플래그, 환경 변수 또는 인증서 키를 찾으십시오.

구성 우선순위

구성 우선순위

모든 빌드 옵션은 여러 가지 방법으로 설정될 수 있습니다. 동일한 옵션이 여러 곳에서 설정될 때, 더 높은 우선순위의 소스에서 우선합니다:

예시: 저장된 인증서가 있지만 SKIP_BUILD_NUMBER_BUMP=true 그런 다음 __CAPGO_KEEP_0__에 --no-skip-build-number-bump on the CLI, the CLI flag wins and build numbers will be auto-incremented.


__CAPGO_KEEP_0__ Signing

__CAPGO_KEEP_0__ Signing

Code Signing

Code 서명
CLI 플래그환경 변수인증 키기본설명
--build-certificate-base64 <cert>BUILD_CERTIFICATE_BASE64BUILD_CERTIFICATE_BASE64Base64 인코딩 .p12 배포 인증서
--ios-provisioning-profile <map>CAPGO_IOS_PROVISIONING_MAPCAPGO_IOS_PROVISIONING_MAP설치 프로파일을 path 또는 bundleId=path 매핑. 다중 대상 앱 (앱 + 확장) 에서 반복 가능; 프로파일 이름이 자동 추출.
--p12-password <password>P12_PASSWORDP12_PASSWORD인증서 비밀번호 .p12 __CAPGO_KEEP_0__

앱 스토어 연결 인증

앱 스토어 연결 인증
CLI 플래그환경 변수인증 키기본설명
--apple-key-id <id>APPLE_KEY_IDAPPLE_KEY_ID앱 스토어 연결 API 키 ID
--apple-issuer-id <id>APPLE_ISSUER_IDAPPLE_ISSUER_ID앱 스토어 연결 발급자 ID (UUID)
--apple-key-content <content>APPLE_KEY_CONTENTAPPLE_KEY_CONTENTBase64-encoded 앱 스토어 연결 API 키 (.p8 파일)
--app-store-connect-team-id <id>APP_STORE_CONNECT_TEAM_IDAPP_STORE_CONNECT_TEAM_IDApp Store Connect 팀 ID
CLI Flag환경 변수인증 키기본값설명
--apple-id <email>FASTLANE_USERFASTLANE_USER__CAPGO_KEEP_0__ 이메일
--apple-app-specific-password <password>FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORDFASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD__CAPGO_KEEP_0__ 앱 전용 비밀번호 (xxxx-xxxx-xxxx-xxxx) appleid.apple.com
--apple-app-id <id>APPLE_APP_IDAPPLE_APP_ID__CAPGO_KEEP_0__ (예: 1234567890)

iOS 빌드 설정

iOS 빌드 설정
CLI Flag환경 변수인증 키기본값설명
--ios-scheme <scheme>CAPGO_IOS_SCHEMECAPGO_IOS_SCHEMEAppXcode 빌드 스키마
--ios-target <target>CAPGO_IOS_TARGETCAPGO_IOS_TARGETAppXcode 빌드 설정을 읽기 위한 대상
--ios-distribution <mode>CAPGO_IOS_DISTRIBUTIONCAPGO_IOS_DISTRIBUTIONapp_store배포 모드: app_store 또는 ad_hoc

안드로이드 옵션

안드로이드 옵션 섹션

지갑 암호화 인증

Keystore Signing 섹션
CLI Flag환경 변수인증 키기본값설명
--android-keystore-file <keystore>ANDROID_KEYSTORE_FILEANDROID_KEYSTORE_FILEBase64-encoded keystore 파일 (.keystore 또는 .jks)
--keystore-key-alias <alias>KEYSTORE_KEY_ALIASKEYSTORE_KEY_ALIASkey0Keystore 키 별칭
--keystore-key-password <password>KEYSTORE_KEY_PASSWORDKEYSTORE_KEY_PASSWORDKeystore 키 비밀번호 (기본값이 저장 비밀번호일 경우)
--keystore-store-password <password>KEYSTORE_STORE_PASSWORDKEYSTORE_STORE_PASSWORDKeystore 저장 비밀번호

Google Play 구성

구글 플레이 설정
CLI 플래그환경 변수인증 키기본설명
--play-config-json <json>PLAY_CONFIG_JSONPLAY_CONFIG_JSON구글 플레이 서비스 계정 JSON 키 (Base64 인코딩)
(환경 변수만)PLAY_STORE_TRACKinternal구글 플레이 릴리스 트랙 (internal, alpha, beta, production)
(환경 변수만)PLAY_STORE_RELEASE_STATUSdraft선택한 트랙에서 릴리스 상태 (draft, completed, inProgress, halted)

안드로이드 빌드 설정

Android 빌드 설정 섹션
CLI Flag기본설명
--android-flavor <flavor>프로덕트 플래버를 빌드할 때 (예: production). 필수 프로젝트가 여러 플래버를 정의하는 경우.
--in-app-update-priority <0–5>이 릴리즈에 대한 Google Play 내 앱 업데이트 우선순위 (높을수록 더 급함).
--no-playstore-upload빌드 및 서명, 그러나 Play Store 업로드를 생략 (Cloudflare에 의존하는 경우에만 사용할 수 있음) --output-upload).

빌드 제어 옵션

빌드 제어 옵션 섹션

이 옵션은 iOS 및 Android 빌드 모두에 적용됩니다.

CLI 플래그기본설명
--platform <platform>필수. ios 또는 android
--build-mode <mode>releasedebug 또는 release
--path <path>.프로젝트 디렉토리
--verbosefalseVerbose 빌드 로깅 활성화
--ai-analyticsfalse빌드 실패 시 Capgo AI로 로그 전송 — AI 빌드 진단
CLI 플래그환경 변수인증 키기본값설명
--skip-build-number-bumpSKIP_BUILD_NUMBER_BUMPSKIP_BUILD_NUMBER_BUMPfalse자동 빌드 번호/버전 code 증가를 생략합니다.
--no-skip-build-number-bump자동 증가를 명시적으로 다시 활성화합니다. (저장된 인증 정보를 덮어씁니다.)

기본적으로 Capgo Cloud Build는 자동으로 빌드 번호를 증가시킵니다.

  • iOS: App Store Connect에서 최신 빌드 번호를 가져와 1을 증가시킵니다.
  • 안드로이드: Fetches max versionCode Google Play에서 최대값을 가져오고 1을 더합니다.

When --skip-build-number-bump 설정되면 빌드는 프로젝트 파일(Xcode 프로젝트 또는 build.gradle).

출력 업로드

출력 업로드
CLI 플래그환경 변수인증 키기본설명
--output-uploadBUILD_OUTPUT_UPLOAD_ENABLEDBUILD_OUTPUT_UPLOAD_ENABLEDfalse빌드 출력 (IPA/APK/AAB)을 Capgo 저장소에 업로드합니다. 환경 변수를 통해 설정할 경우 사용 BUILD_OUTPUT_UPLOAD_ENABLED=true.
--no-output-uploadBUILD_OUTPUT_UPLOAD_ENABLED출력 업로드를 비활성화합니다. 환경 변수를 통해 설정할 경우 사용 BUILD_OUTPUT_UPLOAD_ENABLED=false.
--output-retention <duration>BUILD_OUTPUT_RETENTION_SECONDSBUILD_OUTPUT_RETENTION_SECONDS1h다운로드 링크 활성 시간
--output-record <path>빌드가 성공적으로 완료된 후, JSON 기록 (작업 ID, 상태, 다운로드 URL, QR code)을 <path> — 이를 다시 읽기 위해 build last-output.

보존 형식: 인간이 읽을 수 있는 시간 지연을 사용하십시오. 1h, 6h, 2d, 7d1시간 미만은 1시간, 7일 이상은 7일로 설정됩니다. 환경 변수를 통해 설정할 경우 초 단위 (예: 1시간)로 사용합니다. 3600 인증

CLI환경 변수기본설명
-a, --apikey <key>CAPGO_TOKENCapgo API 인증을 위한 키
--supa-host <host>자체 호스팅 전용: 사용자 정의 Supabase 호스트
--supa-anon <key>자체 호스팅 전용: 사용자 정의 Supabase anon 키

환경 변수 빠른 참조

환경 변수 빠른 참조 섹션

CI/CD PIPELINE에 복사-붙여넣기 가능한 환경 변수입니다. 모든 변수는 선택적입니다. 필요할 때만 설정하세요.

터미널 창
# Code signing (required for iOS builds)
BUILD_CERTIFICATE_BASE64="<base64-encoded .p12>"
CAPGO_IOS_PROVISIONING_MAP="<provisioning map generated by the CLI>"
P12_PASSWORD="<certificate password>"
# App Store Connect (required for store submission)
APPLE_KEY_ID="ABC1234567"
APPLE_ISSUER_ID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
APPLE_KEY_CONTENT="<base64-encoded .p8 key>"
APP_STORE_CONNECT_TEAM_ID="TEAM123456"
# Alternative to the App Store Connect API key above: Apple ID + app-specific
# password (e.g. when migrating from Ionic Appflow). All three are required.
# FASTLANE_USER="apple-id@example.com"
# FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD="xxxx-xxxx-xxxx-xxxx"
# APPLE_APP_ID="1234567890"
# Optional iOS settings
CAPGO_IOS_SCHEME="App"
CAPGO_IOS_TARGET="App"
터미널 창
# Keystore signing (required for Android builds)
ANDROID_KEYSTORE_FILE="<base64-encoded .keystore>"
KEYSTORE_KEY_ALIAS="my-key-alias"
KEYSTORE_KEY_PASSWORD="<key password>"
KEYSTORE_STORE_PASSWORD="<store password>"
# Google Play (required for store submission)
PLAY_CONFIG_JSON="<base64-encoded service account JSON>"
# Optional Android settings
PLAY_STORE_TRACK="internal"
PLAY_STORE_RELEASE_STATUS="draft"
터미널 창
# Build behavior
SKIP_BUILD_NUMBER_BUMP="true" # Skip auto-increment
BUILD_OUTPUT_UPLOAD_ENABLED="true" # Upload IPA/APK/AAB
BUILD_OUTPUT_RETENTION_SECONDS="3600" # 1 hour download link
# Authentication
CAPGO_TOKEN="your-api-key"

인증 정보를 한번 저장하여 매번 플래그나 환경 변수를 전달하지 않도록 하세요.

터미널 창
# Save iOS credentials
bunx @capgo/cli@latest build credentials save \
--platform ios \
--certificate ./dist_cert.p12 \
--ios-provisioning-profile ./profile.mobileprovision \
--p12-password "cert-password" \
--apple-key ./AuthKey.p8 \
--apple-key-id ABC1234567 \
--apple-issuer-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--apple-team-id TEAM123456
# Save Android credentials
bunx @capgo/cli@latest build credentials save \
--platform android \
--keystore ./release.keystore \
--keystore-alias my-key \
--keystore-key-password "key-pass" \
--keystore-store-password "store-pass" \
--play-config ./play-service-account.json
플래그위치사용 사례
(기본값)~/.capgo-credentials/credentials.json전역 — 모든 프로젝트에서 사용하는 머신에 걸쳐
--local.capgo-credentials.json 프로젝트 루트프로젝트별 — 전역과 함께 존재할 때는 프로젝트별로 오버라이드

인증 정보는 앱 ID (예를 들어 com.example.myapp)로 키가 지정되므로, 단일 인증 파일에서 여러 앱의 설정을 저장할 수 있습니다. 각 앱의 인증 정보는 추가로 플랫폼별로 나누어집니다.ios / android).

인증 정보 관리

저장된 인증 정보
터미널 창
# List saved credentials
bunx @capgo/cli@latest build credentials list
# Update a specific option without re-entering everything
bunx @capgo/cli@latest build credentials update --skip-build-number-bump
# Clear saved credentials
bunx @capgo/cli@latest build credentials clear --platform ios

name: Build and Submit
on:
push:
branches: [main]
jobs:
build-ios:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
- run: bun install
- run: bunx cap sync ios
- run: bunx @capgo/cli@latest build request --platform ios
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.IOS_CERTIFICATE }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP }}
P12_PASSWORD: ${{ secrets.P12_PASSWORD }}
APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }}
APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }}
APPLE_KEY_CONTENT: ${{ secrets.APPLE_KEY_CONTENT }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
build-android:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
- run: bun install
- run: bunx cap sync android
- run: bunx @capgo/cli@latest build request --platform android
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
ANDROID_KEYSTORE_FILE: ${{ secrets.ANDROID_KEYSTORE }}
KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_ALIAS }}
KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
PLAY_CONFIG_JSON: ${{ secrets.PLAY_CONFIG_JSON }}

CLI 플래그 직접 사용

제목: CLI 플래그 직접 사용
터미널 창
# Build iOS with all options inline
bunx @capgo/cli@latest build request \
--platform ios \
--build-mode release \
--skip-build-number-bump \
--output-retention 6h \
--apikey YOUR_API_KEY
# Build Android, skip version bump, no output upload
bunx @capgo/cli@latest build request \
--platform android \
--skip-build-number-bump \
--no-output-upload \
--apikey YOUR_API_KEY

CLI 오버라이드와 저장된 자격 증명을 결합하십시오:

터미널 창
# Save base credentials once
bunx @capgo/cli@latest build credentials save --platform ios \
--certificate ./cert.p12 \
--ios-provisioning-profile ./profile.mobileprovision \
--output-upload
# Override specific options per-build
bunx @capgo/cli@latest build request --platform ios \
--skip-build-number-bump \
--output-retention 2d

저장된 자격 증명은 서명 세부 정보를 제공하며 CLI 플래그는 이 특정 실행에 대한 빌드 동작을 오버라이드합니다.