6

我正在使用 Circle-Ci 和 Firebase 应用程序分发进行我们的连续分发每件事都运行良好,直到今天我收到以下错误:

[10:52:11]: --- Step: firebase_app_distribution ---
[10:52:11]: ---------------------------------------
[10:52:11]: Authenticating with FIREBASE_TOKEN environment variable
[10:52:12]:  Authenticated successfully.
[10:52:12]: ⌛ Uploading the IPA.
[10:52:13]: An error occurred while executing the `error` block:
[10:52:19]: undefined method `error_info' for #<Faraday::ForbiddenError:0x00007fe597865d38>


bundler: failed to load command: fastlane (/Users/distiller/project/vendor/bundle/ruby/2.7.0/bin/fastlane)
Faraday::ForbiddenError: [!] the server responded with status 403
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/response/raise_error.rb:20:in `on_complete'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/middleware.rb:19:in `block in call'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/response.rb:59:in `on_complete'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/middleware.rb:18:in `call'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday_middleware-1.0.0/lib/faraday_middleware/response_middleware.rb:36:in `call'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/rack_builder.rb:154:in `build_response'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/connection.rb:492:in `run_request'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/faraday-1.3.0/lib/faraday/connection.rb:279:in `post'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-plugin-firebase_app_distribution-0.2.5/lib/fastlane/plugin/firebase_app_distribution/client/firebase_app_distribution_api_client.rb:123:in `upload_binary'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-plugin-firebase_app_distribution-0.2.5/lib/fastlane/plugin/firebase_app_distribution/client/firebase_app_distribution_api_client.rb:153:in `upload'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-plugin-firebase_app_distribution-0.2.5/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb:31:in `run'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:263:in `block (2 levels) in execute_action'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/actions/actions_helper.rb:69:in `execute_action'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:255:in `block in execute_action'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:229:in `chdir'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:229:in `execute_action'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:157:in `trigger_action_by_name'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/fast_file.rb:159:in `method_missing'
  Fastfile:50:in `block (2 levels) in parsing_binding'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/lane.rb:33:in `call'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:49:in `block in execute'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:45:in `chdir'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/runner.rb:45:in `execute'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/lane_manager.rb:47:in `cruise_lane'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/command_line_handler.rb:36:in `handle'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/commands_generator.rb:108:in `block (2 levels) in run'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in `call'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:153:in `run'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/runner.rb:476:in `run_active_command'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:76:in `run!'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/delegates.rb:15:in `run!'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/commands_generator.rb:352:in `run'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/commands_generator.rb:41:in `start'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/fastlane/lib/fastlane/cli_tools_distributor.rb:122:in `take_off'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/gems/fastlane-2.173.0/bin/fastlane:23:in `<top (required)>'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/bin/fastlane:23:in `load'
  /Users/distiller/project/vendor/bundle/ruby/2.7.0/bin/fastlane:23:in `<top (required)>'

Exited with code exit status 1

我尝试更新以下内容:

bundle update fastlane bundle exec fastlane update_plugins

但仍然是同样的错误。

4

2 回答 2

3

经过大量搜索,我能够找到问题所在:

总结一下:FIREBASE_TOKEN 要么过期要么被撤销,所以我不得不再次刷新它,并且由于 Firebase 使用了 Faraday,所以它需要使用 FIREBASE_TOKEN 来上传 API。

我按照此链接的步骤操作:

生成 CLI 令牌
Firebase 需要在身份验证期间使用令牌。要生成令牌,我们需要使用 Firebase CLI 和浏览器 - 由于 CircleCI 是无头环境,我们需要在本地而不是在运行时生成此令牌,然后将其作为环境变量添加到 CircleCI。

使用命令 curl -sL https://firebase.tools |在本地下载并安装 Firebase CLI bash 使用命令 firebase login:ci 触发登录 通过浏览器窗口完成登录,然后复制终端输出中提供的令牌 转到 CircleCI 中的项目设置并创建一个名为 FIREBASE_TOKEN 的新环境变量,其值为令牌。

于 2021-02-11T14:16:59.640 回答
1

我刚才遇到了同样的问题。我记得我在本地更改了我的 firebase 用户。

只需使用正确的帐户重新登录:

firebase logout

接着

firebase login
于 2021-08-18T13:23:22.993 回答