Skip to content

๐Ÿ“ข ์ฑ„๋„

๐Ÿ“ข ์•ฑ ์—…๋ฐ์ดํŠธ๋ฅผ ์œ„ํ•œ Capgo Cloud์˜ ๋ฐฐํฌ ์ฑ„๋„ ๊ด€๋ฆฌ

Alias: a

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

โž• Capgo ์•ฑ ๋ฐฐํฌ ์ฑ„๋„์„ ์ƒ์„ฑํ•˜์„ธ์š”.

์˜ˆ์‹œ:

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

์„ค์ •:

ํŒŒ๋ผ๋ฏธํ„ฐํƒ€์ž…์„ค๋ช…
-dboolean๊ธฐ๋ณธ ์ฑ„๋„ ์„ค์ •
โ€”self-assignboolean์ด ์ฑ„๋„์— ์žฅ์น˜ ์ž์ฒด ํ• ๋‹น ํ—ˆ์šฉ
-astringAPI ๊ณ„์ •์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค
โ€”supa-hoststring์ž์ฒด ํ˜ธ์ŠคํŒ… ๋˜๋Š” ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” Capgo Supabase ํ˜ธ์ŠคํŠธ URL
โ€”supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” Supabase anon ํ‚ค

Alias: d

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

Capgo Cloud์—์„œ ์ฑ„๋„์„ ์‚ญ์ œํ•˜๊ณ  optionally ๊ด€๋ จ๋œ ํŒจํ‚ค์ง€๋ฅผ ์‚ญ์ œํ•˜์—ฌ ์ž์› ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ž…๋‹ˆ๋‹ค.

์˜ˆ์‹œ:

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

์˜ต์…˜:

ํŒŒ๋ผ๋ฏธํ„ฐํƒ€์ž…์„ค๋ช…
-astringAPI ๊ณ„์ •์— ์—ฐ๊ฒฐํ•˜๋Š” ํ‚ค
์ฑ„๋„๊ณผ ๊ด€๋ จ๋œ ๋ฒˆ๋“ค ์‚ญ์ œ. App Preview ํ‚ค๋Š” ์ฑ„๋„๊ณผ ๊ด€๋ จ๋œ ๋ฒˆ๋“ค์„ atomically ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.booleanโ€”delete-bundle
์ฑ„๋„๊ณผ ๊ด€๋ จ๋œ ๋ฒˆ๋“ค์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. App Preview ํ‚ค๋Š” ์ฑ„๋„๊ณผ ๊ด€๋ จ๋œ ๋ฒˆ๋“ค์„ atomically ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.boolean์ฑ„๋„์ด ๋ฐœ๊ฒฌ๋˜์ง€ ์•Š์œผ๋ฉด ์„ฑ๊ณต
โ€”supa-hoststringCustom Supabase host URL (for self-hosting or Capgo development)
โ€”supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ปค์Šคํ…€ Supabase anon ํ‚ค

Alias: l

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

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

์˜ˆ์‹œ:

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

์˜ต์…˜:

ParamType์„ค๋ช…
-astringAPI ๊ณ„์ •์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค
โ€”supa-hoststringCustom Supabase host URL (for self-hosting or Capgo development)
โ€”supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์„ ์œ„ํ•œ ์ปค์Šคํ…€ Supabase anon ํ‚ค

๐Ÿ“ฆ ํ˜„์žฌ ๋ฒˆ๋“ค

์ œ๋ชฉ: ๐Ÿ“ฆ ํ˜„์žฌ ๋ฒˆ๋“ค
ํ„ฐ๋ฏธ๋„ ์ฐฝ
npx @capgo/cli@latest channel currentBundle

Capgo์—์„œ ํŠน์ • ์ฑ„๋„์— ์—ฐ๊ฒฐ๋œ ํ˜„์žฌ ๋ฒˆ๋“ค์„ ๊ฐ€์ ธ์™€ ์—…๋ฐ์ดํŠธ ์ถ”์ ์„ ์œ„ํ•ด ํด๋ผ์šฐ๋“œ์— ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ:

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

์˜ต์…˜:

ParamType์„ค๋ช…
-cstring__CAPGO_KEEP_0__์—์„œ ํ˜„์žฌ ๋ฒˆ๋“ค์„ ๊ฐ€์ ธ์˜ฌ ์ฑ„๋„์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค
-astringAPI ํ‚ค๋ฅผ ํด๋ฆญํ•˜์—ฌ ๊ณ„์ •์— ์—ฐ๊ฒฐํ•˜์„ธ์š”.
โ€”quietboolean๋ฐฐํฌ ๋ฒ„์ „๋งŒ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
โ€”supa-hoststring์ž์ฒด ํ˜ธ์ŠคํŒ… ๋˜๋Š” ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” Supabase ํ˜ธ์ŠคํŠธ URL (๊ธฐ๋ณธ๊ฐ’: Capgo)
โ€”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 ๊ธฐ๊ธฐ์—๊ฒŒ ์—…๋ฐ์ดํŠธ ๋ณด๋‚ด๊ธฐ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”iOS๋ฅผ ๋น„ํ™œ์„ฑํ™”booleaniOS ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค
โ€”์•ˆ๋“œ๋กœ์ด๋“œboolean์•ˆ๋“œ๋กœ์ด๋“œ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค
โ€”์•ˆ๋“œ๋กœ์ด๋“œ๋ฅผ ๋น„ํ™œ์„ฑํ™”boolean์•ˆ๋“œ๋กœ์ด๋“œ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค
โ€”์ž์‹  ํ• ๋‹นboolean์žฅ์น˜๊ฐ€ ์ด ์ฑ„๋„์— ์ž์ฒด ํ• ๋‹น์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค
โ€”์ž์‹  ํ• ๋‹น ๋น„ํ™œ์„ฑํ™”boolean์žฅ์น˜๊ฐ€ ์ด ์ฑ„๋„์— ์ž์ฒด ํ• ๋‹น์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
โ€”์ž๋™ ์—…๋ฐ์ดํŠธ๋ฅผ ๋น„ํ™œ์„ฑํ™”string์—…๋ฐ์ดํŠธ ์œ ํ˜•: ๋ฉ”์ด์ €, ๋ฏธ๋‹ˆ์–ด, ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ, ํŒจ์น˜ ๋˜๋Š” ์—†์Œ (๋ชจ๋‘ ํ—ˆ์šฉ)
โ€”string__CAPGO_KEEP_0__ ๋ฒ„์ „์„ ์ด ์ฑ„๋„์—์„œ ์ ์ง„์ ์œผ๋กœ ๋ฆด๋ฆฌ์ฆˆํ•  ๋ฒ„์ „
โ€”string0์—์„œ 100๊นŒ์ง€์˜ ๋กค์•„์›ƒ ํผ์„ผํ‹ฐ์ง€
โ€”string0์—์„œ 10000๊นŒ์ง€์˜ ๋กค์•„์›ƒ ํผ์„ผํ‹ฐ์ง€ (basis points)
โ€”boolean๊ตฌ์„ฑ๋œ ๋กค์•„์›ƒ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”boolean๊ตฌ์„ฑ๋œ ๋กค์•„์›ƒ์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
โ€”boolean์„ ํƒ๋œ ๊ธฐ๊ธฐ ๋กค๋ฐฑ ์—†์ด ๋กค์•„์›ƒ ๋…ธ์ถœ์„ ์ค‘๋‹จํ•ฉ๋‹ˆ๋‹ค.
โ€”rollout-resumeboolean๋กค์•„์›ƒ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค
โ€”rollout-rollbackboolean๋กค์•„์›ƒ ์ƒํƒœ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ์•ˆ์ • ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆฝ๋‹ˆ๋‹ค
โ€”rollout-promoteboolean๋กค์•„์›ƒ ๋Œ€์ƒ์˜ ์•ˆ์ • ์ƒํƒœ๋กœ ์ „ํ™˜ํ•˜๊ณ  ๋กค์•„์›ƒ ์ƒํƒœ๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค
โ€”rollout-cache-ttl-secondsstringCloudflare ์ดˆ ๋™์•ˆ์˜ ๋กค์•„์›ƒ ๊ฒฐ์ • ์บ์‹œ TTL
โ€”auto-pause-enabledboolean๋กค์•„์›ƒ ์ž๋™ ์ค‘๋‹จ ์ •์ฑ…์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค
โ€”auto-pause-disabledboolean๋กค์•„์›ƒ ์ž๋™ ์ค‘๋‹จ ์ •์ฑ…์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค
โ€”์ž๋™ ์ผ์‹œ ์ค‘์ง€ ์ฐฝ ๋ถ„ ๋‹จstring์ผ์‹œ ์ค‘์ง€ ๋กค์•„์›ƒ ํ†ต๊ณ„ ์ฐฝ
โ€”์ž๋™ ์ผ์‹œ ์ค‘์ง€ ์‹คํŒจ์œจ ๊ธฐ์ค€์ string๊ธฐ์ค€์  ์‹คํŒจ์œจ
โ€”์ž๋™ ์ผ์‹œ ์ค‘์ง€ ์‹ ๋ขฐ๋„string0์—์„œ 1 ์‚ฌ์ด์˜ ์‹ ๋ขฐ๋„
โ€”์ž๋™ ์ผ์‹œ ์ค‘์ง€ ์ตœ์†Œ ์‹œ๋„string์ผ์‹œ ์ค‘์ง€ ๋ฐ ์‹คํŒจ ์‹œ๋„ ์ตœ์†Œ ํšŸ์ˆ˜
โ€”์ž๋™ ์ผ์‹œ ์ค‘์ง€ ์ตœ์†Œ ์‹คํŒจstring์ผ์‹œ ์ค‘์ง€ ์‹คํŒจ ํšŸ์ˆ˜ ์ตœ์†Œ
โ€”์ž๋™ ์ผ์‹œ ์ค‘์ง€ ๋™์ž‘string์ผ์‹œ ์ค‘์ง€ ๋™์ž‘: ์ผ์‹œ ์ค‘์ง€, ๋กค๋ฐฑ, ๋˜๋Š” ์•Œ๋ฆผ
โ€”์ž๋™ ์ผ์‹œ์ •์ง€ ์ฟจ๋‹ค์šด ๋ถ„string์ž๋™ ์ผ์‹œ์ •์ง€ ๋‹ค์‹œ ํŠธ๋ฆฌ๊ฑฐ ํ•  ์ˆ˜ ์žˆ๋Š” ์ฟจ๋‹ค์šด ์‹œ๊ฐ„
โ€”๊ฐœ๋ฐœ์žboolean๊ฐœ๋ฐœ์ž ๊ธฐ๊ธฐ์—๊ฒŒ ์—…๋ฐ์ดํŠธ ๋ณด๋‚ด๊ธฐ ํ—ˆ์šฉ
โ€”๊ฐœ๋ฐœ์ž ๋น„ํ™œ์„ฑํ™”boolean๊ฐœ๋ฐœ์ž ๊ธฐ๊ธฐ์—๊ฒŒ ์—…๋ฐ์ดํŠธ ๋ณด๋‚ด๊ธฐ ๋น„ํ™œ์„ฑํ™”
โ€”ํ”„๋กœ๋•์…˜booleanํ”„๋กœ๋•์…˜ ๊ธฐ๊ธฐ์—๊ฒŒ ์—…๋ฐ์ดํŠธ ๋ณด๋‚ด๊ธฐ ํ—ˆ์šฉ
โ€”ํ”„๋กœ๋•์…˜ ๋น„ํ™œ์„ฑํ™”booleanํ”„๋กœ๋•์…˜ ๊ธฐ๊ธฐ์—๊ฒŒ ์—…๋ฐ์ดํŠธ ๋ณด๋‚ด๊ธฐ ๋น„ํ™œ์„ฑํ™”
โ€”์—๋ฎฌ๋ ˆ์ดํ„ฐboolean์—๋ฎฌ๋ ˆ์ดํ„ฐ ๊ธฐ๊ธฐ์—๊ฒŒ ์—…๋ฐ์ดํŠธ ๋ณด๋‚ด๊ธฐ ํ—ˆ์šฉ
โ€”no-emulatorboolean์—๋ฎฌ๋ ˆ์ดํ„ฐ๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
โ€”deviceboolean๋ฌผ๋ฆฌ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”no-deviceboolean๋ฌผ๋ฆฌ ์žฅ์น˜๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
โ€”qr-previewboolean์ฑ„๋„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์—…๋ฐ์ดํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ•œ ํ›„ ํ„ฐ๋ฏธ๋„ QR code๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
โ€”send-update-notificationboolean์žฅ์น˜์— ์—…๋ฐ์ดํŠธ๋œ ์—ฐ๊ฒฐ๋œ ์ฑ„๋„ ๋ฒˆ๋“ค ์—…๋ฐ์ดํŠธ๋ฅผ ํ™•์ธํ•˜๋Š” ์›์ƒ ์•Œ๋ฆผ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€”package-jsonstring๋ชจ๋…ธ๋ ˆํฌ์˜ package.json ํŒŒ์ผ ๊ฒฝ๋กœ (์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„)
โ€”ignore-metadata-checkbooleannode_modules ํ˜ธํ™˜์„ฑ ์ฒดํฌ๋ฅผ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค.
โ€”supa-hoststringCustom Supabase host URL (for self-hosting or Capgo development)
โ€”supa-anonstring์ž์ฒด ํ˜ธ์ŠคํŒ…์šฉ์œผ๋กœ ์‚ฌ์šฉํ•  Supabase anon ํ‚ค๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.