Skip to content

๐Ÿ“ข ์ฑ„๋„

๐Ÿ“ข ์•ฑ ์—…๋ฐ์ดํŠธ๋ฅผ ์œ„ํ•œ ๋ฐฐํฌ ์ฑ„๋„ ๊ด€๋ฆฌ๋ฅผ Capgo Cloud์—์„œ ์ œ์–ดํ•˜์—ฌ ์žฅ์น˜์— ์—…๋ฐ์ดํŠธ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.

โž• ์ถ”๊ฐ€

โž• ์ถ”๊ฐ€

๋ณ„์นญ: a

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel add

โž• Capgo Cloud์—์„œ ์•ฑ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ์ƒˆ๋กœ์šด ์ฑ„๋„์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ:

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel add production com.example.app --default

์˜ต์…˜:

ParamType์„ค๋ช…
-dboolean๊ธฐ๋ณธ ์ฑ„๋„๋กœ ์„ค์ •
์ž์‹  ํ• ๋‹นboolean์ด ์ฑ„๋„์— ์žฅ์น˜๊ฐ€ ์ž์ฒด ํ• ๋‹น์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
-astringAPI ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„์ •์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
---supa-hoststring์ž์ฒด ํ˜ธ์ŠคํŒ… ๋˜๋Š” Capgo ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์ปค์Šคํ…€ ์ˆ˜ํŒŒ๋ฒ ์ด์Šค ํ˜ธ์ŠคํŠธ URL
---supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์„ ์œ„ํ•œ ์ปค์Šคํ…€ ์ˆ˜ํŒŒ๋ฒ ์ด์Šค ์ต๋ช… ํ‚ค

๐Ÿ—‘๏ธ ์‚ญ์ œ

์‚ญ์ œ

๋ณ„์นญ: d

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel delete

๐Ÿ—‘๏ธ Capgo Cloud์—์„œ ์ฑ„๋„์„ ์‚ญ์ œํ•˜๊ณ  ์˜ต์…˜์œผ๋กœ ๊ด€๋ จ๋œ ๋ฒˆ๋“ค์„ ์‚ญ์ œํ•˜์—ฌ ์ž์› ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์‹œ:

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel delete production com.example.app

์˜ต์…˜:

ParamType์„ค๋ช…
-astringAPI ๊ณ„์ •์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค
--delete-bundleboolean์ฑ„๋„๊ณผ ๊ด€๋ จ๋œ ๋ฒˆ๋“ค์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. App Preview ํ‚ค๋Š” ์›๋ณธ ํ”„๋ฆฌ๋ทฐ ์ฑ„๋„๊ณผ ์—ฐ๊ฒฐ๋œ, ๊ณต์œ ๋˜์ง€ ์•Š์€ ๋ฒˆ๋“ค์„ ์›์ž์ ์œผ๋กœ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€”success-if-not-foundboolean์ฑ„๋„์ด ๋ฐœ๊ฒฌ๋˜์ง€ ์•Š์œผ๋ฉด ์„ฑ๊ณต
โ€”supa-hoststringCustom Supabase host URL (for self-hosting or Capgo development)
โ€”supa-anonstring์‚ฌ์šฉ์ž ์ง€์ • Supabase anon ํ‚ค (์ž์ฒด ํ˜ธ์ŠคํŒ…์šฉ)

๐Ÿ“‹ ๋ชฉ๋ก

๋ชฉ๋ก ์ œ๋ชฉ

๋ณ„๋ช…: l

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel list

๐Ÿ“‹ Capgo Cloud์—์„œ ์•ฑ์— ๋Œ€ํ•œ ๋ฐฐํฌ ์„ค์ •์„ ๊ฒ€ํ† ํ•˜๊ธฐ ์œ„ํ•ด ๊ตฌ์„ฑ๋œ ๋ชจ๋“  ์ฑ„๋„ ๋ชฉ๋ก์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ:

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel list com.example.app

์˜ต์…˜:

ParamType์„ค๋ช…
-astringAPI ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„์ •์— ์—ฐ๊ฒฐ
โ€”supa-hoststring์‚ฌ์šฉ์ž ์ง€์ • Supabase ํ˜ธ์ŠคํŠธ URL (์ž์ฒด ํ˜ธ์ŠคํŒ… ๋˜๋Š” Capgo ๊ฐœ๋ฐœ์šฉ)
โ€”supa-anonstring์‚ฌ์šฉ์ž ์ง€์ • Supabase anon ํ‚ค (์ž์ฒด ํ˜ธ์ŠคํŒ…์šฉ)
Terminal window
npx @capgo/cli@latest channel currentBundle

๐Ÿ“ฆ Capgo Cloud์—์„œ ํŠน์ • ์ฑ„๋„๊ณผ ์—ฐ๊ฒฐ๋œ ํ˜„์žฌ ๋ฒ„์ „์„ ์—…๋ฐ์ดํŠธ๋กœ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ํ˜„์žฌ ๋ฒ„๋ธ”์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

Example:

Terminal window
npx @capgo/cli@latest channel currentBundle production com.example.app

Options:

ParamType์„ค๋ช…
-cstringํ˜„์žฌ ๋ฒ„๋ธ”์„ ๊ฐ€์ ธ์˜ฌ ์ฑ„๋„
-astringAPI ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„์ •์— ์—ฐ๊ฒฐ
โ€”quietboolean๋ฒ„์ „๋งŒ ์ถœ๋ ฅ
โ€”supa-hoststring์ž์ฒด ํ˜ธ์ŠคํŒ… ๋˜๋Š” Capgo ๊ฐœ๋ฐœ์„์œ„ํ•œ ์ปค์Šคํ…€ Supabase ํ˜ธ์ŠคํŠธ URL
โ€”supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์„์œ„ํ•œ ์ปค์Šคํ…€ Supabase anon ํ‚ค

Alias: s

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel set

โš™๏ธ ์ฑ„๋„์— ๋Œ€ํ•œ ์„ค์ •์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฒˆ๋“ค์„ ์—ฐ๊ฒฐํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธ ์ „๋žต (major, minor, metadata, patch, none), ๋˜๋Š” iOS, Android, dev, prod, emulator, device๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋Š” ์„ค์ •์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฑ„๋„์€ ํ•˜๋‚˜ ์ด์ƒ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ:

ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel set production com.example.app --bundle 1.0.0 --state default

์˜ต์…˜:

ParamType์„ค๋ช…
-astringAPI ๊ณ„์ •์— ์—ฐ๊ฒฐํ•˜๋Š” ํ‚ค
-bstringํŒŒ์ผ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ฒˆ๋“ค ๋ฒ„์ „
-sstring์ฑ„๋„์˜ ์ƒํƒœ๋ฅผ ์„ค์ •, ๊ธฐ๋ณธ ๋˜๋Š” ์ผ๋ฐ˜
โ€”latest-remotebooleancapgo ํด๋ผ์šฐ๋“œ์— ์—…๋กœ๋“œ๋œ ์ตœ์‹  ๋ฒˆ๋“ค์„ ๊ฐ€์ ธ์™€ ์ฑ„๋„์— ์„ค์ •
โ€”latestbooleanpackage.json์˜ ์ตœ์‹  ๋ฒ„์ „ ํ‚ค๋ฅผ ๊ฐ€์ ธ์™€ ์ฑ„๋„์— ์„ค์ •
โ€”downgradeboolean๋„ค์ดํ‹ฐ๋ธŒ ๋ฒ„์ „ ์ดํ•˜์˜ ๋ฒ„์ „์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ ํ—ˆ์šฉ
โ€”no-downgradeboolean๋„ค์ดํ‹ฐ๋ธŒ ๋ฒ„์ „ ์ดํ•˜์˜ ๋ฒ„์ „์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Œ
โ€”iOSbooleaniOS ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”no-iOSbooleaniOS ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์—†๋„๋ก ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”AndroidbooleanAndroid ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”no-AndroidbooleanAndroid ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์—†๋„๋ก ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”self-assignboolean์ด ์ฑ„๋„์— ์žฅ์น˜๊ฐ€ ์ž์ฒด ASSIGN ๋  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”no-self-assignboolean์ด ์ฑ„๋„์— ์žฅ์น˜๊ฐ€ ์ž์ฒด ASSIGN ๋  ์ˆ˜ ์—†๋„๋ก ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”์—…๋ฐ์ดํŠธ ์ฐจ๋‹จstring์—…๋ฐ์ดํŠธ ์ฐจ๋‹จ ์œ ํ˜•: major, minor, metadata, patch, ๋˜๋Š” none (๋ชจ๋‘ ํ—ˆ์šฉ)
โ€”ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธstringzip, delta, ๋˜๋Š” ๋‘˜ ๋‹ค ์ œ๊ณต: all, zip, delta, zip_from_builtin, ๋˜๋Š” delta_from_builtin
โ€”๋กค์•„์›ƒ ๋ฒˆ๋“คstring์ด ์ฑ„๋„์—์„œ ์ ์ง„์ ์œผ๋กœ ๋ฆด๋ฆฌ์ฆˆํ•  ๋ฒˆ๋“ค์˜ ๋ฒ„์ „
โ€”๋กค์•„์›ƒ ํผ์„ผํŠธstring0์—์„œ 100๊นŒ์ง€์˜ ํผ์„ผํŠธ
โ€”๋กค์•„์›ƒ ํผ์„ผํŠธ BPSstring0์—์„œ 10000๊นŒ์ง€์˜ ํผ์„ผํŠธ BPS
โ€”๋กค์•„์›ƒ ํ™œ์„ฑํ™”boolean๊ตฌ์„ฑ๋œ ๋กค์•„์›ƒ ํ™œ์„ฑํ™”
โ€”rollout-disableboolean์„ค์ •๋œ ๋กค์•„์›ƒ์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”rollout-pauseboolean์„ ํƒํ•œ ๊ธฐ๊ธฐ rollback ์—†์ด ๋กค์•„์›ƒ ๋…ธ์ถœ์„ ์ค‘๋‹จํ•ฉ๋‹ˆ๋‹ค.
โ€”rollout-resumeboolean์ค‘๋‹จ๋œ ๋กค์•„์›ƒ์„ ์žฌ๊ฐœํ•ฉ๋‹ˆ๋‹ค.
โ€”rollout-rollbackboolean๋กค์•„์›ƒ ์ƒํƒœ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ๊ธฐ๊ธฐ๋“ค์„ ์•ˆ์ • ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆฝ๋‹ˆ๋‹ค.
โ€”rollout-promoteboolean๋กค์•„์›ƒ ๋Œ€์ƒ์˜ ์•ˆ์ • ์ƒํƒœ๋กœ ์ „ํ™˜ํ•˜๊ณ  ๋กค์•„์›ƒ ์ƒํƒœ๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”rollout-cache-ttl-secondsstringCloudflare TTL (์ดˆ) : ๋กค์•„์›ƒ ๊ฒฐ์ • ์บ์‹œ
โ€”auto-pause-enabledboolean๋กค์•„์›ƒ ์ž๋™ ์ค‘๋‹จ ์ •์ฑ… ํ™œ์„ฑํ™”
โ€”auto-pause-disabledboolean๋กค์•„์›ƒ ์ž๋™ ์ค‘๋‹จ ์ •์ฑ… ๋น„ํ™œ์„ฑํ™”
โ€”auto-pause-window-minutesstring๋กค์•„์›ƒ ์ž๋™ ์ค‘๋‹จ ์ •์ฑ… ์œˆ๋„์šฐ
โ€”auto-pause-failure-rate-bpsstring์‹คํŒจ์œจ ๊ธฐ์ค€์ 
โ€”auto-pause-confidencestring์‹ ๋ขฐ๋„ (0์—์„œ 1 ์‚ฌ์ด)
โ€”auto-pause-min-attemptsstring์ž๋™ ์ค‘๋‹จ์ด ํŠธ๋ฆฌ๊ฑฐ๋˜๊ธฐ ์ „์— ์„ค์น˜ ๋ฐ ์‹คํŒจ ์‹œ๋„ ์ตœ์†Œ ํšŸ์ˆ˜
โ€”auto-pause-min-failuresstring์ž๋™ ์ผ์‹œ์ •์ง€ ์ „ ์‹คํŒจ ํšŸ์ˆ˜
โ€”auto-pause-actionstring์ž๋™ ์ผ์‹œ์ •์ง€ ๋™์ž‘: ์ผ์‹œ์ •์ง€, ๋กค๋ฐฑ, ๋˜๋Š” ์•Œ๋ฆผ
โ€”auto-pause-cooldown-minutesstring์ž๋™ ์ผ์‹œ์ •์ง€ ์žฌ์‹œ๋„ ๋Œ€๊ธฐ ์‹œ๊ฐ„
โ€”devboolean๊ฐœ๋ฐœ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ ์ „์†ก ํ—ˆ์šฉ
โ€”no-devboolean๊ฐœ๋ฐœ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ ์ „์†ก ๊ธˆ์ง€
โ€”prodboolean์šด์˜ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ ์ „์†ก ํ—ˆ์šฉ
โ€”no-prodboolean์ƒ์‚ฐ ๊ธฐ๊ธฐ ์—…๋ฐ์ดํŠธ ์ „์†ก ์ฐจ๋‹จ
โ€”emulatorboolean์—๋ฎฌ๋ ˆ์ดํ„ฐ ๊ธฐ๊ธฐ ์—…๋ฐ์ดํŠธ ์ „์†ก ํ—ˆ์šฉ
โ€”no-emulatorboolean์—๋ฎฌ๋ ˆ์ดํ„ฐ ๊ธฐ๊ธฐ ์—…๋ฐ์ดํŠธ ์ „์†ก ์ฐจ๋‹จ
โ€”deviceboolean๋ฌผ๋ฆฌ ๊ธฐ๊ธฐ ์—…๋ฐ์ดํŠธ ์ „์†ก ํ—ˆ์šฉ
โ€”no-deviceboolean๋ฌผ๋ฆฌ ๊ธฐ๊ธฐ ์—…๋ฐ์ดํŠธ ์ „์†ก ์ฐจ๋‹จ
โ€”qr-previewboolean์ฑ„๋„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์—…๋ฐ์ดํŠธ ํ›„ ํ„ฐ๋ฏธ๋„ QR code ์ถœ๋ ฅ
โ€”์—…๋ฐ์ดํŠธ ์•Œ๋ฆผ ์ „์†กboolean์žฅ์น˜์— ์—…๋ฐ์ดํŠธ๋œ ์—ฐ๊ฒฐ๋œ ์ฑ„๋„ ๋ฒˆ๋“ค์— ๋Œ€ํ•œ ์›์‹œ ์—…๋ฐ์ดํŠธ ์ฒดํฌ ์•Œ๋ฆผ์„ ์ „์†กํ•ฉ๋‹ˆ๋‹ค.
โ€”ํŒจํ‚ค์ง€ jsonstring๋ชจ๋…ธ๋ ˆํฌ์˜ ํŒจํ‚ค์ง€ json ํŒŒ์ผ ๊ฒฝ๋กœ (์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„)
โ€”ignore-metadata-checkboolean๋ฒˆ๋“ค ๋‚ด์— node_modules ํ˜ธํ™˜์„ฑ ํ™•์ธ์„ ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค.
โ€”supa-hoststringCustom Supabase host URL (for self-hosting or Capgo development)
โ€”supa-anonstring์ปค์Šคํ…€ Supabase anon ํ‚ค (์ž์ฒด ํ˜ธ์ŠคํŒ…์šฉ)