Firebase-tools: рдПрдореБрд▓реЗрдЯрд░ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 1 рджрд┐рд╕ре░ 2017  ┬╖  42рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: firebase/firebase-tools

рдЬрдм рдореИрдВ рдлрд╛рдпрд░рдмреЗрд╕ рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ - рдХреЗрд╡рд▓ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реВрдВ
рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдЪрд▓рд╛рддрд╛ рд╣реИ
functions: Cannot start emulator. Error: Cannot find module '@google-cloud/functions-emulator/src/config'

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ package.json . рдореЗрдВ рдиреЛрдб рдЗрдВрдЬрди рд╕реЗ рднрд┐рдиреНрди рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛрддреА рд╣реИ
рд╕рдорд╛рдзрд╛рди:

рдиреАрдЪреЗ рдпрд╛рд░реНрди рд╣реИ, npm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ

# install current working directory dependencies
yarn --ignore-engines

# install firebase-tools if u didn't
yarn global add firebase-tools

# install functions-emulator
yarn global add @google-cloud/functions-emulator --ignore-engines

рд╕рднреА 42 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдЖрдк firebase-tools рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдПрдореБрд▓реЗрдЯрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╣ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рдВрднрд╡ рд╣реИ)ред рдХреНрдпрд╛ рдЖрдк npm install -g firebase-tools рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ @google-cloud/functions-emulator рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдЦреАрдВрдЪреЗ рдЬрд╛рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЧреБрдирдЧреБрдирд╛рд╣рдЯ? рдЖрдкрд╕реЗ рд╡рд╛рдкрд╕ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ рдпрд╛ рд╣рдо рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдмрдВрдж рдХрд░ рджреЗрдВрдЧреЗ

рдореИрдВрдиреЗ рд╡рд╣реА рдХрд╛рдо рдХрд┐рдпрд╛, рдореИрдВрдиреЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд▓рд╛рдн рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ред

тЮЬ рдлрд╛рдпрд░рдмреЗрд╕ рд╕рд░реНрд╡ - рдХреЗрд╡рд▓ рдХрд╛рд░реНрдп

=== ' рд╕реЗ рд╕реЗрд╡рд┐рдд'...

рдХрд╛рд░реНрдп: рдПрдореБрд▓реЗрдЯрд░ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рддреНрд░реБрдЯрд┐: рдореЙрдбреНрдпреВрд▓ '@ google-cloud/functions-emulator/src/config' рдирд╣реАрдВ рдЦреЛрдЬрд╛ рдЬрд╛ рд╕рдХрд╛
npm рдЗрдВрд╕реНрдЯрд╛рд▓ -g рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕
npm WARN рдкрджрд╛рд╡рдирдд рдиреЛрдб[email protected] : рдЗрд╕рдХреЗ рдмрдЬрд╛рдп uuid рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
/рдШрд░//.npm-global/bin/firebase -> /home//.npm-global/lib/node_modules/firebase-tools/bin/firebase

  • рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕@3.17.3
    89.04s . рдореЗрдВ 1 рдкреИрдХреЗрдЬ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛
    => рдлрд╛рдпрд░рдмреЗрд╕ рд╕рд░реНрд╡ - рдХреЗрд╡рд▓ рдХрд╛рд░реНрдп

=== ' рд╕реЗ рд╕реЗрд╡рд┐рдд'...

рдХрд╛рд░реНрдп: рдПрдореБрд▓реЗрдЯрд░ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рддреНрд░реБрдЯрд┐: рдореЙрдбреНрдпреВрд▓ '@ google-cloud/functions-emulator/src/config' рдирд╣реАрдВ рдЦреЛрдЬрд╛ рдЬрд╛ рд╕рдХрд╛

рдореЗрд░рд╛ рднреА рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд╣реИред рдХреБрдЫ рджрд┐рдиреЛрдВ рд╕реЗ рдРрд╕рд╛ рд╣реА рд╣реИред рдЖрдЬ рдХреЗ рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж рднреАред

@danielsada рдФрд░ @raelmiu рдХреНрдпрд╛ рдЖрдк рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

npm рдЕрдирдЗрдВрд╕реНрдЯреЙрд▓ -g рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕ && npm i -g рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕

рдХреНрдпрд╛ рдпрд╣, рдХреБрдЫ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ:
node-pre-gyp ERR! Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.4.1/node-v59-linux-x64.tar.gz node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v59 ABI) (falling back to source compile with node-gyp) make: Entering directory '/home/danielsada/.npm-global/lib/node_modules/firebase-tools/node_modules/grpc/build'
рдлрд┐рд░

`> @google-cloud/ functions [email protected] рдкреЛрд╕реНрдЯрдЗрдВрд╕реНрдЯреЙрд▓ /рд╣реЛрдо//.npm-global/lib/node_modules/firebase-tools/node_modules/@google-cloud/functions-emulator

рдиреЛрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ/рдЕрдкрдЧреНрд░реЗрдб-рдЪреЗрддрд╛рд╡рдиреА`

рдлрд┐рд░ рдЕрдВрдд рдореЗрдВ рд╡рд╣реА рддреНрд░реБрдЯрд┐

image

рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред рд╕реНрдерд╛рдкрдирд╛ рд░рджреНрдж рдХрд░рдиреЗ рдФрд░ рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИред

рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ?. рдЕрднреА рднреА рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред

screen shot 2018-01-25 at 12 59 38 pm

рдореЗрд░рд╛ рднреА рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд╣реИред рд╕реНрдерд╛рдкрд┐рдд рдиреЛрдб 6.11, рдкреБрди: рд╕реНрдерд╛рдкрд┐рдд рдЙрдкрдХрд░рдг, рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

v3.17.2 . рдореЗрдВ рджреЛрд╣рд░рд╛ рд╕рдХрддреЗ рд╣реИрдВ

рд╣рд╛рдп рд╕рдм рд▓реЛрдЧ, рдХреНрдпрд╛ рдЖрдк v3.17.3 рдЖрдЬрд╝рдорд╛ рд╕рдХрддреЗ рд╣реИрдВ? @ рдореАрд░-рдЕрдВрд╕рд╛рд░ рдЖрдкрдХреА рдЕрдиреБрдорддрд┐ рддреНрд░реБрдЯрд┐ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ, рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдВ рджреА рдЧрдИ рд╣реИ: https://docs.npmjs.com/getting-started/fixing-npm-permissions

рдореИрдВрдиреЗ .3 рдФрд░ .2 рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА :(

рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ https://github.com/GoogleCloudPlatform/cloud-functions-emulator/issues/170#issue -278096938 рдХреЗ рд╕рдорд╛рди рд╣реИред рддреЛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЙрд╕ рдореБрджреНрджреЗ рдХреЛ +1 рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВред

рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЖрдЬрдорд╛ рд╕рдХрддреЗ рд╣реИрдВ рд╡реЗ рд╣реИрдВ:

  • npm рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛, рдФрд░ рдлрд┐рд░ рдЕрдирдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛, рдлрд┐рд░ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛
npm i -g npm
npm unintall -g firebase-tools && npm i -g firebase-tools

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдЯреАрдХ рдореБрджреНрджрд╛ рд╣реИ, рдЕрдзрд┐рдХрд╛рдВрд╢ рджрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдЗрд╕ рдмреАрдЪ рдХрд┐рд╕реА рдХреЛ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛?

рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдХреНрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рд╣реИред рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ - рдлрд╛рдпрд░рдмреЗрд╕: рдПрдореБрд▓реЗрдЯрд░ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

npm install -g @google-cloud/functions-emulator рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ред

@RyanNewsom рдиреЗ рдЗрд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП рд╣рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдЕрднреА рднреА рдЯреВрдЯрд╛ред

рдХреЛрдИ рдХрд╛рдордХрд╛рдЬреА рд╕рдорд╛рдзрд╛рди? рдореЗрд░рд╛ рдПрдореБрд▓реЗрдЯрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЕрдм рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ

рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рд╕рдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реИрдВ, рдПрдХ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИ, рдПрдХ рдЙрдкрд░реЛрдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣реА рд╣реИ, рд╕рд╛рде рд╣реА рдПрдХ рдлрд╛рдпрд░рдмреЗрд╕ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдЬреЛ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ - рдЕрдм рдмреЗрд╡рдЬрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдХрдИ рдорд╣реАрдиреЛрдВ рдХреА рдЕрд╡рдзрд┐ рдореЗрдВ рдпрд╣рд╛рдВ рдФрд░ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рджреЛрдиреЛрдВ рдкрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рднрд╛рдЧреНрдп рд╕реЗ рдкреАрдбрд╝рд┐рдд рд▓реЛрдЧреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдХрдо рднрдВрдЧреБрд░ рдкреНрд░рдгрд╛рд▓реА рдХреНрд░рдо рдореЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдлрд╝рд╛рдпрд░рдмреЗрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рдЧрд▓рдд рдкрд╛рдпрдерди рд╕рдВрд╕реНрдХрд░рдг рд╣реИред

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдЕрдЬрдЧрд░ 2 рдХреЗ рд╕рд╛рде рдПрдХ рд╢реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдПрдБ:
npm install -g firebase-tools

рдирд╡реАрдирддрдо рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕ (v3.17.5) рдЬреАрдЖрд░рдкреАрд╕реА рдХреЛ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреГрдкрдпрд╛ npm i -g firebase-tools . рдЪрд▓рд╛рдХрд░ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВ

рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ред

рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ package.json . рдореЗрдВ рдиреЛрдб рдЗрдВрдЬрди рд╕реЗ рднрд┐рдиреНрди рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛрддреА рд╣реИ
рд╕рдорд╛рдзрд╛рди:

рдиреАрдЪреЗ рдпрд╛рд░реНрди рд╣реИ, npm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ

# install current working directory dependencies
yarn --ignore-engines

# install firebase-tools if u didn't
yarn global add firebase-tools

# install functions-emulator
yarn global add @google-cloud/functions-emulator --ignore-engines
тЪа  functions: Cannot start emulator. Error: Cannot find module '@google-cloud/functions-emulator/src/config'
(node:15281) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'exit' of undefined
    at /usr/local/lib/node_modules/firebase-tools/lib/command.js:82:34
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:15281) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:15281) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

@ddo рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред

тЪа  functions: Cannot start emulator. Error: Cannot find module '@google-cloud/functions-emulator/src/config'
(node:15281) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'exit' of undefined
    at /usr/local/lib/node_modules/firebase-tools/lib/command.js:82:34
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:15281) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:15281) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

@ddo рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред

рдХрд╛рдо рдХрд┐рдпрд╛, рдореИрдВ рдХреЗ рдмрд╛рдж:

  1. NVM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдиреЛрдб рдФрд░ NPM рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
  2. /usr/local/lib/node_modules рдкрд░ рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕ рд╣рдЯрд╛рдПрдВ (рдпрд╛ рд░реВрдЯ-рд▓реЗрд╡рд▓ рдиреЛрдб рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдкрд┐рдЫрд▓рд╛ рд╡реИрд╢реНрд╡рд┐рдХ рдкреИрдХреЗрдЬ)
  3. sudo ( npm i -g firebase-tools ) рдХреЗ рдмрд┐рдирд╛ рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ

рдПрд╕рдбреАрдПрдлрдПрд╕рдбреАрдПрдлрдбреАрдПрдл

рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдиреЛрдб 8 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдерд╛ рдФрд░ firebase serve --only functions рдФрд░ firebase-tools рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдереА рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ @google-cloud/[email protected]: The engine "node" is incompatible with this module. Expected version "~6". Got "8.1.0" рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди --ignore-engines рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реИ - рдЕрдм рдпрд╣ рдареАрдХ рдЪрд▓рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ

[Jest Dev server] $ firebase serve --only functions -p 5000 -o 0.0.0.0
[Jest Dev server]
[Jest Dev server] === Serving from '/Users/xxx/project-name'...
[Jest Dev server]
[Jest Dev server] i  functions: Preparing to emulate functions.
[Jest Dev server] Warning: You're using Node.js v8.1.0 but Google Cloud Functions only supports v6.11.5.

рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ, рдореИрдВ рдмрд╕ рдлрд╛рдпрд░рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реВрдВред рдмрд╕, рдЗрддрдирд╛ рд╣реАред

рдмреБрдзрд╡рд╛рд░, 14 рдирд╡рдВрдмрд░, 2018 рдХреЛ 1:03 рдкреВрд░реНрд╡рд╛рд╣реНрди рдкрд░ rilian [email protected] рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдиреЛрдб 8 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдлрд╛рдпрд░рдмреЗрд╕ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ
рд╕рд░реНрд╡ - рдХреЗрд╡рд▓ рдХрд╛рд░реНрдп рдФрд░ рдлрд╛рдпрд░рдмреЗрд╕-рдЙрдкрдХрд░рдг рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИрдВ
@google-cloud/ functions [email protected] : рдЗрдВрдЬрди "рдиреЛрдб" рд╣реИ
рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрддред рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕рдВрд╕реНрдХрд░рдг "~6"ред "8.1.0" рдорд┐рд▓рд╛, рд▓реЗрдХрд┐рди
--ignore-рдЗрдВрдЬрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реИ - рдЕрдм рдпрд╣ рдареАрдХ рдЪрд▓рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ a
рдЪреЗрддрд╛рд╡рдиреА

[рдЬреЗрд╕реНрдЯ рджреЗрд╡ рд╕рд░реНрд╡рд░] $ рдлрд╛рдпрд░рдмреЗрд╕ рд╕рд░реНрд╡ - рдХреЗрд╡рд▓ рдХрд╛рд░реНрдп -рдкреА 5000 -рдУ 0.0.0.0
[рдЬреЗрд╕реНрдЯ рджреЗрд╡ рд╕рд░реНрд╡рд░]
[рдЬреЗрд╕реНрдЯ рджреЗрд╡ рд╕рд░реНрд╡рд░] === '/Users/xxx/project-name' рд╕реЗ рд╕реЗрд╡рд╛ рджреЗ рд░рд╣рд╛ рд╣реИ...
[рдЬреЗрд╕реНрдЯ рджреЗрд╡ рд╕рд░реНрд╡рд░]
[рдЬреЗрд╕реНрдЯ рджреЗрд╡ рд╕рд░реНрд╡рд░] рдореИрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реВрдВ: рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреА рддреИрдпрд╛рд░реАред
[рдЬреЗрд╕реНрдЯ рджреЗрд╡ рд╕рд░реНрд╡рд░] рдЪреЗрддрд╛рд╡рдиреА: рдЖрдк Node.js v8.1.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд▓реЗрдХрд┐рди Google рдХреНрд▓рд╛рдЙрдб рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗрд╡рд▓ v6.11.5 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/firebase/firebase-tools/issues/552#issuecomment-438375329 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/Acq9nGZycDnglAuFYQiMNNVaQX9XEyTRks5uuwl-gaJpZM4Qx6cx
.

рдореБрдЭреЗ рдмрдЪрд╛рдУ:
yarn global remove @google-cloud/functions-emulator
yarn global add https://github.com/GoogleCloudPlatform/cloud-functions-emulator#master

рдлрд╛рдпрд░рдмреЗрд╕-рдПрдбрдорд┐рди рдФрд░ рдХреБрдЫ рдЕрдиреНрдп рдлрд╛рдпрд░рдмреЗрд╕ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдереАред рдореИрдВ рдиреЛрдб 8 рдкрд░ рдХрд╛рд░реНрдп рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ рдХрд┐ рдореИрдВрдиреЗ --ignore-engines рдХреЗ рд╕рд╛рде рдлрд╛рдпрд░рдмреЗрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ

рдпрджрд┐ рдЖрдк рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдпрд╛рд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдлрд╛рдпрд░рдмреЗрд╕-рдЯреВрд▓реНрд╕ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдпрд╛рд░реНрди рдХреЗ рдмрдЬрд╛рдп рдПрдирдкреАрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

yarn global remove firebase-tools
npm i - g firebase-tools

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛: рдореИрдВ рдореИрдХ рдкрд░ рдбреЙрдХрд░ рдХреЗ рдЕрдВрджрд░ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рд░рд╣рд╛ рдерд╛ред рдЗрд╕реЗ рдХреБрдЫ рднреА рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдореИрдХ рдкрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛, рдлрд┐рд░ рдЗрд╕реЗ рдбреЙрдХрдЯрд░ рдХреЗ node_modules рдореЗрдВ рдХреЙрдкреА рдХрд░ рд▓рд┐рдпрд╛ред рд╡рд╣ рдХрд╛рдо рдХрд┐рдпрд╛ред

рдиреЛрдб 8 рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдкреНрд░рд╡рд╛рд╕ рдХреЗ рдмрд╛рдж рднреА рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, --ignore-engines рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓рддреА рд╣реИ:

рдЪреЗрддрд╛рд╡рдиреА: рдЖрдк Node.js v8.14.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд▓реЗрдХрд┐рди Google рдХреНрд▓рд╛рдЙрдб рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗрд╡рд▓ v6.11.5 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

@Dygerati рдореЗрд░реЗ рд▓рд┐рдП рд╡рд╣реАред

рдореБрдЭреЗ рдпрд╣реА рдорд┐рд▓рддрд╛ рд╣реИ, рдХрд┐рд╕реА рдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛?

functions: Cannot start emulator. Error: Cannot find module './acceleratedmobilepageurl/v1'
(node:16724) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'exit' of undefined
    at C:\....\node_modules\firebase-tools\lib\command.js:82:34
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:16724) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rej
ection id: 2)
(node:16724) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

npm install @google-cloud/functions-emulator --save-dev рдореЗрд░реЗ рд▓рд┐рдП рд╣рд▓ рд╣реЛ рдЧрдпрд╛

рдареАрдХ рд╣реИ рддреЛ Google рдХреНрд▓рд╛рдЙрдб-рдлрд╝рдВрдХреНрд╢рдВрд╕-рдПрдореБрд▓реЗрдЯрд░ "рдХреЗрд╡рд▓ рдиреЛрдб v6.xx рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдпрд╣ рдиреЛрдб v8.xx рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ"
https://github.com/GoogleCloudPlatform/cloud-functions-emulator#note

рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рдЪреБрдирдиреЗ рдкрд░ рдлрд╛рдпрд░рдмреЗрд╕ рдбреЙрдХреНрд╕ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдЖрдк рдиреЛрдб 8 "engines": {"node": "8"} . рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмреАрдЯрд╛ рдореЗрдВ ..
https://firebase.google.com/docs/functions/manage-functions#set_nodejs_version

рддреЛ рдореИрдВ рдиреЛрдб 8 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдХреНрд▓рд╛рдЙрдб рдлрд╝рдВрдХреНрд╢рди рд╢реЗрд▓ (рдпрджрд┐ рдореИрдВ рдиреЛрдб 8 рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛?
рдХреНрдпрд╛ рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдЕрдзрд┐рдХрд╛рд░ рд╣реИ?

рдлрд╛рдпрд░рдмреЗрд╕ рдЯреАрдо/рдЧреВрдЧрд▓ рдЯреАрдо, рдпрд╣ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдбреЙрдХреНрд╕ рдореЗрдВ рдбрд╛рд▓ рджреЗрдВ рдХрд┐ рдХреНрд▓рд╛рдЙрдб рдлрдВрдХреНрд╢рди рдПрдореБрд▓реЗрдЯрд░ рдиреЛрдб 8 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреГрд╖реНрда рдкрд░, https://firebase.google.com/docs/functions/manage-functions#set_nodejs_version рдореЗрдВ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ

"рдЖрдк рдЕрдкрдиреЗ рд░рдирдЯрд╛рдЗрдо рдХреЛ рдиреЛрдб 8 рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк Google рдХреНрд▓рд╛рдЙрдб-рдлрд╝рдВрдХреНрд╢рдВрд╕-рдПрдореБрд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ node6.xx рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ рдФрд░ рдХреЛрдИ рднреА рдиреЛрдб 8 рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛"

рдпрд╣рд╛рдВ рдПрдХ рд╕рдорд╛рди рдЪреЗрддрд╛рд╡рдиреА рдорджрдж рдХрд░реЗрдЧреА
https://firebase.google.com/docs/functions/local-emulator#install_and_configure_the_cloud_functions_shell

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреЗ рдЧрдП рдИрдореЗрд▓ рдореЗрдВ рднреА (25 рдлрд░рд╡рд░реА 2019)
рд╡рд┐рд╖рдп: [рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ] 1 рдЕрдкреНрд░реИрд▓ рд╕реЗ рдирдП рдХреНрд▓рд╛рдЙрдб рдлрд╝рдВрдХреНрд╢рдВрд╕ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди

рдореИрдВ рдпрд╣рд╛рдВ рдареАрдХ рдЙрд╕реА рдкреНрд░рд╢реНрди рдХреЗ рд╕рд╛рде рдЖрдпрд╛ рд╣реВрдВ рдЬреИрд╕реЗ @julianorinyol - рдХреНрдпрд╛ рдПрдореБрд▓реЗрдЯрд░ рдХреЛ рдЙрд╕ рдмрд┐рдВрджреБ рдкрд░ рд▓рд╛рдиреЗ рдХреА рдХреЛрдИ рдпреЛрдЬрдирд╛ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рдиреЛрдб 8 рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ?

рдиреЛрдб 8 (рдпрд╛рд░реНрди рдХреЗ рд╕рд╛рде) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
yarn add @google-cloud/functions-emulator --ignore-engines

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

FluorescentHallucinogen picture FluorescentHallucinogen  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

laurenzlong picture laurenzlong  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

chen86860 picture chen86860  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jefrydco picture jefrydco  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

satishverma143 picture satishverma143  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ