Firebase-tools: Firebase ๋ฐฐํฌ ๊ธฐ๋Šฅ ์˜ค๋ฅ˜

์— ๋งŒ๋“  2017๋…„ 05์›” 31์ผ  ยท  21์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: firebase/firebase-tools

์•ˆ๋…•ํ•˜์„ธ์š”,
๋‚ด Firebase ํ”„๋กœ์ ํŠธ์— ๊ธฐ๋Šฅ์„ ๋ฐฐํฌํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋Š”๋ฐ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
Firebase ๋ฒ„์ „:3.9.0

[๋””๋ฒ„๊ทธ] TypeError: ์ •์˜๋˜์ง€ ์•Š์€ 'pipesCount' ์†์„ฑ์„ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
module.exports.Readable.pipe์—์„œ (_stream_readable.js:545:16)
module.exports.ZipArchiveOutputStream._smartStream์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js:171:11)
module.exports.ZipArchiveOutputStream._appendStream์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js:94:20)
module.exports.ArchiveOutputStream.entry์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/archive-output-stream.js:89:10)
module.exports.ZipStream.entry(/usr/local/lib/node_modules/firebase-tools/node_modules/zip-stream/lib/zip-stream.js:105:49)
module.exports.Zip.append์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/plugins/zip.js:30:15)
module.exports.Archiver._moduleAppend์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/core.js:123:16)
module.exports.Archiver._onQueueTask(/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/core.js:246:8)
/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/node_modules/async/lib/async.js:945:13
Immediate.process์—์„œ [_onImmediate๋กœ] (/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/node_modules/async/lib/async.js:913:25)
[์˜ค๋ฅ˜]
[์˜ค๋ฅ˜] ์˜ค๋ฅ˜: ์˜ˆ๊ธฐ์น˜ ์•Š์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

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

Node v8.1.0์ด ๋ฐฉ๊ธˆ ์ถœ์‹œ๋˜์—ˆ์œผ๋ฉฐ ๋…ธ๋“œ ๋ฒ„์ „์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ๋ฐฐํฌ๊ฐ€ ๋‹ค์‹œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋ถˆํ–‰ํžˆ๋„ v8.0.0์—์„œ firebase-tools๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

nvm install 8.1.0
nvm use 8.1.0
npm install -g firebase-tools
firebase deploy --only functions

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

์–ด๋–ค ๋ฒ„์ „์˜ Node.js๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

2017๋…„ 5์›” 31์ผ ์ˆ˜์š”์ผ ์˜ค์ „ 5์‹œ 28๋ถ„ Laguses [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”,
๋‚ด Firebase ํ”„๋กœ์ ํŠธ์— ๊ธฐ๋Šฅ์„ ๋ฐฐํฌํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ 
๋‚˜๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†๋‹ค
Firebase ๋ฒ„์ „:3.9.0

[๋””๋ฒ„๊ทธ] TypeError: ์ •์˜๋˜์ง€ ์•Š์€ 'pipesCount' ์†์„ฑ์„ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
module.exports.Readable.pipe์—์„œ (_stream_readable.js:545:16)
module.exports.ZipArchiveOutputStream._smartStream์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js:171:11)
module.exports.ZipArchiveOutputStream._appendStream์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js:94:20)
module.exports.ArchiveOutputStream.entry์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/archive-output-stream.js:89:10)
module.exports.ZipStream.entry์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/zip-stream/lib/zip-stream.js:105:49)
module.exports.Zip.append์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/plugins/zip.js:30:15)
module.exports.Archiver._moduleAppend์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/core.js:123:16)
module.exports.Archiver._onQueueTask์—์„œ
(/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/core.js:246:8)
~์—
/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/node_modules/async/lib/async.js:945:13
Immediate.process์—์„œ [_onImmediate๋กœ]
(/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/node_modules/async/lib/async.js:913:25)
[์˜ค๋ฅ˜]
[์˜ค๋ฅ˜] ์˜ค๋ฅ˜: ์˜ˆ๊ธฐ์น˜ ์•Š์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์ตœ์‹  ๋ฒ„์ „์˜ Node.js ๋ฒ„์ „: 8.0.0

Slack์˜ NodeJS 8์—์„œ ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋‘ ๊ฐ€์ง€ ๋ณด๊ณ ์„œ๋ฅผ ๋” ๋ณด์•˜์Šต๋‹ˆ๋‹ค.

@laurenzlong ์ด๊ฒƒ์„ ์ตœ์šฐ์„ ์œผ๋กœ ์ƒ๊ฐํ•˜๋„๋ก ํ•ฉ์‹œ๋‹ค.

์ข…์†์„ฑ ์ค‘ ํ•˜๋‚˜์˜ ๋ฒ„๊ทธ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค: https://github.com/archiverjs/node-archiver/issues/236

์ด ์˜ค๋ฅ˜์— ๋Œ€ํ•ด +1. node.js ver:8.0.0 ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค

์ด ์˜ค๋ฅ˜์— ๋Œ€ํ•ด +1. node.js ver:8.0.0 ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค

node.js๋ฅผ ver:6.10.3์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ–ˆ๋Š”๋ฐ ์ด์ œ ์˜ค๋ฅ˜ ์—†์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ ๋ฒ„์ „ 8.0.0์— ๋ฐฐํฌํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  Firebase ๋ฐฐํฌ๊ฐ€ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ์˜ค๋ฅ˜์™€ ํ•จ๊ป˜ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.:

[๋””๋ฒ„๊ทธ] TypeError: ์ •์˜๋˜์ง€ ์•Š์€ 'pipesCount' ์†์„ฑ์„ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
module.exports.Readable.pipe์—์„œ (_stream_readable.js:545:16)
module.exports.ZipArchiveOutputStream._smartStream์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js:171:11)
module.exports.ZipArchiveOutputStream._appendStream์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js:94:20)
module.exports.ArchiveOutputStream.entry์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/compress-commons/lib/archivers/archive-output-stream.js:89:10)
module.exports.ZipStream.entry(/usr/local/lib/node_modules/firebase-tools/node_modules/zip-stream/lib/zip-stream.js:105:49)
module.exports.Zip.append์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/plugins/zip.js:30:15)
module.exports.Archiver._moduleAppend์—์„œ (/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/core.js:123:16)
module.exports.Archiver._onQueueTask(/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/lib/core.js:246:8)
/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/node_modules/async/lib/async.js:945:13
Immediate.process์—์„œ [_onImmediate๋กœ] (/usr/local/lib/node_modules/firebase-tools/node_modules/archiver/node_modules/async/lib/async.js:913:25)
[์˜ค๋ฅ˜]
[์˜ค๋ฅ˜] ์˜ค๋ฅ˜: ์˜ˆ๊ธฐ์น˜ ์•Š์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด์— ๋Œ€ํ•œ ๋ช…๋ฐฑํ•œ ํ™œ๋™/์‘๋‹ต์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ Firebase ํ˜ธ์ŠคํŒ… ์›น์‚ฌ์ดํŠธ์˜ ๊ฒฝ์šฐ ๊ธฐ๋Šฅ์ด ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์„ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ƒ๊ธฐ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ž„์‹œ๋กœ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ €๋Š” ์ด ์ž‘์—…์„ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด์ „์— ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ AFAIK๋Š” ํ˜„์žฌ ์œ ์ผํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ Node.js๋ฅผ 8.0์—์„œ 7.10์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ผ๋ถ€ ๋””๋ฒ„๊น…์„ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ์ˆ˜์ง‘ํ•œ ๋‚ด์šฉ์—์„œ ๋ฌธ์ œ๋Š” zip ํŒŒ์ผ( ์—ฌ๊ธฐ )์„ ์ƒ์„ฑํ•  ๋•Œ prepareFunctionsUpload.js ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ฒ”์ธ์€ ์•„์นด์ด๋ฒ„ NPM ํŒจํ‚ค์ง€ ๋˜๋Š” ํ•ด๋‹น ์ข…์†์„ฑ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”.

ํŽธ์ง‘: cc @laurenzlong @mbleigh
ํŽธ์ง‘ 2: ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. Lauren์ด ์ด๋ฏธ ์ด ์‚ฌ์‹ค์„ ์•Œ์•„์ฐจ๋ ธ์Šต๋‹ˆ๋‹ค. ์‹ ๊ฒฝ์“ฐ์ง€๋งˆ

์•„์นด์ด๋ฒ„ ํŒจํ‚ค์ง€์—์„œ ์ˆ˜์ • ์ž‘์—…์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(์ง€๊ธˆ์€). ๊ทธ๋“ค์€
Lauren์ด ์œ„์— ๋งํฌํ•œ ๋ฌธ์ œ์—์„œ ์ด์— ๋Œ€ํ•ด ๋…ผ์˜ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•
ํ˜„์žฌ ๋…ธ๋“œ๋ฅผ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

2017๋…„ 6์›” 2์ผ ๊ธˆ์š”์ผ ์˜ค์ „ 7:03 Josep Sayol [email protected]์ด ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด์ „์— ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ AFAIK๊ฐ€ ์œ ์ผํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
์ด์ œ Node.js๋ฅผ 8.0์—์„œ 7.10์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.

์ผ๋ถ€ ๋””๋ฒ„๊น…์„ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ์ˆ˜์ง‘ํ•œ ๋‚ด์šฉ์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
zip ํŒŒ์ผ์„ ์ƒ์„ฑํ•  ๋•Œ prepareFunctionsUpload.js ์—์„œ(์—ฌ๊ธฐ
https://github.com/firebase/firebase-tools/blob/59b61d13c8c4a8478aef168dff2691c58ab234da/lib/prepareFunctionsUpload.js#L80 ),
๋”ฐ๋ผ์„œ ๋ฒ”์ธ์€ ์•„์นด์ด๋ฒ„ NPM ํŒจํ‚ค์ง€ ๋˜๋Š” ํ•ด๋‹น ํŒจํ‚ค์ง€ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.
์˜์กด์„ฑ.

์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”.

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/firebase/firebase-tools/issues/356#issuecomment-305797280 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AAAD_pQ5NOKxHepQcyQH5WxVNNlO-lnLks5sABY6gaJpZM4Nrkm-
.

@mbleigh ์šฐ๋ฆฌ๋Š” ํ•จ์ˆ˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋…ธ๋“œ ๋ฒ„์ „์„ ์ •์˜ํ•˜์ง€ ์•Š๊ณ  ์žˆ์œผ๋ฉฐ ์ƒ˜ํ”Œ ํ”„๋กœ์ ํŠธ์—์„œ๋„ ๊ทธ๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ์„ ๋ณด์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. package.json์˜ ์ข…์†์„ฑ์œผ๋กœ ๋…ธ๋“œ๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ๋งŒํผ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด package.json์˜ "engine" ๋งค๊ฐœ๋ณ€์ˆ˜์ž…๋‹ˆ๊นŒ?

@ahaverty ๋‚˜๋Š” ๋‹น์‹ ์„ ์œ„ํ•ด ๋Œ€๋‹ตํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋“œ๋Š” ์ „์—ญ์ ์œผ๋กœ ์„ค์น˜๋˜๋ฏ€๋กœ package.json์— ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. nvm(๋…ธ๋“œ ๋ฒ„์ „ ๊ด€๋ฆฌ์ž)์„ ์‚ฌ์šฉํ•˜์—ฌ ๋…ธ๋“œ ๋ฒ„์ „์„ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. http://michael-kuehnel.de/node.js/2015/09/08/using-vm-to-switch-node-versions.html

์•Œ ๊ฒ ์–ด์š”! ๋ฐฐํฌ ์ค‘ ๋กœ์ปฌ์—๋งŒ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? (ํŒŒ์ด์–ด๋ฒ ์ด์Šค ๊ธฐ๋Šฅ์€ ๋ฐฐํฌ์ž https://cloud.google.com/functions/docs/writing/์— ๊ด€๊ณ„์—†์ด Node 6.9.1์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค)
@AlexChaseJones ๊ฐ์‚ฌ

์˜ณ์€.

2017๋…„ 6์›” 2์ผ ๊ธˆ์š”์ผ ์˜ค์ „ 8:27 Alan Haverty [email protected]์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

์•Œ ๊ฒ ์–ด์š”! ๋ฐฐํฌ ์ค‘ ๋กœ์ปฌ์—๋งŒ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? (๊ฐ™๋‹ค.
Firebase ๊ธฐ๋Šฅ์€ ๋ฐฐํฌ์ž์™€ ๊ด€๊ณ„์—†์ด Node 6.9.1์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
https://cloud.google.com/functions/docs/writing/ )
@AlexChaseJones ๊ฐ์‚ฌ https://github.com/alexchasejones

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/firebase/firebase-tools/issues/356#issuecomment-305820945 ,
๋˜๋Š” ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AAAD_la24E0U4QFWi9hjNOWm7SigOtPMks5sACnmgaJpZM4Nrkm-
.

ํ™•์ธ, ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Firebase Codelab ์ž์Šต์„œ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋‚˜์™€ ๊ฐ™์€ n00bs๋ฅผ ์œ„ํ•œ ์ง€์นจ:

nvm install 7.10
nvm use 7.10.0
npm install -g firebase-tools
firebase deploy --only functions

์ด๊ฒƒ์€ ํ˜„์žฌ ๋…ธ๋“œ ํŒจ์น˜๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค: https://github.com/nodejs/node/pull/13374

Node v8.1.0์ด ๋ฐฉ๊ธˆ ์ถœ์‹œ๋˜์—ˆ์œผ๋ฉฐ ๋…ธ๋“œ ๋ฒ„์ „์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ๋ฐฐํฌ๊ฐ€ ๋‹ค์‹œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋ถˆํ–‰ํžˆ๋„ v8.0.0์—์„œ firebase-tools๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

nvm install 8.1.0
nvm use 8.1.0
npm install -g firebase-tools
firebase deploy --only functions

๊ทธ๋ƒฅ ๋„์™”๋‹ค
firebase deploy --only functions

babel์„ ์‚ฌ์šฉํ•˜๊ณ  ์„ ํƒ์ ์œผ๋กœ webpack์„ +ES8์—์„œ firebase๊ฐ€ ํ˜„์žฌ ์‚ฌ์šฉํ•˜๋Š” ๋…ธ๋“œ 6์œผ๋กœ ํŠธ๋žœ์ŠคํŒŒ์ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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