Firebase-tools: Node 8 ๋ฐ firebase-tools@^4.0.0์œผ๋กœ ์—…๋ฐ์ดํŠธ ํ•œ ํ›„ ์„ธ๋ถ€ ์ •๋ณด๊ฐ€์—†๋Š” ๋ฐฐํฌ ์˜ค๋ฅ˜

์— ๋งŒ๋“  2018๋…„ 08์›” 02์ผ  ยท  113์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: firebase/firebase-tools

๋ฒ„์ „ ์ •๋ณด

^4.0.0

ํ”Œ๋žซํผ ์ •๋ณด

Ubuntu 14.04.5 LTS (Travis CI)

์žฌํ˜„ ๋‹จ๊ณ„

firebase deploy --except hosting ๋…ธ๋“œ 8 ๋Ÿฐํƒ€์ž„์—์„œ ์‹คํ–‰๋˜๋Š” ๋งŽ์€ ํ•จ์ˆ˜ (์ด ๊ฒฝ์šฐ 52).

์˜ˆ์ƒ๋˜๋Š” ํ–‰๋™

firebase-tools ์„ ๋ฒ„์ „ 4 ์ด์ƒ์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์ „์— ( 4.0.0 , 4.0.1 ๋ฐ 4.0.2 ๋ฒ„์ „์— ๋Œ€ํ•ด ์ •ํ™•ํžˆ ๋™์ผํ•œ ๋™์ž‘์„ ๊ฐ€์ง) ๋…ธ๋“œ 8์„ ์‚ฌ์šฉํ•˜์—ฌ ์—…๋ฐ์ดํŠธ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋ชจ๋“  ํด๋ผ์šฐ๋“œ ๊ธฐ๋Šฅ์ด ์‹คํŒจํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
์ด๋Š” ํ”„๋กœ๋•์…˜์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌ ํ•  ๋•Œ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณ„์† ๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ํ–‰๋™

์ด ์—…๋ฐ์ดํŠธ ์ดํ›„ ํ•ญ์ƒ ๋‹ค์Œ ์˜ค๋ฅ˜์™€ ํ•จ๊ป˜ ๋ฐฐํฌ์— ์‹คํŒจํ•˜๋Š” ํ•จ์ˆ˜๊ฐ€ ํ•˜๋‚˜ ๋˜๋Š” ๋‘ ๊ฐœ ์ด์ƒ ์žˆ์Šต๋‹ˆ๋‹ค.

โš   functions[<our-function-name>(us-central1)]: Deployment error.
Build failed: Build error details not available

[email protected] ๋งˆ์ง€๋ง‰ ๋ฐฐํฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋™์•ˆ 4 ๊ฐœ์˜ ํ•จ์ˆ˜๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

functions ongoing bug

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์•ˆ๋…•ํ•˜์„ธ์š” @thechenky , ๋‚˜๋Š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "global"}, { "status ":"MISS ","hash ":"{{hashCode}} ","type ":"docker_layer_cache ","level ":"project "}]}

์ด ์Šค๋ ˆ๋“œ๋ฅผ ์˜จ๋ผ์ธ์œผ๋กœ ์ฝ๊ณ  ๋‹ค์‹œ ๋ฐฐํฌํ•˜๋ฉด์„œ ์•ฝ 5 ๋ถ„ ๋™์•ˆ ๊ธฐ๋‹ค๋ ธ๊ณ  ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋•Œ๋•Œ๋กœ ๋นŒ๋“œ๊ฐ€ ์—ฌ์ „ํžˆ ์‹คํŒจ ํ•  ์ˆ˜์žˆ๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ค๋Š˜๋‚ ์—๋„ ์—ฌ์ „ํžˆ ๋˜‘๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (2020-01-07)

๋ชจ๋“  113 ๋Œ“๊ธ€

์•ˆ๋…•ํ•˜์„ธ์š”, ๋ฌธ์ œ๋Š” firebase-tools ๋ฒ„์ „์ด ์•„๋‹ˆ๋ผ ๋ฐฐํฌ์ค‘์ธ ํ•จ์ˆ˜์˜ ์ˆ˜ ๋•Œ๋ฌธ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค (๋ฌผ๋ก  ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ•˜์—ฌ ํ…Œ์ŠคํŠธ ํ•  ์ˆ˜ ์žˆ์Œ). ๋ชจ๋“  ํ•จ์ˆ˜ ๋Œ€์‹  ํ•œ ๋ฒˆ์— ์ผ๋ถ€ ํ•จ์ˆ˜๋ฅผ ๋ฐฐํฌํ•˜์„ธ์š”. https://firebase.google.com/docs/cli/#deploy_specific_functions๋ฅผ ์ฐธ์กฐ

๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  12 ๊ฐœ์˜ ๊ธฐ๋Šฅ ๋งŒ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋“œ 8๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ๋•Œ๊นŒ์ง€ ์ด๋Ÿฌํ•œ ๋ฐฐํฌ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

.. ๋ฐฐํฌ ํ•  ์ˆ˜์žˆ๋Š” ์ˆ˜์— ์ œํ•œ์ด ์žˆ๋‹ค๋ฉด ์–ด๋”˜๊ฐ€์— ๋ฌธ์„œํ™”ํ•ด์•ผํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๋…ธ๋“œ 8์—์„œ ํ•˜๋‚˜์˜ ํ•จ์ˆ˜ ๋งŒ ๋ฐฐํฌ ํ•  ๋•Œ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ƒˆ๋กœ์šด ๋ฒ„์ „์˜ firebase-tools ์ž์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ Node 8 ๋Œ€ Node 6์— ๋ฐฐํฌํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค (๋”ฐ๋ผ์„œ ๋™์ผํ•œ firebase-tools๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ Node 6์— ๋ฐฐํฌํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ์ค„์–ด ๋“ญ๋‹ˆ๋‹ค). ๋Ÿฐํƒ€์ž„์„ ๋‹ด๋‹นํ•˜๋Š” ํŒ€์— ๋‚ด๋ถ€์ ์œผ๋กœ ๋ฒ„๊ทธ๋ฅผ ์‹ ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋งค์šฐ ์„ฑ๊ฐ€์‹  ๋ฒ„๊ทธ์ž…๋‹ˆ๋‹ค. ๋‚ด ํ•จ์ˆ˜ ๋ฐฐํฌ๊ฐ€ 10 ๋ฒˆ ์ค‘ 9 ๋ฒˆ ์‹คํŒจํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์‚ฌ๋žŒ๋“ค์˜ ๋ ˆ์ด๋”์— ์žˆ๋‹ค๋Š” ์†Œ์‹์„ ๋“ฃ๊ณ  ๊ธฐ์ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ Node.js 6์œผ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.

@jpreynat @ 0x80 ์ „์ฒด ๋ฐฐํฌ๊ฐ€ ์‹คํŒจํ•˜๊ฑฐ๋‚˜ ์ผ๋ถ€ ๊ธฐ๋Šฅ์ด ๋ฐฐํฌ๋˜๊ณ  ์ผ๋ถ€๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๊นŒ?
(_100 ๊ฐœ ์ด์ƒ์˜ ๊ธฐ๋Šฅ์„ Node v8๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด์•ผํ•˜๋Š”์ง€ ์กฐ์‚ฌ)

@ahaverty ์ œ ๊ฒฝ์šฐ์—๋Š” ์‹คํŒจํ•œ 52 ๊ฐœ์˜ ํ•จ์ˆ˜๊ฐ€ 3 ๊ฐœ ๋˜๋Š” 4 ๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๋ฐฐํฌ๊ฐ€ ์™„์ „ํžˆ ์‹คํŒจํ•˜์—ฌ ๋ชจ๋“  ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๊ธฐ๋Šฅ์ด ํ•ญ์ƒ ๋™์ผํ•œ ๋ฒ„์ „์— ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

@jpreynat ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” CI๋ฅผ ํ†ตํ•ด ๋ฐฐํฌ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋ถ€๋ถ„์ ์œผ๋กœ๋Š” ์•„๋‹ˆ์ง€๋งŒ ์™„์ „ํ•œ ์‹คํŒจ๋กœ ์‚ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์ธํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋  ๋•Œ๊นŒ์ง€ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ๋ณด๋ฅ˜ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์ผ์–ด๋‚˜๊ณ  ์žˆ์œผ๋ฉฐ ์Šคํ…Œ์ด์ง• ๋ฐ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.
๋ช‡ ๋ถ„ ์ „์— ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์žฌ๋ฐฐํฌํ–ˆ์œผ๋ฉฐ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ช…๋ฐฑํ•œ ์ด์œ ์—†์ด ๋ฐฐํฌ์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.

@ahaverty ๋„ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด CLI๋Š” ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ถˆ์•ˆ์ •์„ฑ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ ์–ด๋„ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐฐํฌ ๋œ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๋กค๋ฐฑํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
@laurenzlong ์‹คํŒจ ์ด์œ ์™€ ์ˆ˜์ • ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ETA์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
์ค‘์š”ํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ํ”„๋กœ๋•์…˜์— ๋ฐฐํฌํ•˜๋ ค๊ณ ํ•˜๋ฉฐ ์™„์ „ํžˆ ๋ฐฐํฌ๋˜์—ˆ๋Š”์ง€ ๋˜๋Š” ์ „ํ˜€ ๋ฐฐํฌ๋˜์ง€ ์•Š์•˜๋Š”์ง€ ํ™•์ธํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์•ผ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๊ณ  ์•ฑ์ด ์ถฉ๋Œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์†Œ๊ทธ๋ฃน์œผ๋กœ ๋˜๋Š” ๊ฐœ๋ณ„์ ์œผ๋กœ ๊ธฐ๋Šฅ์„ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
์ž ์žฌ์  ์ธ ๋ถˆ๋Ÿ‰ ๋ถ€๋ถ„ ๋ฐฐํฌ ์ƒํƒœ๋ฅผ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค. ๋กค๋ฐฑ์€ ๊ธฐ๋Šฅ์ด ์•„๋‹™๋‹ˆ๋‹ค.
๋‹จ๊ธฐ์  ๊ด€์ ์—์„œ.

2018 ๋…„ 8 ์›” 16 ์ผ ๋ชฉ์š”์ผ ์˜ค์ „ 10:07 Johan Preynat [email protected]
์ผ๋‹ค :

์ด๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์ผ์–ด๋‚˜๊ณ  ์žˆ์œผ๋ฉฐ ์Šคํ…Œ์ด์ง• ๋ฐ ํ”„๋กœ๋•์…˜์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.
ํ™˜๊ฒฝ.
๋ช‡ ๋ถ„ ์ „์— ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์žฌ๋ฐฐํฌํ–ˆ์œผ๋ฉฐ
๋ช…๋ฐฑํ•œ ์ด์œ ์—†์ด ๊ธฐ๋Šฅ์„ ๋ฐฐํฌํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

@ahaverty https://github.com/ahaverty ๋„ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด CLI๋Š”
์ตœ์†Œํ•œ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐฐํฌ ๋œ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๋กค๋ฐฑํ•˜์—ฌ
์ „์ฒด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ถˆ์•ˆ์ •์„ฑ.
@laurenzlong https://github.com/laurenzlong ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
์‹คํŒจ ์ด์œ ์™€ ์ˆ˜์ • ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ETA์— ๋Œ€ํ•ด?
ํ”„๋กœ๋•์…˜์— ์ค‘์š”ํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ฐฐํฌํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค.
์™„์ „ํžˆ ๋ฐฐํฌ๋˜์—ˆ๊ฑฐ๋‚˜ ์ „ํ˜€ ๋ฐฐํฌ๋˜์ง€ ์•Š์•˜์œผ๋ฏ€๋กœ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ณ 
์•ฑ์ด ์ถฉ๋Œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

โ€”
์ด ์Šค๋ ˆ๋“œ๋ฅผ ๊ตฌ๋…ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—์ด ๋ฉ”์‹œ์ง€๊ฐ€ ์ „์†ก๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/firebase/firebase-tools/issues/853#issuecomment-413557599 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AAAD_gn6e0hkZXlbiM_hv-oBf2T8_Iujks5uRXySgaJpZM4Vsn0E
.

๋…ธ๋“œ 8์—์„œ๋„์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋…ธ๋“œ 6์œผ๋กœ ๋‹ค์‹œ ์ „ํ™˜ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋…ธ๋“œ 8๋กœ ์ „ํ™˜ ํ•œ ํ›„ ...

  1. ~ 3 % ํ˜ธ์ถœ ์‹คํŒจ
  2. ๋ฐฐํฌ ์‹œ๊ฐ„ ์ตœ๋Œ€ 4 ๋ฐฐ ์ฆ๊ฐ€
  3. 24 ๊ฐœ ๊ธฐ๋Šฅ ์ค‘ 2 ๊ฐœ๊ฐ€ ๋ฐฐํฌ์— ์‹คํŒจํ•˜์—ฌ ~ 80 % ๋ฐฐํฌ ์‹คํŒจ

https://stackoverflow.com/questions/52056953/functions-issues-with-node-8-lts/52058796#52058796

์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•ด Node 8๋กœ ์ „ํ™˜ํ•˜์—ฌ ์ด์™€ ๊ฐ™์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ตฌ์ถ• ํ•  ์ˆ˜์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด Node 8์—์„œ ์„ฑ๊ณตํ•˜์ง€ ๋ชปํ•œ ์ด์œ ์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

https://stackoverflow.com/questions/43486278/how-do-i-structure-cloud-functions-for-firebase-to-deploy-multiple-functions-fro/52056785#52056785

Node 8์„ ์‚ฌ์šฉํ•˜๋Š” firebase-tools v4.2.1์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ 6์œผ๋กœ ๋‹ค์‹œ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ๋ฐฐํฌ ํ•  ์ˆ˜์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

@michaelauderer ์—ฌ๊ธฐ์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€ ์ž…๋‹ˆ๋‹ค. ์ง€๋‚œ ๋ช‡ ์‹œ๊ฐ„ ๋™์•ˆ ๊ฒฐํ•จ์ด์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ด๋ฏ€๋กœ ํด๋ผ์šฐ๋“œ ๋ฌธ์ œ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@michaelauderer @mulhoon ์—ฌ๊ธฐ ๋…ธ๋“œ 8๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์ง€๋งŒ ์–ด์ œ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐฐํฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ ๋œ ๋™์ผํ•œ ๊ธฐ๋Šฅ (4 ๊ฐœ ์ค‘ 4 ๊ฐœ)์ด ์‚ฌ์šฉ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์ƒํ•ฉ๋‹ˆ๋‹ค.

@yuliankarapetkov ๋„ค, ์–ด์ œ ์ž˜ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
์ฐธ๊ณ ๋กœ ๋…ธ๋“œ v8.9.4์— yarn์œผ๋กœ ๋…ธ๋“œ ๋ชจ๋“ˆ์„ ์„ค์น˜ ํ•œ ๋‹ค์Œ ๋…ธ๋“œ v9.4.0์œผ๋กœ ์ „ํ™˜ํ•˜์—ฌ ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž˜๋˜๋Š” ๊ฒƒ ๊ฐ™์•˜๋‹ค.

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ง€๋งŒ ์˜ค๋Š˜ ์•„์นจ์—์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ๋Š” ์ง€๊ธˆ GCF ์ƒํƒœ์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. https://status.firebase.google.com/incident/Functions/18034 @mulhoon @yuliankarapetkov @urkopineda ์•ˆ๋…•ํ•˜์„ธ์š”.

์šฐ์™€ ๋‚˜๋งŒ์ด ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ์ค„ ์•Œ์•˜๋Š”๋ฐ. ์ด๊ฑธ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐ ํ–ˆ๋‚˜์š”?

@jojonarte ํ˜„์žฌ๋Š” ๋น ๋ฅธ ์ˆ˜์ •์ด ์—†์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ๋Œ€๊ทœ๋ชจ ์˜ค๋ฅ˜๋Š” @ gautier-gdx์— ๋ช…์‹œ๋œ๋Œ€๋กœ Firebase ํ”Œ๋žซํผ์— ์„œ๋น„์Šค ์ค‘๋‹จ์ด ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ Firebase๊ฐ€ ์ž‘๋™ ์ค‘์ผ ๋•Œ Node 8๋กœ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ํ•œ ๋ฒˆ์— ๋ฐฐํฌํ•˜๋Š” ๋ฐ ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

@jojonarte ๋‚ด๊ฐ€ ์ฐพ์€ ์œ ์ผํ•œ ํ•ด๊ฒฐ์ฑ…์€ ๋…ธ๋“œ 6์œผ๋กœ ๋‹ค์‹œ ๋ฆฌํŒฉํ„ฐ๋งํ•˜๊ณ  ๋นˆ index.js ๋ฅผ ๋ฐฐํฌํ•˜์—ฌ ๋ชจ๋“  ํ•จ์ˆ˜๋ฅผ ์‚ญ์ œ ํ•œ ๋‹ค์Œ (๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋…ธ๋“œ 8 ํ•จ์ˆ˜๋กœ ๋‚จ์•„ ์žˆ์Œ) ๋…ธ๋“œ 6์„ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. index.js

์˜ˆ, ๋ฌธ์ œ๋Š” async / await (๋˜๋Š” ๋‹ค๋ฅธ Node 8 ๊ธฐ๋Šฅ)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋งŽ์€ ํ•จ์ˆ˜๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ์ด๋ฅผ ๋ฆฌํŒฉํ† ๋งํ•˜๋Š” ๋ฐ ์—„์ฒญ๋‚œ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ•ด์•ผํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๋…ธ๋“œ 8์€ 13 ๊ฐœ์˜ ํ•จ์ˆ˜๋ฅผ ํ•œ ๋ฒˆ์— ๋ฐฐํฌํ•˜๋ ค๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋Š” ์–ด์ œ ๋™์ผํ•œ ์–‘์˜ ๊ธฐ๋Šฅ์œผ๋กœ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด 12 ์‹œ๊ฐ„ ๋‚ด์— ๊ธฐ์กด Node 6 ํ•จ์ˆ˜ 2 ๊ฐœ๋ฅผ Node 8๋กœ ์—…๋ฐ์ดํŠธํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์‚ฌ์šฉ [email protected] ๋ฐฐํฌํ•˜์—ฌ ์‚ญ์ œ ์กด์žฌํ•˜๋Š” ๊ธฐ๋Šฅ์ด ํ•ด๊ฒฐ์„ ๋นˆ index.js ์žฌ ๋ฐฐํฌ ๊ตฌ์„ฑ "engines": { "node": "6" } ๋‚ด๋ถ€ package.json ๊ฐ€ ์ด์ „ ์˜๊ฒฌ์„ ์„ค๋ช…ํ•œํ•œ๋‹ค.

์ด๊ฒƒ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด ๋ฌธ์ œ๋Š” 9/25 ํ˜„์žฌ ์—ฌ์ „ํžˆ ๋ฐœ์ƒํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” 47 ๊ฐœ์˜ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ํ‰๊ท  0 ~ 5 ๊ฐœ๋Š” ๋ฐฐํฌ์— ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ•˜๊ณ  ์žˆ์ง€๋งŒ ์ด๊ฒƒ์€ ์‹ค์ œ๋กœ firebase ๊ธฐ๋Šฅ์— ์ข‹์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ˆ„๊ตฌ๋“ ์ง€ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ์ข‹์€ ๊ธฐ์ˆ ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์˜ˆ : ๋‹ค์šด ํƒ€์ž„์„ ์ค„์ด๊ธฐ์œ„ํ•œ ์ฒญ๋ก์ƒ‰ ๋ฐฐํฌ. ํ˜„์žฌ ๋ผ์ด๋ธŒ ๊ธฐ๋Šฅ์— ๋ฐฐํฌํ•˜๋ฏ€๋กœ ๋ฐฐํฌ ์‹คํŒจ๋กœ ์ธํ•ด ์‹ค์ œ ์•ฑ ๋‹ค์šด ํƒ€์ž„์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌ

๋‘ ๊ฐœ์˜ Firebase ์•ฑ์œผ๋กœ ์ฒญ๋ก์ƒ‰์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

+1 ๊ฐ™์€ ๋ฌธ์ œ

์•„์ง ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.

Build failed: Build error details not available

์•ˆ๋…•ํ•˜์„ธ์š”,์ด ๋ณด๊ณ ์„œ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š”์ด ๋ฌธ์ œ๋ฅผ ์•Œ๊ณ  ์žˆ์œผ๋ฉฐ์ด ๋ฌธ์ œ๋ฅผ ์™„ํ™”ํ•˜๊ธฐ์œ„ํ•œ ํŒŒ์ดํ”„ ๋ผ์ธ ์ž‘์—…์ด ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ์ผ์ •์„ ๊ณต์œ  ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ๊ท€ํ•˜์˜ ์˜๊ฒฌ์„ ๋“ฃ๊ณ ์ด ๋ฌธ์ œ๊ฐ€ ์‹ค๋ง ์Šค๋Ÿฝ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์œผ๋ฉฐ ์ด๋Ÿฌํ•œ ์˜ค๋ฅ˜๋ฅผ ์ค„์ผ ์ˆ˜์žˆ๋Š” ์ž‘์—…์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์ •ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด๋ถ€ ๋ฒ„๊ทธ ์ฐธ์กฐ : 117124663

๋Šฆ๋Š” ๊ฒŒ ์•ˆํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋‚ซ๋‹ค. ๋ฌธ์ œ๋ฅผ ์ธ์ •ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์•Œ๋ ค์ง„ ๋ฌธ์ œ์ด๋ฏ€๋กœ์ด ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ https://firebase.googleblog.com/2018/08/cloud-functions-for-firebase-config-node-8-timeout-memory ์—์„œ ์–ธ๊ธ‰ํ•˜๋ฉด โ€‹โ€‹๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‚ฌ์‹ค, ์ด์ œ ๋ชจ๋“  ๊ฒƒ์ด ๊ดœ์ฐฎ์•„ ๋ณด์ž…๋‹ˆ๋‹ค.
๋ฌธ์ œ๋ฅผ ์—ฐ ์ดํ›„๋กœ Google์ด Cloud Function Node 8 ๋Ÿฐํƒ€์ž„์„ ์•ˆ์ •ํ™”ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ด€๋ จ์„ฑ์ด ์žˆ๋‹ค๊ณ  ํŒ๋‹จ๋˜๋ฉด Firebase ํŒ€์—์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋„๋กํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์–ด์ ฏ๋ฐค์— ์ตœ์‹  ๋ฒ„์ „์˜ ํŒŒ์ด์–ด๋ฒ ์ด์Šค ๋„๊ตฌ, ๋…ธ๋“œ 8 ๋ฐ ํŒŒ์ด์–ด๋ฒ ์ด์Šค ๊ธฐ๋Šฅ์œผ๋กœ ์ „ํ™˜ํ–ˆ์ง€๋งŒ ์•ˆํƒ€๊น๊ฒŒ๋„ ์—ฌ๊ธฐ์— ์–ธ๊ธ‰ ๋œ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜‘๊ฐ™์Šต๋‹ˆ๋‹ค-์ด๊ฒƒ์€ ์–ด์ ฏ๋ฐค ๋ฐฐํฌ์—์„œ ์ €๋ฅผ ์œ„ํ•ด ์ž˜๋ฆฐ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค ๐Ÿ˜ญ

์šฐ๋ฆฌ๋Š” 32 ๊ฐœ์˜ ๊ธฐ๋Šฅ์—์„œ ๋…ธ๋“œ 8์„ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๊ฒŒ๋˜์—ˆ๊ณ  ์–ด์ œ ๋ฐค์—๋งŒ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. 1 ๊ฐœ์—์„œ 5 ๊ฐœ ์‚ฌ์ด์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๋ฐฐํฌ๊ฐ€ ์‹คํŒจํ•˜๊ณ  ๋งค๋ฒˆ ๋‹ค๋ฅธ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

ํƒ€์ด๋ฐ๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ 3 ์›” 11 ์ผ์— Cloud Functions ๋ฐฐํฌ ์—

๋‚˜๋Š” ๊ทธ๊ฒƒ์ด "์ผํšŒ์„ฑ"์ผ์ง€๋„ ๋ชจ๋ฅธ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๋ฉด์„œ ์•ฝ๊ฐ„์˜ ์œ„์•ˆ์„ ๊ฐ€์ ธ๋‹ค ์ค€๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ, ์ •๋ง๋กœ ์—‰๋ง์ด ๋  ํ”„๋กœ๋•์…˜์— ๋ฐฐ์น˜ ํ–ˆ์—ˆ๋‹ค๋ฉด. ์ผ๋ถ€๋Š” ์„ฑ๊ณตํ–ˆ๊ณ  ๋‹ค๋ฅธ ์ผ๋ถ€๋Š” ์‹คํŒจํ–ˆ์œผ๋ฉฐ ๋…ธ๋“œ 6 ๋ฐฐํฌ๋ณด๋‹ค ํ›จ์”ฌ ๋Š ๋ ธ์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ก ์ž…๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ์ข…๋ฅ˜์˜ ํ”Œ๋žซํผ ๋ฌธ์ œ๋Š” Node 6 ๋Ÿฐํƒ€์ž„์— ๋ฐฐํฌ ํ•  ๋•Œ๋„ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ firebase-tools๊ฐ€ ๋งค์šฐ ๋ถ€์กฑํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์€ ์šฐ๋ฆฌ ํŒ€์ด ์˜ค๋žซ๋™์•ˆ ์ถ”์ง„ํ•ด ์™”์œผ๋ฉฐ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์‹ค์ œ๋กœ ์ฐธ์—ฌํ•ด์•ผํ•˜๋Š” ๊ฒƒ์€ ํŠธ๋žœ์žญ์…˜ ๋ฐฐํฌ์ž…๋‹ˆ๋‹ค (# 699 ์ฐธ์กฐ).

๋งํฌ ๋œ ๋ฌธ์ œ์—์„œ ์„ค๋ช…ํ•œ๋Œ€๋กœ ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค์— ๋ช‡ ๊ฐ€์ง€ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ์„ค์ •ํ•˜์—ฌ ์‹ฌ๊ฐํ•œ ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ–ˆ์œผ๋ฉฐ ํ”„๋กœ๋•์…˜ ๋ฐฐํฌ๊ฐ€ ํ•ญ์ƒ ์ž˜ ๋๋‚ ๋งŒํผ ์šด์ด ์ข‹์•˜์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์•ฑ์„ ์ถœ์‹œ ํ•  ๋•Œ๋งˆ๋‹ค ๊ฑฑ์ •ํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.

Node 6์— ๋ฐฐํฌ ํ•  ๋•Œ "๋ฐœ์ƒํ•  ์ˆ˜์žˆ๋‹ค"๋Š” ์ ์— ์ „ํ˜€ ๋™์˜ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ 1 ๋…„์ด ๋„˜๊ฒŒ ๋‚ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ”„๋กœ๋•์…˜ ๋‹จ๊ณ„์— ์žˆ๊ณ  Node 6์—์„œ ์‹คํ–‰ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋ณด์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ™•์‹คํžˆ # 699๋ฅผ ๋ณผ ๊ฒƒ์ด๋‹ค! ์ข‹์€ ์ €๋… ๋˜์„ธ์š” @jpreynat

๊ฐ์‚ฌ. ์ •๋ณด๋ฅผ ์œ„ํ•ด์ด ๋ฌธ์ œ๋Š” Node 6์—์„œ์˜ ๋ฐฐํฌ์—๋„ ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์—ด์—ˆ์Šต๋‹ˆ๋‹ค.
์–ด์จŒ๋“ , ์‚ฌ๋žŒ๋“ค์ด์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ๊ฐœ์„ ์„ ์›ํ•˜๊ณ  ์ถ”์ง„ํ•˜๋Š” ๊ฒƒ์„ ๋ณด๋‹ˆ ๋ฐ˜๊ฐ‘์Šต๋‹ˆ๋‹ค!
๋„ˆ์—๊ฒŒ๋„ ์ข‹์€ ์ €๋… @sboyd

@thechenky ์•ˆ๋…•ํ•˜์„ธ์š”, ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
์ด ๋ฒ„๊ทธ๋Š” ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๋…ธ๋“œ v6 ์ง€์›์„ ์ค‘๋‹จํ•˜๊ธฐ ์‹œ์ž‘ํ•จ์— ๋”ฐ๋ผ ํ”„๋กœ์ ํŠธ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋…ธ๋“œ v6์— ๋‚จ์•„์žˆ๋Š” ๋งŽ์€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์ˆ˜ํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.์ด ๋ฒ„๊ทธ๋Š” v8๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ์œ ์ผํ•œ ์ฐจ๋‹จ๊ธฐ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” @ahaverty ๋‹˜์ด ์—ฌ์ „ํžˆ์ด ๋ฌธ์ œ๋ฅผ

์ด ์ƒํ™ฉ์„ ๊ฐœ์„ ํ•ด์•ผํ•˜๋Š” https://github.com/firebase/firebase-tools/issues/853#issuecomment -456701673์—์„œ ์•ž์„œ ์–ธ๊ธ‰ ํ•œ ๋ฒ„๊ทธ๋Š” ๊ธฐ๋Šฅ์„ ๋นŒ๋“œํ•˜๊ณ  ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ์ธํ”„๋ผ ๋ณ€๊ฒฝ์— ๊ฐ€๊น์Šต๋‹ˆ๋‹ค. ๋” ๋น ๋ฅด๊ฒŒ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ์‚ฌ๋žŒ๋“ค์ด๋ณด๊ณ ์žˆ๋Š” ๋ฌธ์ œ๊ฐ€ Node 8 ๋Ÿฐํƒ€์ž„์— ๊ณ ๋ฆฝ๋˜์–ด ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ๊ด€๋ จ ํŒ€์—์ด ๋ฌธ์ œ๋ฅผ ์ œ๊ธฐํ•˜๊ณ  ์ด์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘์˜ ์ธ๋‚ด์‹ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ตœ์‹  firebase-tools ๋ฐ firebase-functions ์—ฌ์ „ํžˆ ์ด๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋˜ํ•œ ๋ˆ„๊ตฐ๊ฐ€ ์ž์‹ ์˜ ์ฝ”๋“œ๋ฅผ ๊ธฐ๊บผ์ด ๊ณต์œ ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ Node8์— ํ•ด๋‹น ํ•จ์ˆ˜๋ฅผ ๋ฐฐํฌํ•˜์—ฌ ์ด๊ฒƒ์ด ์†Œ์Šค ๊ด€๋ จ์ธ์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜ํ”„์—์„œ Node 6๊ณผ Node 8์— ๋Œ€ํ•ด ์œ ์‚ฌํ•œ ๋ฐฐํฌ ์„ฑ๊ณต๋ฅ ์„๋ณด๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ด๊ฒƒ์ด ํŠน์ • ํ”„๋กœ์ ํŠธ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (์ผ๋ถ€ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ž˜๋ชป๋œ ์ƒํƒœ์—์žˆ์„ ์ˆ˜ ์žˆ์Œ). ์ƒ์„ฑ ๋œ ์ƒˆ ํ”„๋กœ์ ํŠธ์—์„œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๊นŒ? Node 8 ํ•จ์ˆ˜ ๋ฐฐํฌ์˜ ๋นŒ๋“œ ๋‹จ๊ณ„์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜์žˆ๋Š” Cloud Build ์ค‘๋‹จ์ด ๋ช‡ ๋ฒˆ ์žˆ์—ˆ์ง€๋งŒ Node 8 ํ•จ์ˆ˜๋ฅผ ๋ฐฐํฌ ํ•  ์ˆ˜์žˆ๋Š” ์ง€์†์ ์ธ ๋ฌด๋Šฅ๋ ฅ์„ ์„ค๋ช…ํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. Node 8์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐํฌํ•˜๋Š” ๋ฐ ์—ฌ์ „ํžˆ ์ผ๊ด€๋œ ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์ด ์ง€์› ํ‹ฐ์ผ“์„ ์—ฌ๋Š” ์ ์„ ์ถ”๊ฐ€๋กœ ์กฐ์‚ฌํ•˜๋Š” ๋ฐ ๋„์›€์„ ๋“œ๋ฆฌ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค (https://support.google.com/firebase/contact/support?page=์—์„œ ๋ฐฐํฌ ๊ด€๋ จ ๊ธฐ๋Šฅ ๋ฌธ์ œ๋ณด๊ณ ). / functions / deploy)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ํ”„๋กœ์ ํŠธ๋ฅผ ๋” ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ณ  ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋…ธ๋“œ v11 lol, ์—…๋ฐ์ดํŠธ ๋œ firebase-tools๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์‹ ์ €,
์ดˆ๊ธฐ pubsub.schedule์ด ๋ฐฐํฌ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์ด์ œ ๋‹ค์‹œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

@ u007 ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ๋‹ค

์•ˆ๋…•ํ•˜์„ธ์š” @thechenky , ๋‚˜๋Š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "global"}, { "status ":"MISS ","hash ":"{{hashCode}} ","type ":"docker_layer_cache ","level ":"project "}]}

์ด ์Šค๋ ˆ๋“œ๋ฅผ ์˜จ๋ผ์ธ์œผ๋กœ ์ฝ๊ณ  ๋‹ค์‹œ ๋ฐฐํฌํ•˜๋ฉด์„œ ์•ฝ 5 ๋ถ„ ๋™์•ˆ ๊ธฐ๋‹ค๋ ธ๊ณ  ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋•Œ๋•Œ๋กœ ๋นŒ๋“œ๊ฐ€ ์—ฌ์ „ํžˆ ์‹คํŒจ ํ•  ์ˆ˜์žˆ๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@ Adrian-Samuel ์ด๊ฒƒ์€ ์ผ์‹œ์ ์ธ ์˜ค๋ฅ˜ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ๋Š” ์ด๊ฒƒ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ์—ฌ์‹ญ์‹œ์˜ค.

์›๋ž˜ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ธฐ ๋•Œ๋ฌธ์—์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์–ธ์ œ๋“ ์ง€ ์ƒˆ ๋ฌธ์ œ๋ฅผ ์—ด โ€‹โ€‹์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‚ด ์ชฝ์—์„œ ์•„๋ฌด๊ฒƒ๋„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ๊ฐ‘์ž๊ธฐ์ด ๋ฌธ์ œ๋ฅผ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ๊ทผ์— ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š”๋ฐ ์ง€๊ธˆ์€ ๋ฐฐํฌ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
๋‚ด package.json ๋Š” ๋…ธ๋“œ 8์„ ์„ ์–ธํ•˜๊ณ  ๋‚ด ์ปดํ“จํ„ฐ์—์„œ ๋…ธ๋“œ 8์„ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@afuggini ๋ฐฐํฌ ์˜ค๋ฅ˜๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜๊ฑฐ๋‚˜ Firebase ์ง€์›ํŒ€์— ๋ฌธ์˜ํ•˜์„ธ์š”.

์ด ๋ฌธ์ œ๋ฅผ ๊ฒช๋Š” ์ดˆ๋ณด์ž๋ผ๋ฉด (๋‚˜์™€ ๊ฐ™์€) ํ•จ์ˆ˜ ์ •์˜๋ฅผ ๋‹ค์‹œ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์ œ ๊ฒฝ์šฐ์—๋Š” ๋ฃจํŠธ ์ˆ˜์ค€ index.js ํ•จ์ˆ˜ ๊ฐ€์ ธ ์˜ค๊ธฐ ๊ฒฝ๋กœ์— ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ๋ฐฐํฌ์‹œ ์ •ํ™•ํžˆ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์›์‹œ Cloud Functions์— ์žˆ์—ˆ์ง€๋งŒ Firebase Functions์™€ ๊ฐ™์€ ๋™์ผํ•œ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ• ๋œ ๋‹ค๋ฅธ ํ”Œ๋žซํผ์—๋„ ์ ์šฉ ๊ฐ€๋Šฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” @thechenky , ๋‚˜๋Š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "global"}, { "status ":"MISS ","hash ":"{{hashCode}} ","type ":"docker_layer_cache ","level ":"project "}]}

์ด ์Šค๋ ˆ๋“œ๋ฅผ ์˜จ๋ผ์ธ์œผ๋กœ ์ฝ๊ณ  ๋‹ค์‹œ ๋ฐฐํฌํ•˜๋ฉด์„œ ์•ฝ 5 ๋ถ„ ๋™์•ˆ ๊ธฐ๋‹ค๋ ธ๊ณ  ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋•Œ๋•Œ๋กœ ๋นŒ๋“œ๊ฐ€ ์—ฌ์ „ํžˆ ์‹คํŒจ ํ•  ์ˆ˜์žˆ๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ค๋Š˜๋‚ ์—๋„ ์—ฌ์ „ํžˆ ๋˜‘๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (2020-01-07)

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ž ์‹œ ๊ธฐ๋‹ค๋ฆฐ ํ›„์—๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค ...

์•ˆ๋…•ํ•˜์„ธ์š” @thechenky , ๋‚˜๋Š”ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "global"}, { "status ":"MISS ","hash ":"{{hashCode}} ","type ":"docker_layer_cache ","level ":"project "}]}
์ด ์Šค๋ ˆ๋“œ๋ฅผ ์˜จ๋ผ์ธ์œผ๋กœ ์ฝ๊ณ  ๋‹ค์‹œ ๋ฐฐํฌํ•˜๋ฉด์„œ ์•ฝ 5 ๋ถ„ ๋™์•ˆ ๊ธฐ๋‹ค๋ ธ๊ณ  ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋•Œ๋•Œ๋กœ ๋นŒ๋“œ๊ฐ€ ์—ฌ์ „ํžˆ ์‹คํŒจ ํ•  ์ˆ˜์žˆ๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ค๋Š˜๋‚ ์—๋„ ์—ฌ์ „ํžˆ ๋˜‘๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (2019-01-07)

๋„ค ๋‚˜๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค

์•ˆ๋…•ํ•˜์„ธ์š” @thechenky , ๋‚˜๋Š”ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "global"}, { "status ":"MISS ","hash ":"{{hashCode}} ","type ":"docker_layer_cache ","level ":"project "}]}
์ด ์Šค๋ ˆ๋“œ๋ฅผ ์˜จ๋ผ์ธ์œผ๋กœ ์ฝ๊ณ  ๋‹ค์‹œ ๋ฐฐํฌํ•˜๋ฉด์„œ ์•ฝ 5 ๋ถ„ ๋™์•ˆ ๊ธฐ๋‹ค๋ ธ๊ณ  ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋•Œ๋•Œ๋กœ ๋นŒ๋“œ๊ฐ€ ์—ฌ์ „ํžˆ ์‹คํŒจ ํ•  ์ˆ˜์žˆ๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ค๋Š˜๋‚ ์—๋„ ์—ฌ์ „ํžˆ ๋˜‘๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (2019-01-07)

* 2020-01-07 ์•„๋งˆ๋„;) ๊ทธ๋ฆฌ๊ณ  ์˜ˆ, ๋‚˜๋Š” ์ด๊ฒƒ์„ ๋‹น๋ถ„๊ฐ„ ๋„ˆ๋ฌด ๊ฒฝํ—˜ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค ..

๋„ค, ๋ฐฉ๊ธˆ ์ด๊ฒƒ์„ ๊ฒฝํ—˜ํ•˜๊ณ  ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์—์„œ ์—ฌ๊ธฐ์— ๋„์ฐฉํ–ˆ์Šต๋‹ˆ๋‹ค.

Build failed: {"cacheStats": [{"status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "global"}, {"status": "MISS", "hash": "{{hashCode}}", "type": "docker_layer_cache", "level": "project"}]}

๋‹ค๋ฅธ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๊นŒ?

Google์€ ๋ฐฉ๊ธˆ ํด๋ผ์šฐ๋“œ ๊ธฐ๋Šฅ์— ๋ฐฐํฌ ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ tho์— ๋Œ€ํ•œ ๋‚˜์œ ์‹œ๊ฐ„

Build failed: {"cacheStats": [{"status": "MISS", "hash": "{{hash}}", "type": "docker_layer_cache", "level": "global"}, {"status": "HIT", "hash": "{{hash}}", "type": "docker_layer_cache", "level": "project"}]}

์•ˆ๋…•ํ•˜์„ธ์š”,

๋น„์Šทํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

Deployment error. Build failed: {"cacheStats": [{"status": "MISS", "hash": "{hashCode}", "type": "docker_layer_cache", "level": "global"}, {"status": "HIT", "hash": "{hashCode}", "type": "docker_layer_cache", "level": "project"}]}

Google ์ง€์›์—์„œ

"ํ˜„์žฌ Cloud Functions ๋ฐฐํฌ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์—”์ง€๋‹ˆ์–ด๋ง ํŒ€์—์„œ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ์„œ๋น„์Šค๋ฅผ ๋ณต๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ์—…๋ฐ์ดํŠธ๋กœ ์—ฐ๋ฝ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. "

๋‹ค์Œ ๋งํฌ์—์„œ Google ์„œ๋น„์Šค๊ฐ€ ๋ชจ๋‘ ์ž‘๋™ํ•œ๋‹ค๊ณ  ์ฃผ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค.
https://status.cloud.google.com/
๋ฌธ์ œ ์กฐ์‚ฌ์— 3 ์‹œ๊ฐ„์„ ํˆฌ์žํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์—์„œ ์ผ๋ถ€ URL๋กœ ํ™•์ธ ์ƒํƒœ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์‹ญ์‹œ์˜ค.
๊ฐ์‚ฌ,

๋‹ค์Œ ๋งํฌ์—์„œ Google ์„œ๋น„์Šค๊ฐ€ ๋ชจ๋‘ ์ž‘๋™ํ•œ๋‹ค๊ณ  ์ฃผ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค.
https://status.cloud.google.com/
๋ฌธ์ œ ์กฐ์‚ฌ์— 3 ์‹œ๊ฐ„์„ ํˆฌ์žํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์—์„œ ์ผ๋ถ€ URL๋กœ ํ™•์ธ ์ƒํƒœ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์‹ญ์‹œ์˜ค.
๊ฐ์‚ฌ,

๊ทธ๋“ค์€ ์ง€๊ธˆ ํŽ˜์ด์ง€๋ฅผ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค

๋งŽ์€ ์žฌ์‹œ๋„ ํ›„์—๋„ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๋ฐฐํฌํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ๋ถˆ์•ˆ์ •ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ˜–

์•ฑ ์—”์ง„๊ณผ ํด๋ผ์šฐ๋“œ ๊ธฐ๋Šฅ ๋ชจ๋‘์— ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋“ค์ด ๋ญ”๊ฐ€๋ฅผ ๊ณ ์น˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

!  functions[createUserAccount(us-central1)]: Deployment error.
Build failed: {"cacheStats": [{"status": "MISS", "hash": "e03d8d6f6bf22fcb1cf50f4e12b3e3a3b59954fade707db62e79562c9dbac3ef", "type": "docker_layer_cache", "level": "global"}, {"status": "HIT", "hash": "e03d8d6f6bf22fcb1cf50f4e12b3e3a3b59954fade707db62e79562c9dbac3ef", "type": "docker_layer_cache", "level": "project"}]}


Functions deploy had errors with the following functions:
        createUserAccount

๋‹ค์Œ ์ฝ”๋“œ๋กœ :

await database.collection('members').where('Email', '==', user.email).limit(1).get()
    .then(snapshot => {
      snapshot.forEach(doc => {
        console.log(doc.id, '=>', doc.data())
      })
    }).catch(err => console.error(err))

ํ•จ์ˆ˜ ๋””๋ ‰ํ† ๋ฆฌ์— ๋ฐฑ์—… ํŒŒ์ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๋ฉด ๋ฐฐํฌ๊ฐ€ ์ˆ˜์ •๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ•จ์ˆ˜ ๋””๋ ‰ํ† ๋ฆฌ์— ๋ฐฑ์—… ํŒŒ์ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๋ฉด ๋ฐฐํฌ๊ฐ€ ์ˆ˜์ •๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

functions/lib ํŒŒ์ผ ๋ฐฑ์—…?

functions/lib ํด๋”๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :)

functions/lib ์„ ์‚ญ์ œํ•ด๋„ ์•ˆ์ „ํ•ฉ๋‹ˆ๊นŒ? Firebase ๋ฐฐํฌ์‹œ ๋งค๋ฒˆ ์žฌ์ƒ์„ฑ ๋˜๋‚˜์š”?

functions/lib ์„ ์‚ญ์ œํ•ด๋„ ์•ˆ์ „ํ•ฉ๋‹ˆ๊นŒ? Firebase ๋ฐฐํฌ์‹œ ๋งค๋ฒˆ ์žฌ์ƒ์„ฑ ๋˜๋‚˜์š”?

ํ•ด๋‹น ํด๋”๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ฒƒ์€ ์™„์ „ํžˆ ์•ˆ์ „ํ•ฉ๋‹ˆ๋‹ค. firebase deploy ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ๋งˆ๋‹ค ์ฝ˜ํ…์ธ ๊ฐ€ ํฌํ•จ ๋œ ํ•ด๋‹น ํด๋”๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

functions/lib ์‚ญ์ œํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ functions[getVerificationCode(us-central1)]: Deployment error. Build failed: {"cacheStats": [{"status": "MISS", "hash": ์ค‘ ...

Error: Functions did not deploy properly.

functions/lib ์‚ญ์ œํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ functions[getVerificationCode(us-central1)]: Deployment error. Build failed: {"cacheStats": [{"status": "MISS", "hash": ์ค‘ ...

Error: Functions did not deploy properly.

๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ์š”์ฒญ์„ ๊ณ„์† ์žฌ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ ๋‚ด๊ฐ€ํ•ด์•ผ ํ•  ์ผ์€ ์ž‘๋™ ํ•  ๋•Œ๊นŒ์ง€ firebase deploy ๊ณ„์† ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ถ”์‹  : ๊ทธ๊ฒƒ์ด ์ง„ํ–‰๋˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค-Google ํŒ€์ด ๋ฌด์—‡์„ํ• ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋ณตํ•ด์„œ ๋‹ค์‹œ ์‹œ๋„ํ•œ ํ›„์—๋„ ๋ฐฐํฌ / ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š๋Š” ๊ธฐ๋Šฅ์ด ํ•˜๋‚˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ ํ•˜๋‚˜์˜ ๊ธฐ๋Šฅ. ๋‚˜๋Š” ๊ทธ ๊ธฐ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ง€๊ธˆ์€ ๊ดœ์ฐฎ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

https://status.cloud.google.com/์€ ์—ฌ์ „ํžˆ ๋ชจ๋“  ๊ฒƒ์ด ์ •์ƒ์ธ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๋งˆ์ง€๋ง‰์œผ๋กœ ์‹œ๋„ํ•ด ๋ณด์•˜์ง€๋งŒ _ ๋‚ด ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋„ ๋ฐฐํฌํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค ๐Ÿ˜ฌ

ํ˜„์žฌ ์ƒํƒœ ํŽ˜์ด์ง€๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

We've received a report of an issue with Google Cloud Functions and Google App Engine deployments failing for some customers.

ํŒ€์€ ์กฐ์‚ฌ ์ค‘์ด๋ฉฐ ๋” ๋งŽ์€ ๊ฒƒ์„ ์•Œ๊ฒŒ ๋  ๋•Œ ๋ณด์ฆ๋˜๋Š” ๊ฒฝ์šฐ ๋Œ€์‹œ ๋ณด๋“œ์— ๋ฌธ์ œ๋ฅผ ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋™์•ˆ Cloud Functions์— ๋ฐฐํฌ ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ Firebase ๋˜๋Š” Google Cloud ์ง€์›ํŒ€์— ๋ฌธ์˜ํ•˜์„ธ์š”! ์–‘ํ•ด ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ helloWorld firebase ํ•จ์ˆ˜ ๋งŒ ๋ฐฐํฌํ•˜๋ ค๊ณ ํ•˜๋ฉด ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
Deployment error. Build failed: {"cacheStats": [{"status": "MISS", "hash": "...", "type": "docker_layer_cache", "level": "global"}

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ helloWorld firebase ํ•จ์ˆ˜ ๋งŒ ๋ฐฐํฌํ•˜๋ ค๊ณ ํ•˜๋ฉด ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
Deployment error. Build failed: {"cacheStats": [{"status": "MISS", "hash": "...", "type": "docker_layer_cache", "level": "global"}

๋‚˜๋„๋ณด๊ณ ์žˆ์–ด

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.
๋ฐฐํฌ ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค.
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "hash", "type": "docker_layer_cache", "level": "global"}, { "status": "MISS ","hash ":"hash ","type ":"docker_layer_cache ","level ":"project "}]}

๋ฐค์ƒˆ๋„๋ก ๋‚ด ์‹ค์ˆ˜๋ฅผ ์ฐพ์œผ๋ ค๊ณ  ๋…ธ๋ ฅํ•œ ํ›„ ๋งˆ์นจ๋‚ด ๋‚ด ๊ธฐ๋Šฅ์„ ๋ฐฐํฌ ํ•  ์ˆ˜์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ–ˆ์Šต๋‹ˆ๋‹ค ๐Ÿ‘

๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์€ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค!

์ด ์ฃผ์ œ๋ฅผ ๋‹ค์‹œ ๊ฐ€์ ธ ์™€์„œ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฐํฌ ํ•  ๋•Œ๋งˆ๋‹ค 1 ~ 5 ๊ฐœ์˜ ํ•จ์ˆ˜๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.
image

์ง€์†์ ์œผ๋กœ ๋ฐฐํฌ์— ์‹คํŒจํ•˜๋Š” ๊ธฐ๋Šฅ์€ ์—†์œผ๋ฉฐ ์ž„์˜์˜ ๊ธฐ๋Šฅ์ด ๋‹ค๋ฅธ ์‹œ๊ฐ„์— ์‹คํŒจํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. 12 ๋ฒˆ์˜ ์‹œ๋„ ์ค‘ 1 ๋ฒˆ์€ ํ•œ ๋ฒˆ์— ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๋ฐฐํฌ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹คํŒจํ•œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์—ฌ๋Ÿฌ ๋ฒˆ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ ์™ธ์— ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ํžŒํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด ๋„๊ตฌ์— ํˆฌ์ž…๋œ ๋ชจ๋“  ์ž‘์—…์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. TY

๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "d77e8c491b10d7f6c295d44d41963365d20c4b63b5a98586acce25c13826ff34", "type": "docker_layer_cache", "level": "global"}, { "status": ","hash ":"d77e8c491b10d7f6c295d44d41963365d20c4b63b5a98586acce25c13826ff34 ","type ":"docker_layer_cache ","level ":"project "}]}

์˜ค๋Š˜๋„ ๊ฐ™์€ ๋ฌธ์ œ์— ์ง๋ฉด ํ•ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด์ œ๊นŒ์ง€ ์ž˜ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์˜ค๋ฅ˜ ์ฝ”๋“œ๋Š” Google์˜ Cloud Function ์‹œ์Šคํ…œ์— ์ž์ฒด ๋‚ด๋ถ€ ์˜ค๋ฅ˜๊ฐ€์žˆ์„ ๋•Œ ์ด์ „์—๋ฐ›์€ ๊ฒƒ๊ณผ ์ •ํ™•ํžˆ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์ตœ์„ ์˜ ํ•ด๊ฒฐ์ฑ…์€ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

  1. ์ž‘๋™ ํ•  ๋•Œ๊นŒ์ง€ ๋ฐฐํฌ๋ฅผ ๊ณ„์† ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค (14 ๋ฒˆ ์ด์ƒ ์žฌ ์‹œ๋„ํ•˜์ง€ ์•Š์•„์•ผ ํ•จ).
  2. ๋ฌธ์ œ์— ๋Œ€ํ•ด Google์— ๋ฌธ์˜ํ•˜๊ณ  ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ธํ”„๋ผ๋ฅผ ํ™•์ธํ•˜๋„๋กํ•ฉ๋‹ˆ๋‹ค.

์บ์‹œ ํ†ต๊ณ„์—์„œ HIT ๋ฐ MISS์— ๋Œ€ํ•ด ์—ฌ์ „ํžˆ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํ•˜๋ฃจ ์ข…์ผ ์ผ์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ๋ถ„, ์—ฌ๊ธฐ์—์„œ ๋ฐฐํฌ ๋ฌธ์ œ๋ฅผ ์‹ ๊ณ  ํ•ด์ฃผ์„ธ์š”. ์ตœ์ข…์ ์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. @ pragati27gupta , @taronaeo , @acoyfellow , @MikeWeiZhou
https://firebase.google.com/support/troubleshooter/functions/deploy

๋”ฐ๋ผ์„œ firebase๋Š” docker๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์•Œ์•„๋‘๋ฉด ์žฌ๋ฏธ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์˜ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๊ท€ํ•˜์˜ ์š”์ฒญ์ด ์ œ์ถœ๋˜์—ˆ์œผ๋ฉฐ ๊ณง ์—ฐ๋ฝ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

@selvinfehric ์€ ์˜ฌ๋ฐ”๋ฅธ ์•„์ด๋””์–ด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

btw. ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด cloudfunctions ๋ฌธ์ œ ์ถ”์ ๊ธฐ์—์„œ ๋ฌธ์ œ๋ฅผ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค : https://issuetracker.google.com/issues/154260223
๋” ๋งŽ์€ ๊ด€์‹ฌ์„ ๋Œ๊ธฐ ์œ„ํ•ด ๋ฌธ์ œ์— ๋Œ“๊ธ€์„ ๋‹ฌ๊ฑฐ๋‚˜ ๋ณ„ํ‘œ๋ฅผ ํ‘œ์‹œํ•˜์‹ญ์‹œ์˜ค.

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค!

์—ฌ๊ธฐ์—๋„ GitLab ์‹คํ–‰๊ธฐ์—์„œ ์‹คํ–‰๋˜๋Š” ์ตœ์‹  ๋ฒ„์ „์˜ firebase ๋„๊ตฌ๊ฐ€ ์žˆ์œผ๋ฉฐ ์ด๋Š” ๊ณ„์† ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ณ„์† ์žฌ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์€ ๋„ˆ๋ฌด๋‚˜ ์„ฑ๊ฐ€์‹  ์ผ์ž…๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ์ „์ฒด CI / CD ํŒŒ์ดํ”„ ๋ผ์ธ์ด ์†์ƒ๋˜์–ด ๊ฐœ๋ฐœ์ž ์‹œ๊ฐ„์„ ๋‚ญ๋น„ํ•˜๊ณ  ์ž‘์—…์„ ์ถ”์ ํ•˜๊ณ  ์˜์›ํžˆ ์žฌ ์‹œ๋„๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ตœ์•…์˜ ๊ฒฝ์šฐ Firebase ์ง€์›ํŒ€์€ ์ „ํ˜€ ๋„์›€์ด๋˜์ง€ ์•Š์•˜๊ณ  ์ž„์˜์˜ ๋ฌธ์„œ๋ฅผ ์ง€์ ํ•˜์—ฌ ํ•จ์ˆ˜ ๋ฐฐํฌ ์˜ค๋ฅ˜์˜ ๋ฌด์ž‘์œ„์„ฑ์„ ์™„์ „ํžˆ ๋ฌด์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.

firebase-tools 7.12.1์„ ์‚ฌ์šฉํ•˜๋Š” Ubuntu 16.04์—์„œ ๋กœ์ปฌ๋กœ ๋˜๋Š” ์ตœ์‹  8.1.1์„ ์‚ฌ์šฉํ•˜๋Š” Azure DevOps Task๋ฅผ ํ†ตํ•ด ์šฐ๋ฆฌ์—๊ฒŒ๋„ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๊ฐ€ ์ข…๊ฒฐ๋˜์—ˆ๊ณ  ์•„๋ฌด๋„ (๊ตฌ๊ธ€ ์ธก) ๋œ ์‹ ๊ฒฝ ์“ฐ๋Š” ๊ฒƒ ๊ฐ™์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์€ ์–ด๋ฆฌ์„์€ ์ผ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์šฐ๋ฆฌ์—๊ฒŒ๋„ ์ผ์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ฑฐ์˜ 1 ๋…„ ๋™์•ˆ์ด ๋ฌธ์ œ์™€ ์‹ธ์šฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฝ 30 ๊ฐœ์˜ ๊ธฐ๋Šฅ (๋ชจ๋“  ์œ ํ˜•, https, firestore ํŠธ๋ฆฌ๊ฑฐ, pub ๊ตฌ๋…์ž, ์ธ์ฆ ํŠธ๋ฆฌ๊ฑฐ) ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„ CI / CD (circleci)๋ฅผ ํ†ตํ•ด ๋ฐฐํฌ ํ•  ๋•Œ ๋ฐœ์ƒํ•˜์ง€๋งŒ ๋กœ์ปฌ ๋จธ์‹ ์—์„œ ๋ฐฐํฌ ํ•  ๋•Œ๋„ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค (๋“œ๋ฌผ๊ฒŒ๋Š” ๋งํ•˜๊ธฐ ์–ด๋ ต์ง€๋งŒ).

์ €๋Š” ๋…ธ๋“œ 8์„ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ช‡ ๋‹ฌ ์ „์— ํŒŒ์ด์–ด๋ฒ ์ด์Šค๊ฐ€ ๋…ธ๋“œ 10์„ ๊ฐ€์ง€๊ณ  ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์•„๋งˆ๋„ 10 ๊ฐœ ์ค‘ 8 ~ 9 ๋ฒˆ, ์šฐ๋ฆฌ ํ•จ์ˆ˜ ์ค‘ ํ•˜๋‚˜ ๋˜๋Š” ๋‘ ๊ฐœ๊ฐ€ ๋ฐฐํฌ์— ์‹คํŒจ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งค๋ฒˆ ๋ฌด์ž‘์œ„๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฒฐ์ฝ” ์ผ๊ด€๋œ ์‹คํŒจ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ด๋Š” ํ•จ์ˆ˜ ์ฝ”๋“œ๋ฅผ _any_ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์ง€ ํ”„๋ŸฐํŠธ ์—”๋“œ ๋ณ€๊ฒฝ์„ ๋ฐฐํฌ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (ํ˜ธ์ŠคํŒ…์„ ํ†ตํ•ดํ•˜์ง€๋งŒ ํ˜ธ์ŠคํŒ… ๋ฐ API๋ฅผ ํ†ตํ•ด ํŒŒ์ผ๊ฐ„์— ๋ฒ„์ „์„ ๋™๊ธฐํ™” ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค). ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ์˜ ์ฝ”๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ์••๋‹ˆ๋‹ค.

๋‚˜๋Š” ์˜ค๋Š˜ ๋“œ๋””์–ด ์ด์•Œ์„ ๊นจ๊ณ  ํ•˜๋ฃจ์˜ ์ ˆ๋ฐ˜์„ ์šฐ๋ฆฌ์˜ "ํฐ ์ˆ˜"(~ 30 ๊ฐœ)์˜ ๊ธฐ๋Šฅ์„ ์ž์ฒด์ ์œผ๋กœ ๋ฐฐํฌํ•˜๋Š” ์†Œ๊ทœ๋ชจ ๊ทธ๋ฃน์œผ๋กœ ๋‚˜๋ˆ„๋Š”๋ฐ ์†Œ๋น„ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๊ทธ๋ฃน์€ 10 ๊ฐœ ๋ฏธ๋งŒ์ž…๋‹ˆ๋‹ค.์ด SITLL์€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์—ฐ์†์ ์œผ๋กœ ์—ฌ๋Ÿฌ ๋ฒˆ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. 6 ๊ฐœ์˜ ํ•ญ๋ชฉ ๋งŒ์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ ๊ธฐ๋Šฅ ๊ทธ๋ฃน์—์„œ. ์ด "๊ทธ๋ฃน"์€ ์‹ค์ œ๋กœ ๊ธฐ๋ณธ ๋‚ด๋ณด๋‚ด๊ธฐ์— ์ •์˜ ๋œ ๊ทธ๋ฃน์ด ์•„๋‹ˆ๋ผ firebase deploy --only functions:func1,functions:func2,...functions:func6 ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ ์–ธ๋ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€
๋ฐฐํฌ ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค.
1 ~ 5 ๊ฐœ์˜ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์ด ๋ฐฐํฌ๋˜์ง€ ์•Š๋Š” ๊ณณ :
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", ...

์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์‚ฌ๋žŒ์€ ๋ˆ„๊ตฌ๋“ ์ง€ +1ํ•˜๊ณ 
๊ณต์šฉ ํด๋ผ์šฐ๋“œ ๋ฌธ์ œ ์ถ”์ ๊ธฐ : https://issuetracker.google.com/issues/154260223

2020 ๋…„ 4 ์›” 25 ์ผ ํ† ์š”์ผ ์˜ค์ „ 4:49 chenlevy [email protected] ์ž‘์„ฑ :

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€
๋ฐฐํฌ ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค.
1 ~ 5 ๊ฐœ์˜ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์ด ๋ฐฐํฌ๋˜์ง€ ์•Š๋Š” ๊ณณ :
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", ...

โ€”
๋Œ“๊ธ€์„ ๋‹ฌ์•˜ ๊ธฐ ๋•Œ๋ฌธ์— ์ˆ˜์‹  ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/firebase/firebase-tools/issues/853#issuecomment-619367267 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AAAAH7RZHEUCY2EAR2ABU3DROLE23ANCNFSM4FNSPUCA
.

image

์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ๋•Œ ์ด์ „ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด "๊ตฌ๊ธ€ ๋ถ„์„"์„ ํ™œ์„ฑํ™”ํ•˜์ง€ ์•Š์•˜๊ณ  ๋ชจ๋“  ๋ฐฐํฌ๊ฐ€ ์‹คํŒจํ–ˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ๋กœ ํ…Œ์ŠคํŠธํ–ˆ๋Š”๋ฐ google-analytics๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋ชจ๋“  ๊ฒƒ์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Analytics์˜ ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋Š”์ด ์˜ค๋ฅ˜์— ์˜ํ–ฅ์„์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์šฐ์—ฐ์ด์—ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

2020 ๋…„ 4 ์›” 25 ์ผ ํ† ์š”์ผ ์˜คํ›„ 12:17 erykos111 [email protected] ์ž‘์„ฑ :

[์ด๋ฏธ์ง€ : ์ด๋ฏธ์ง€]
https://user-images.githubusercontent.com/47335304/80288700-94ee1680-8731-11ea-8f57-66598893458e.png

์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ๋•Œ ์ด์ „ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด
"Google Analytics"๋ฅผ ํ™œ์„ฑํ™”ํ•˜๊ณ  ๋ชจ๋“  ๋ฐฐํฌ๋ฅผ
์‹คํŒจ. ๋ฐฉ๊ธˆ ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ๋กœ ํ…Œ์ŠคํŠธํ–ˆ๋Š”๋ฐ ๋ชจ๋“  ๊ฒƒ์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
Google ๋ถ„์„์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

โ€”
๋Œ“๊ธ€์„ ๋‹ฌ์•˜ ๊ธฐ ๋•Œ๋ฌธ์— ์ˆ˜์‹  ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/firebase/firebase-tools/issues/853#issuecomment-619427952 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AAAAH7TAOV2IOQG7NUDBXFTROMZMHANCNFSM4FNSPUCA
.

์œ„์˜ ์„ค๋ช…์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด Google Analytics๋ฅผ ํ™œ์„ฑํ™”ํ•ด๋„ ์‹คํŒจํ•œ ๊ธฐ๋Šฅ ๋ฐฐํฌ๋Š” ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ๋‹น์‹ ์ด ํ•œ ์ผ์€ Cloud Functions ์„œ๋ฒ„๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์„œ๋ฒ„์— ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ๋Š” ๋‘ ๊ฐ€์ง€ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์•ˆ์ •์ ์œผ๋กœ ์–ป์„ ๋•Œ๊นŒ์ง€ ์ž˜ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜ ์–ธ์  ๊ฐ€ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

โš  functions [legacyFeedRedirect (us-central1)] : ๋ฐฐํฌ ์˜ค๋ฅ˜.
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "526b4459b8b6ae9cc7de4bbed53b2d24a8c5fcf1737f07f27a44e4029d472306", "type": "docker_layer_cache", "level": "global"}, { "status": "global"}, { "status" ","hash ":"526b4459b8b6ae9cc7de4bbed53b2d24a8c5fcf1737f07f27a44e4029d472306 ","type ":"docker_layer_cache ","level ":"project "}]}
โš  functions [updateUserOnboardingFlags (us-central1)] : ๋ฐฐํฌ ์˜ค๋ฅ˜.
๋นŒ๋“œ ์‹คํŒจ : { "cacheStats": [{ "status": "MISS", "hash": "526b4459b8b6ae9cc7de4bbed53b2d24a8c5fcf1737f07f27a44e4029d472306", "type": "docker_layer_cache", "level": "global"}, { "status": "global"}, { "status" ","hash ":"526b4459b8b6ae9cc7de4bbed53b2d24a8c5fcf1737f07f27a44e4029d472306 ","type ":"docker_layer_cache ","level ":"project "}]}

์—ฌ์ „ํžˆ ๋ฐฐํฌ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ :

Node 10์„ ์ผœ๊ณ  ์ตœ์‹  ๋ฒ„์ „์˜ firebase-tools ์‹คํ–‰ํ•˜์—ฌ ๋ฐฐํฌ๋ฅผ ์ฒ˜์Œ ์ˆ˜์ • ํ•œ ํ›„ ์ตœ๊ทผ (์•ฝ 2 ์ฃผ ์ „)์— ๋‹ค์‹œ ๋ถˆํˆฌ๋ช… ํ•œ Build error: details not available ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ์˜ ๋ชจ๋“  ํ™˜๊ฒฝ์—์„œ ์šฐ๋ฆฌ์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์ง€์†์ ์œผ๋กœ ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ์™„์ „ํžˆ ๋ง‰ํ˜”์Šต๋‹ˆ๋‹ค.

์กฐ์‚ฌ ๊ฒฐ๊ณผ GCP์—์„œ ํด๋ผ์šฐ๋“œ ๊ธฐ๋Šฅ์˜ ๋นŒ๋“œ ์‹œ๊ฐ„์ด 10 ๋ถ„์—์„œ ๋‹จ 5 ๋ถ„์œผ๋กœ ๋‹จ์ถ•๋˜์—ˆ์Œ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

๋นŒ๋“œ ์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด GCP๋Š” ์‚ฌ์šฉ์ค‘์ธ ํŒŒ์ผ์— ๋”ฐ๋ผ package-lock.json ๋˜๋Š” yarn.lock ํŒŒ์ผ์˜ ํ•ด์‹œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ node_modules ์บ์‹ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์‹œ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ์ข…์† ํ•ญ๋ชฉ์ด ์—…๋ฐ์ดํŠธ๋˜๊ณ ์ด ํŒŒ์ผ์ด ๋ณ€๊ฒฝ๋˜๋ฉด GCP๋Š” ๋ชจ๋“  ํ•ญ๋ชฉ์„ ๋‹ค์‹œ ์„ค์น˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ๋‹ค์‹œ ๋นŒ๋“œํ•ด์•ผํ•˜๋Š” ๋„ค์ดํ‹ฐ๋ธŒ ๋ชจ๋“ˆ์ด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ ธ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์ด "status": "MISS" Node 8 ์˜ค๋ฅ˜ ์„ธ๋ถ€ ์ •๋ณด์—์„œ ๋ณผ ์ˆ˜์žˆ๋Š” ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ํ•จ์ˆ˜๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ปดํŒŒ์ผํ•˜๊ธฐ์œ„ํ•œ ์ž์ฒด ๋„๊ตฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ , ์›นํŒฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”์ธ ํ•จ์ˆ˜ ์ฝ”๋“œ์—์žˆ๋Š” ๋ชจ๋“  ๋น„ ๋„ค์ดํ‹ฐ๋ธŒ ๋ชจ๋“ˆ์„ ๋ฒˆ๋“ค๋กœ ๋ฌถ๊ณ , ๊ฐ๊ฐ์— ๋Œ€ํ•ด ๋ˆ„๋ฝ ๋œ ์ข…์†์„ฑ ๋งŒ์žˆ๋Š” ๊ฐ ํ•จ์ˆ˜์— ๋Œ€ํ•ด package.json ํŒŒ์ผ์„ ํŠธ๋ฆฌ๋ฐํ–ˆ์Šต๋‹ˆ๋‹ค. .

์ด์ œ ์šฐ๋ฆฌ์˜ ๋ฐฐํฌ๋Š” ๋งค๋ฒˆ ์ž˜ ์ž‘๋™ํ•˜๋ฉฐ ๊ธฐ๋Šฅ ๋‹น ์ตœ๋Œ€ 1 ~ 2 ๋ถ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

+1

+1
๊ฐ™์€ ์˜ค๋ฅ˜.
Build failed: {"cacheStats": [{"status": "MISS", "hash": "8c20b0a9a3a6bd52591da4f39acf1b59e56da60640e148a5d96a494617066c6d", "type": "docker_layer_cache", "level": "global"}, {"status": "HIT", "hash": "8c20b0a9a3a6bd52591da4f39acf1b59e56da60640e148a5d96a494617066c6d", "type": "docker_layer_cache", "level": "project"}]}

์ด ๋ฌธ์ œ๋กœ ์ธํ•ด ์‹ฌ๊ฐํ•œ ์˜ํ–ฅ์„ ๋ฐ›์•˜์œผ๋ฉฐ ์ง€๋‚œ์ฃผ ์ดํ›„๋กœ ๋ฐฐํฌ ํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. _ ์ž์„ธํ•œ ๋‚ด์šฉ ์€ Google Issue Tracker์— ๋Œ€ํ•œ ๋‚ด

์‹คํŒจํ•œ Cloud Functions์˜ ๋ฐฐํฌ๋ฅผ ์žฌ ์‹œ๋„ ํ•˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋‘๋ฉด ์•„์ด๋””์–ด๋ฅผ ์–ป์„ ์ˆ˜๋„ ์žˆ๊ณ  ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ์ด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํ…Œ์ด์ง• ํ™˜๊ฒฝ์— 20 ํšŒ ์ด์ƒ ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋  ๋•Œ๊นŒ์ง€ ๋„์›€์ด๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

@fatihacet ์•ž์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ๋นŒ๋“œ ์˜ค๋ฅ˜๋Š” ์ฃผ๋กœ ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค ์ค‘ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.์ด ์‹œ๊ฐ„์€ ์•ฝ 2 ์ฃผ ์ „์— GCP์— ์˜ํ•ด 10 ๋ถ„์—์„œ 5 ๋ถ„์œผ๋กœ ๋‹จ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์—ฌ๊ธฐ์— firebase-tools (๋ฐ ์‚ฌ์šฉ ๊ฐ€๋Šฅ) ํฌํฌ๋กœ ๊ตฌํ˜„ ๋œ ์žฌ์‹œ๋„ ์‹œ์Šคํ…œ์ด ์žˆ์Šต๋‹ˆ๋‹ค (๊ณต์‹ firebase-tools ๋Œ€ํ•œ PR์€ ์—ฌ๊ธฐ # 1977).

๊ทธ๋Ÿฌ๋‚˜ ์ตœ๊ทผ์˜ ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ์†Œ๋กœ ์ธํ•ด 2 ์ฃผ ์ด์ƒ ๋ฐฐํฌ์— ๊ฐ‡ํ˜€ ์žˆ์—ˆ์œผ๋ฉฐ, 3 ๊ฐœ ํ™˜๊ฒฝ์—์„œ๋„ ๋‹จ์ผ ํ•จ์ˆ˜๋ฅผ ๋ฐฐํฌ ํ•  ์ˆ˜ ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์žฌ ์‹œ๋„๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๊ฐ„ ๋™์•ˆ 5 ํšŒ ์žฌ์‹œ๋„.

์œ ์ผํ•œ ํ•ด๊ฒฐ์ฑ…์€ ํด๋ผ์šฐ๋“œ ๊ธฐ๋Šฅ์— ์‚ฌ์šฉํ•˜๋Š” ์ข…์†์„ฑ์˜ ์–‘์„ ์ค„์ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ, ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ๋“ค์„ ๋”ฐ๋กœ ์ปดํŒŒ์ผํ•˜๊ณ  webpack์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•จ์ˆ˜์˜ ์ฝ”๋“œ์—์žˆ์„ ์ˆ˜์žˆ๋Š” ๋ชจ๋“  ๊ฒƒ์„ ๋ฌถ์–ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค.

๋นŒ๋“œ ์‹œ์Šคํ…œ ์‹œ๊ฐ„ ์ œํ•œ์— ๋Œ€ํ•œ ์ด๋ฒˆ ์—…๋ฐ์ดํŠธ๋กœ ๋ฐฐํฌ ํ•  ๋ชจ๋“  ํ•จ์ˆ˜์— ๋‹จ์ผ ์ง„์ž… ์ ์„ ์‚ฌ์šฉํ•˜๋Š” Firebase ๋ชจ๋ธ์ด ๋” ์ด์ƒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ firebase-cli ๋ฒ„์ „ 8.2.0์„ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜์ด ์˜ค๋ฅ˜๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
Build failed: {"cacheStats": [{"status": "MISS", "hash": "8c20b0a9a3a6bd52591da4f39acf1b59e56da60640e148a5d96a494617066c6d", "type": "docker_layer_cache", "level": "global"}, {"status": "HIT", "hash": "8c20b0a9a3a6bd52591da4f39acf1b59e56da60640e148a5d96a494617066c6d", "type": "docker_layer_cache", "level": "project"}]}

@Trinhlvtq , firebase-tools ์—…๊ทธ๋ ˆ์ด๋“œ๋Š”์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ˜ธ๊ธฐ์‹ฌ์œผ๋กœ ํ”„๋กœ์ ํŠธ์—์„œ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ๋…ธ๋“œ ์ข…์†์„ฑ์„ ์‚ฌ์šฉํ•˜์‹ญ๋‹ˆ๊นŒ?
ํ”„๋กœ์ ํŠธ์—์„œ ๋„ค์ดํ‹ฐ๋ธŒ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๊นŒ?

์ง€๋‚œ 2 ์ฃผ ๋™์•ˆ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.
์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ ์šฐ๋ฆฌ๋Š”
build failed: build error details not available
GCP์—์„œ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜๋ฉด ์ƒํƒœ ์ฝ”๋“œ 13์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

@sunnixx ์ด ๋ฌธ์ œ๋Š” Google์˜ ๋ฌธ์ œ ์ถ”์ ๊ธฐ # 154260223 ์—์„œ ์ด๋ฏธ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€์ด ๋ฌธ์ œ์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด ์—ฌ๊ธฐ์— ๋ฌธ์ œ๋ฅผ ๊ฒŒ์‹œํ•˜์‹ญ์‹œ์˜ค.

์ด๊ฒƒ์€ ์˜ค๋Š˜ ๋ง‰ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋…ธ๋“œ 10. ์›์ธ์€ ์•Œ ์ˆ˜ ์—†์ง€๋งŒ CI์—์„œ ํ•จ์ˆ˜๋ฅผ ๋ฐฐํฌํ•˜๋ ค๊ณ  ํ•  ๋•Œ๋งˆ๋‹ค์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

@devth ํŒ€์ด ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์—ฌ๊ธฐ์— ์ถœ๋ ฅ์„ ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ ๋„ฃ์œผ์‹ญ์‹œ์˜ค.

@taronaeo๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

i  functions: updating Node.js 10 function onCreate(us-central1)...
 i  functions: updating Node.js 10 function createUser(us-central1)...
 i  functions: updating Node.js 10 function onDocCreate(us-central1)...
 i  functions: updating Node.js 10 function onSub1DocCreate(us-central1)...
 i  functions: updating Node.js 10 function onSub2DocCreate(us-central1)...
 i  functions: updating Node.js 10 function next(us-central1)...
 โš   functions[createUser(us-central1)]: Deployment error.
 Build failed: Build error details not available.
 โš   functions[onCreate(us-central1)]: Deployment error.
 Build failed: Build error details not available.
 โš   functions[onSub1DocCreate(us-central1)]: Deployment error.
 Build failed: Build error details not available.
 โš   functions[next(us-central1)]: Deployment error.
 Build failed: Build error details not available.
 โš   functions[onSub2DocCreate(us-central1)]: Deployment error.
 Build failed: Build error details not available.
 โš   functions[onDocCreate(us-central1)]: Deployment error.
 Build failed: Build error details not available.
 Functions deploy had errors with the following functions:
    createUser
    next
    onCreate
    onDocCreate
    onSub1DocCreate
    onSub2DocCreate
 To try redeploying those functions, run:
     firebase deploy --only functions:createUser,functions:next,functions:onCreate,functions:onDocCreate,functions:onSub1DocCreate,functions:onSub2DocCreate
 To continue deploying other features (such as database), run:
     firebase deploy --except functions
 Error: Functions did not deploy properly.
 error Command failed with exit code 1.

~ ์—…๋ฐ์ดํŠธ 1 : firebase deploy ๊ณผ (์™€) ์ง€์†์ ์œผ๋กœ ์‹คํŒจํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋Œ€์‹  firebase deploy --only functions ํ•˜๋ฉด ๋•Œ๋กœ๋Š” ์ž‘๋™ํ•˜๊ฑฐ๋‚˜ ๋•Œ๋กœ๋Š” ๋™์ผํ•œ ์˜ค๋ฅ˜๋กœ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ~
์—…๋ฐ์ดํŠธ 2 : ์˜ค๋Š˜์€ ํ•ญ์ƒ ์‹คํŒจํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ.

@devth ๋Š” ์ด ๋ฉ”์‹œ์ง€๋ฅผ ๋ด…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋ถ„๋ช…ํžˆ ๊ทธ๊ฒƒ์€ ๋„ˆ๋ฌด ๋งŽ์€ deps์™€ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค. Firebase Functions์—์„œ Nextjs๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ „์ฒด ์›น ์Šคํƒ์˜ deps๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋งค์šฐ ์ž‘๊ณ  ์ƒˆ๋กœ์šด ์•ฑ์ด๋ฏ€๋กœ ์„ฑ์žฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฐธ๊ณ  ์‚ฌํ•ญ :์ด ๋ฌธ์ œ๋กœ ์ธํ•ด ํ˜„์žฌ ๊ธฐ๋Šฅ์ด ์†์ƒ๋˜์–ด ๋‚ด ์‚ฌ์ดํŠธ๊ฐ€ ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค (ํ˜„์žฌ 404์— ๋ถˆ๊ณผ). ์ค‘๋Œ€ํ•œ ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ž๊ทน์ ์ด๋ผ๋ฉด ๋‚˜๋Š” ํ•ด๊ฒฐ์ฑ…์ด์—†์ด ์™„์ „ํžˆ ๋‹ค์šด๋˜์—ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”,์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ ํ•˜๋Š” ๊ฒฝ์šฐ ์œ ์‚ฌํ•œ ๋ฒ„๊ทธ ๋ฅผ ์ƒˆ ๋ฒ„๊ทธ ๋ฅผ

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰