Skip to content

๐Ÿ”น ๋นŒ๋“œ

๐Ÿ—๏ธ Capgo iOS/Android ๋„ค์ดํ‹ฐ๋ธŒ ๋นŒ๋“œ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋ณ„์นญ: onboarding

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest build init

iOS ๋นŒ๋“œ ์ธ์ฆ์„œ ๋ฐ ํ”„๋กœํŒŒ์ผ์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ ์ƒํ˜ธ ์ž‘์šฉ์ ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest build request

Request a native build from Capgo Cloud. This command will zip your project directory and upload it to Capgo for building. The build will be processed and sent directly to app stores. ๐Ÿ”’ SECURITY: Credentials are never stored on Capgo servers. They are auto-deleted after build completion. Build outputs may optionally be uploaded for time-limited download links. ๐Ÿ“‹ PREREQUISITE: Save credentials first with: npx @capgo/cli build credentials save --appId <app-id> --platform <ios|android>

์ด ๋ช…๋ น์–ด๋Š” ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์••์ถ•ํ•˜๊ณ  __CAPGO_KEEP_1__์— ์—…๋กœ๋“œํ•˜์—ฌ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.

๋นŒ๋“œ๋Š” ์•ฑ ์Šคํ† ์–ด๋กœ ์ง์ ‘ ์ „์†ก๋ฉ๋‹ˆ๋‹ค.
npx @capgo/cli@latest build request com.example.app --platform ios --path .

๋นŒ๋“œ ์ถœ๋ ฅ์€ ์˜ต์…˜์œผ๋กœ ์‹œ๊ฐ„ ์ œํ•œ๋œ ๋‹ค์šด๋กœ๋“œ ๋งํฌ๋กœ ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“‹ ํ•„์ˆ˜ ์กฐ๊ฑด: ์ธ์ฆ ์ •๋ณด๋ฅผ ๋จผ์ € ์ €์žฅํ•˜์„ธ์š”: ์˜ˆ์‹œ:ํ„ฐ๋ฏธ๋„ ์ฐฝ
ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌstring์˜ต์…˜:
ParamstringType
โ€”build-modestring๋นŒ๋“œ ๋ชจ๋“œ: ๋””๋ฒ„๊ทธ ๋˜๋Š” ๋ฆด๋ฆฌ์ฆˆ (๊ธฐ๋ณธ๊ฐ’: ๋ฆด๋ฆฌ์ฆˆ)
โ€”build-certificate-base64stringiOS: Base64๋กœ ์ธ์ฝ”๋”ฉ๋œ .p12 ์ธ์ฆ์„œ
โ€”p12-passwordstringiOS: ์ธ์ฆ์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ (์ธ์ฆ์„œ์— ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์—†์œผ๋ฉด ์„ ํƒ ์‚ฌํ•ญ)
โ€”apple-idstringiOS: Apple ID ์ด๋ฉ”์ผ
โ€”apple-app-specific-passwordstringiOS: ์•ฑ ํŠน์ • ๋น„๋ฐ€๋ฒˆํ˜ธ
โ€”apple-key-idstringiOS: App Store Connect API ํ‚ค ID
โ€”apple-issuer-idstringiOS: ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์Šคํ† ์–ด ์—ฐ๊ฒฐ ๋ฐœ๊ธ‰์ž ID
โ€”apple-key-contentstringiOS: Base64๋กœ ์ธ์ฝ”๋”ฉ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์Šคํ† ์–ด ์—ฐ๊ฒฐ API ํ‚ค (.p8)
โ€”app-store-connect-team-idstringiOS: ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์Šคํ† ์–ด ์—ฐ๊ฒฐ ํŒ€ ID
โ€”ios-schemestringiOS: Xcode ์Šคํ‚ค๋งˆ (๊ธฐ๋ณธ: App)
โ€”ios-targetstringiOS: Xcode ๋นŒ๋“œ ์„ค์ •์„ ์ฝ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋Œ€์ƒ (๊ธฐ๋ณธ: ์Šคํ‚ค๋งˆ์™€ ๋™์ผ)
โ€”ios-distributionstringiOS: ๋ฐฐํฌ ๋ชจ๋“œ
โ€”iOS ๋ฐฐํฌ ํ”„๋กœํŒŒ์ผstringiOS: ๋ฐฐํฌ ํ”„๋กœํŒŒ์ผ ๊ฒฝ๋กœ ๋˜๋Š” bundleId=path ๋งคํ•‘ (๋ฐ˜๋ณต ๊ฐ€๋Šฅ)
โ€”์•ˆ๋“œ๋กœ์ด๋“œ ํ‚ค ์Šคํ† ์–ด ํŒŒ์ผstringAndroid: Base64๋กœ ์ธ์ฝ”๋”ฉ๋œ ํ‚ค ์Šคํ† ์–ด ํŒŒ์ผ
โ€”ํ‚ค ์Šคํ† ์–ด ํ‚ค ๋ณ„์นญstringAndroid: ํ‚ค ์Šคํ† ์–ด ํ‚ค ๋ณ„์นญ
โ€”ํ‚ค ์Šคํ† ์–ด ํ‚ค ๋น„๋ฐ€๋ฒˆํ˜ธstringAndroid: ํ‚ค ์Šคํ† ์–ด ํ‚ค ๋น„๋ฐ€๋ฒˆํ˜ธ
โ€”ํ‚ค ์Šคํ† ์–ด ์ €์žฅ์†Œ ๋น„๋ฐ€๋ฒˆํ˜ธstringAndroid: ํ‚ค ์Šคํ† ์–ด ์ €์žฅ์†Œ ๋น„๋ฐ€๋ฒˆํ˜ธ
โ€”ํ”Œ๋ ˆ์ด ๊ตฌ์„ฑ JSONstringAndroid: Base64๋กœ ์ธ์ฝ”๋”ฉ๋œ Google Play ์„œ๋น„์Šค ๊ณ„์ • JSON
โ€”์•ˆ๋“œ๋กœ์ด๋“œ-ํ”Œ๋ ˆ์ด๋ฒ„string์•ˆ๋“œ๋กœ์ด๋“œ: ์ œํ’ˆ ํ”Œ๋ž˜๋ฒ„๋ฅผ ๋นŒ๋“œํ•˜๊ธฐ ์œ„ํ•ด (์˜ˆ: ํ”„๋กœ๋•์…˜). ํ”„๋กœ์ ํŠธ๊ฐ€ ์—ฌ๋Ÿฌ ํ”Œ๋ž˜๋ฒ„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๋ฉด ํ•„์ˆ˜.
โ€”ํ”Œ๋ ˆ์ด์Šคํ† ์–ด ์—…๋กœ๋“œ ์ƒ๋žตboolean์ด ๋นŒ๋“œ์— ๋Œ€ํ•ด ํ”Œ๋ ˆ์ด ์Šคํ† ์–ด ์—…๋กœ๋“œ๋ฅผ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค (์ €์žฅ๋œ ํ”Œ๋ ˆ์ด ๊ตฌ์„ฑ null๋กœ ์„ค์ •). โ€”output-upload์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
โ€”output-uploadboolean์ด ๋นŒ๋“œ์— ๋Œ€ํ•ด ์ถœ๋ ฅ ์—…๋กœ๋“œ ๋™์ž‘์„ ์˜ค๋ฒ„๋ผ์ด๋“œํ•ฉ๋‹ˆ๋‹ค (ํ™œ์„ฑํ™”). ์šฐ์„ ์ˆœ์œ„: CLI > ํ™˜๊ฒฝ > ์ €์žฅ๋œ ์ž๊ฒฉ์ฆ๋ช….
โ€”no-output-uploadboolean์ด ๋นŒ๋“œ์— ๋Œ€ํ•ด ์ถœ๋ ฅ ์—…๋กœ๋“œ ๋™์ž‘์„ ์˜ค๋ฒ„๋ผ์ด๋“œํ•ฉ๋‹ˆ๋‹ค (๋น„ํ™œ์„ฑํ™”). ์šฐ์„ ์ˆœ์œ„: CLI > ํ™˜๊ฒฝ > ์ €์žฅ๋œ ์ž๊ฒฉ์ฆ๋ช….
โ€”์ถœ๋ ฅ ๋ณด์กดstring์ด ๋นŒ๋“œ์— ๋Œ€ํ•ด ์ถœ๋ ฅ ๋งํฌ TTL์„ ์˜ค๋ฒ„๋ผ์ด๋“œํ•ฉ๋‹ˆ๋‹ค (1์‹œ๊ฐ„์—์„œ 7์ผ). ์˜ˆ์‹œ: 1์‹œ๊ฐ„, 6์‹œ๊ฐ„, 2์ผ. ์šฐ์„ ์ˆœ์œ„: CLI > ํ™˜๊ฒฝ > ์ €์žฅ๋œ ์ž๊ฒฉ์ฆ๋ช….
โ€”๋นŒ๋“œ ๋ฒˆํ˜ธ ์ฆ๊ฐ€ ์ƒ๋žตboolean์ž๋™ ๋นŒ๋“œ ๋ฒˆํ˜ธ/๋ฒ„์ „ code ์ฆ๊ฐ€๋ฅผ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์— ์žˆ๋Š” ๋ฒ„์ „์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”no-skip-build-number-bumpboolean์ด ๋นŒ๋“œ๋งŒ์„ ์œ„ํ•ด ์ž๋™ ๋นŒ๋“œ ๋ฒˆํ˜ธ ์ฆ๊ฐ€๋ฅผ ์žฌ ํ™œ์„ฑํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์ €์žฅ๋œ ์ž๊ฒฉ ์ฆ๋ช…์„ ์žฌ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
-a,stringAPI ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„์ •์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
โ€”supa-hoststringCustom Supabase host URL (for self-hosting or Capgo development)
โ€”supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ปค์Šคํ…€ Supabase anon ํ‚ค์ž…๋‹ˆ๋‹ค.
โ€”verboseboolean์„ธ๋ถ€ ๋กœ๊น…๊ณผ ํ•จ๊ป˜ ์ž์„ธํ•œ ์ถœ๋ ฅ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest build credentials

์ปดํ“จํ„ฐ์— ์ €์žฅ๋œ ๋นŒ๋“œ ์ž๊ฒฉ ์ฆ๋ช… ๊ด€๋ฆฌ. ๐Ÿ”’ ๋ณด์•ˆ:

  • capgo/capgo-credentials/credentials.json (์ „์—ญ) ๋˜๋Š” .capgo-credentials.json (์ง€์—ญ)์— ์ €์žฅ๋œ ์ž๊ฒฉ ์ฆ๋ช…
  • ๋นŒ๋“œ ์‹œ Capgo๋กœ ์ „์†ก๋˜์ง€๋งŒ ์˜๊ตฌ์ ์œผ๋กœ ์ €์žฅ๋˜์ง€ ์•Š์Œ
  • Capgo์—์„œ ์ฆ‰์‹œ ์‚ญ์ œ
  • ๋นŒ๋“œ ์ถœ๋ ฅ๋ฌผ์€ ์˜ต์…˜์œผ๋กœ ์‹œ๊ฐ„ ์ œํ•œ๋œ ๋‹ค์šด๋กœ๋“œ ๋งํฌ๋กœ ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ๐Ÿ“š ๋ฌธ์„œ: https://capgo.app/docs/cli/cloud-build/ios/ https://__CAPGO_KEEP_0__.app/docs/__CAPGO_KEEP_1__/cloud-build/android/ https://capgo.app/docs/cli/cloud-build/android/