Ошибка Dependabot с клиентами сервера Bitbucket ::Bitbucket::NotFound

Я пробовал скрипт зависимости от Azure DevOps и не имел больших препятствий (я заметил, что Dependabot выдает ошибку, репо не найдено, когда я использовал токен доступа пользователя, а не токен доступа к системе в ADO), но теперь, пытаясь с корпоративным сервером Bitbucket, я вижу только это ошибка.

Кто-нибудь сталкивался с этой ошибкой?

docker run --rm -v "$(pwd):/home/dependabot/dependabot-script" -w /home/dependabot/dependabot-script -e BITBUCKET_ACCESS_TOKEN=$BITBUCKET_ACCESS_TOKEN -e GITHUB_ACCESS_TOKEN=$GITHUB_ACCESS_TOKEN -e PACKAGE_MANAGER=npm_and_yarn -e PROJECT_PATH=projects/project_name/repos/repo_name bundle exec ruby ./generic-update-script.rb

Ошибка /home/dependabot/dependabot-script/vendor/ruby/2.7.0/gems/dependabot-common-0.142.0/lib/dependabot/clients/bitbucket.rb:170:in `Clients::Bitbucket::NotFound)

2 ответа

На данный момент то, чего вы пытаетесь достичь, похоже, не реализовано в зависимостях.

Я предполагаю , что код в dependabot-core , что предприятие битбакета (под которым я имею в виду битбакет, установленный в вашей компании, а не в облаке) не поддерживается. Прямо внизу файла он читает

      def base_url
   # TODO: Make this configurable when we support enterprise Bitbucket
   "https://api.bitbucket.org/2.0/repositories/"
 end

К сожалению, я не нашел дальнейших намеков, если это действительно так.

Описание dependabot-script подразумевает, что вы можете установить URL-адрес API и имя хоста через и . Значения по умолчанию там (api 2.0 и bitbucket.org показывают, что по умолчанию они используют API-интерфейс облака битов, который, как я полагаю, отличается от корпоративного API (по крайней мере, версией).

Я даже попробовал некоторые из URL-адресов, которые собраны в коде зависимого бота, и половина из них работает нормально на корпоративном битбакете, а некоторые нет (например,../pullrequestsкоторый используется в коде, у меня не работает, потому что правильный URL будет../pull-requestsна корпоративном битбакете)

Я также проверил с помощью wireshark, так как я также пытался заставить это работать и обнаружил, что dependabot-script действительно отправляет запросы наbitbucket.orgно не мой корпоративный битбакет, даже когда я установилBITBUCKET_API_URLиBITBUCKET_HOSTNAME.

Думаю проблема в:

      PROJECT_PATH=projects/project_name/repos/repo_name

Вы должны использовать

      PROJECT_PATH=project_name/repo_name
Другие вопросы по тегам