Как вывести конфигурацию Firestore через cli - PullRequest
3 голосов
/ 09 мая 2020

Как мне вывести конфигурацию проекта firebase и сохранить ее в файл. json через интерфейс командной строки Firebase? У меня есть веб-проект Firebase, использующий React, и в нем есть как производственная, так и промежуточная среды, и мне нужен способ автоматически настроить мой проект, чтобы я мог просто запустить firebase use [project], а затем firebase deploy, не беспокоясь о правильной конфигурации. Это то, что у меня работало до новой sh версии Firebase CLI:

Я бы запустил firebase setup:web --json > ./src/firebase-config.json в своем пакете. json, а затем прочитал из конфигурации во время initializeApp. Но теперь setup:web устарел и больше не работает. Поэтому вместо этого вы должны использовать apps:sdkconfig web [project-id], но я не могу заставить его работать, как раньше. Если я перейду на более раннюю версию firebase-tools, я смогу заставить его снова работать старым способом.

  1. В новой настройке (с использованием apps:sdkconfig) вы должны передать идентификатор проекта, а я ' d как способ автоматической передачи (т.е. он должен знать проект, на который я переключился через firebase use).

  2. И вторая проблема заключается в том, что даже при тестировании с явной передачей идентификатора текущего проекта я получаю ошибки области:

[debug] [2020-05-09T16:18:57.519Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[debug] [2020-05-09T16:18:57.519Z] > authorizing via signed-in user
[debug] [2020-05-09T16:18:57.526Z] > refreshing access token with scopes: ["email","https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","openid"]
[debug] [2020-05-09T16:18:57.527Z] >>> HTTP REQUEST POST https://www.googleapis.com/oauth2/v3/token  
 <request body omitted>
[debug] [2020-05-09T16:18:57.722Z] <<< HTTP RESPONSE 200 {"content-type":"application/json; charset=utf-8","vary":"X-Origin, Referer, Origin,Accept-Encoding","date":"Sat, 09 May 2020 16:18:57 GMT","server":"scaffolding on HTTPServer2","cache-control":"private","x-xss-protection":"0","x-frame-options":"SAMEORIGIN","x-content-type-options":"nosniff","alt-svc":"h3-27=\":443\"; ma=2592000,h3-25=\":443\"; ma=2592000,h3-Q050=\":443\"; ma=2592000,h3-Q049=\":443\"; ma=2592000,h3-Q048=\":443\"; ma=2592000,h3-Q046=\":443\"; ma=2592000,h3-Q043=\":443\"; ma=2592000,quic=\":443\"; ma=2592000; v=\"46,43\"","accept-ranges":"none","transfer-encoding":"chunked"}
[debug] [2020-05-09T16:18:57.738Z] >>> HTTP REQUEST GET https://firebase.googleapis.com/v1beta1/projects/-/webApps/[projectId]/config  

[debug] [2020-05-09T16:18:57.969Z] <<< HTTP RESPONSE 400 {"vary":"X-Origin, Referer, Origin,Accept-Encoding","content-type":"application/json; charset=UTF-8","date":"Sat, 09 May 2020 16:18:57 GMT","server":"ESF","cache-control":"private","x-xss-protection":"0","x-frame-options":"SAMEORIGIN","x-content-type-options":"nosniff","alt-svc":"h3-27=\":443\"; ma=2592000,h3-25=\":443\"; ma=2592000,h3-Q050=\":443\"; ma=2592000,h3-Q049=\":443\"; ma=2592000,h3-Q048=\":443\"; ma=2592000,h3-Q046=\":443\"; ma=2592000,h3-Q043=\":443\"; ma=2592000,quic=\":443\"; ma=2592000; v=\"46,43\"","accept-ranges":"none","transfer-encoding":"chunked"}
[debug] [2020-05-09T16:18:57.969Z] <<< HTTP RESPONSE BODY {"error":{"code":400,"message":"Request contains an invalid argument.","status":"INVALID_ARGUMENT"}}
[debug] [2020-05-09T16:18:57.972Z] HTTP Error: 400, Request contains an invalid argument.
[debug] [2020-05-09T16:18:57.975Z] FirebaseError: HTTP Error: 400, Request contains an invalid argument.

У кого-нибудь есть хороший способ переключить конфигурацию в своих проектах Firebase React? Вот полная информация о старом способе, которым я это делал: { ссылка }

...