bit.dev: ошибка при экспорте нового компонента шаблона express-server: “Невозможно прочитать свойства null (чтение ‘billingProviderId’)”

Вопрос или проблема

Я пытаюсь настроить новое рабочее пространство bit с приложениями на express-server и получаю ошибку при экспорте в облачное пространство bit, даже без каких-либо модификаций компонента, созданного по шаблону. Я могу добавить компонент из шаблона, могу собирать, запускать, делать снимки и тегировать, статус показывает OK, однако когда я запускаю bit export, у меня возникает ошибка:

Невозможно прочитать свойства null (чтение 'billingProviderId')

Замечание: другие компоненты экспортируются нормально. Я успешно создал/сделал снимок и экспортировал новые компоненты на основе шаблонов ‘module’ и ‘node-env’.

Запуск с –log debug показывает, что ошибка вызвана здесь:

[15:57:04.201]: Http.pushToCentralHub, начато. url: https://api.v2.bit.cloud/exporter/api/put. всего объектов 9
⠍⠁ экспорт компонента[15:57:04.694]: Http.pushToCentralHub, завершено. url: https://api.v2.bit.cloud/exporter/api/put, статус 200 статусТекст OK
[15:57:04.696]: http, сообщение от центрального хаба: Невозможно прочитать свойства null (чтение 'billingProviderId')
[15:57:04.700]: получена ошибка от команды export: UnexpectedNetworkError: Невозможно прочитать свойства null (чтение 'billingProviderId')
    err: {
      "type": "UnexpectedNetworkError",
      "message": "Невозможно прочитать свойства null (чтение 'billingProviderId')",
      "stack":
          UnexpectedNetworkError: Невозможно прочитать свойства null (чтение 'billingProviderId')
              at Http.pushToCentralHub (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/legacy/dist/scope/network/http/http.js:333:13)
              at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
              at async pushAllToCentralHub (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/export/dist/export.main.runtime.js:561:27)
              at async ExportMain.exportMany (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/export/dist/export.main.runtime.js:641:27)
              at async ExportMain.exportComponents (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/export/dist/export.main.runtime.js:321:9)
              at async ExportMain.export (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/export/dist/export.main.runtime.js:250:9)
              at async ExportCmd.report (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/export/dist/export-cmd.js:85:9)
              at async CommandRunner.runReportHandler (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/cli/dist/command-runner.js:130:20)
              at async CommandRunner.runCommand (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/cli/dist/command-runner.js:85:16)
              at async CLIMain.run (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/cli/dist/cli.main.runtime.js:230:5)
              at async runCLI (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/bit/dist/load-bit.js:428:3)
              at async initApp (/Users/riverhume/.bvm/versions/1.8.52/bit-1.8.52/node_modules/@teambit/bit/dist/app.js:63:5)
      "isUserError": true,
      "name": "UnexpectedNetworkError"
    }
Невозможно прочитать свойства null (чтение 'billingProviderId')
[15:57:04.788]: [+] CLI-OUTPUT: Невозможно прочитать свойства null (чтение 'billingProviderId')
[15:57:04.788]: [*] команда "export" завершилась с кодом ошибки 1

Шаги для воспроизведения (в пустом каталоге):

bit init --default-scope <orgname.scopename>
bit create express-server express-test --env <orgname.scopename>
bit snap -m "1-й снимок"
bit login
bit export

Замечание: та же ошибка возникает при использовании tag вместо snap

Локальная среда:

  • node –version
    v20.17.0
  • bit –version
    1.8.52
  • pnpm –version
    9.10.0
  • npm bvm –version
    10.8.2

Ожидалось: успешная отправка в bit.cloud успешного снимка

Результат: ошибка “Невозможно прочитать свойства null (чтение ‘billingProviderId’)”

Спасибо!

Ответ или решение

Проблема, с которой вы столкнулись, связана с попыткой экспорта компонента, созданного на основе шаблона express-server, и ошибкой, указывающей на недоступность billingProviderId. Давайте рассмотрим решение данной проблемы в несколько этапов.

1. Проверьте конфигурацию вашего рабочего пространства

Убедитесь, что в файле конфигурации bit.json вашего рабочего пространства правильно указаны настройки для подключения к Bit Cloud. Необходима корректная аутентификация и наличие прав на экспорт в указанный вами scope.

2. Актуализируйте вашу среду

Поскольку вы используете Node.js версии 20.17.0, убедитесь, что все библиотеки и пакеты обновлены до последних стабильных версий. Вы можете выполнить следующие команды:

npm install -g bit-bin

3. Обновите Bit CLI

Проверьте, есть ли обновления для Bit на данный момент. Возможно, в более новых версиях уже исправлены баги, которые могут быть источником вашей проблемы:

bit update

4. Убедитесь в наличии прав доступа

Если вы используете организационный scope, убедитесь, что ваш пользователь действительно имеет необходимые права для экспорта компонентов. Это можно проверить в настройках вашего аккаунта на Bit Cloud.

5. Проверьте наличие ошибок в коде

Иногда ошибка может быть вызвана несоответствием полей, указываемых в коде компонента. Пожалуйста, проверьте код вашего компонента на наличие кода, который ссылается на billingProviderId. Если этот код присутствует, убедитесь, что он обернут в конструкции проверки на наличие значения (например, if (object && object.billingProviderId)).

6. Логи и отладка

Использование флага --log debug в команде может помочь вам более подробно увидеть, на каком этапе происходит сбой. Если проблема сохраняется, вы можете обратиться к сообществу Bit или создать запрос в службу поддержки, приложив логи с ошибками.

7. Обратитесь в службу поддержки

Если ни одно из вышеперечисленных решений не помогло, рекомендуется создать тикет в службу поддержки Bit с полным описанием вашей проблемы, включая шаги воспроизведения и логи ошибок. Это может помочь разработчикам Bit быстрее идентифицировать и решить вашу проблему.

Заключение

Сложности с billingProviderId, скорее всего, связаны либо с настройками вашего аккаунта, либо с проблемами на стороне сервера Bit. Следуя данным шагам, вы сможете концептуально устранить источник ошибочной ситуации и обеспечить корректный экспорт компонентов. Если возникнут дополнительные вопросы, не стесняйтесь их задавать.

Оцените материал
Добавить комментарий

Капча загружается...