Skip to main content
Skip to content

Устранение неполадок брандмауэра пакета GitHub

Проверьте, объясняют ли кэшированные пакеты или проблемы конфигурации с непредвиденными результатами GitHub package firewallустановки.

Примечание.

Эта функция сейчас действует Публичный предварительный просмотр и может измениться.

Пакет по-прежнему устанавливается после изменения политики

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

Проверка локального кэша npm

Проверьте: Устанавливается ли пакет с пустым кэшем npm в отдельной тестовой среде через ту же конечную точку брандмауэра?

  1. Обратите внимание на точное имя пакета, версию и область, если применимо. Проверьте, разрешает ли эта версия политика предприятия или исключение.

  2. В временном проекте за пределами исходного проекта настройте npm для использования конечной точки и проверки подлинности предприятия GitHub package firewall , включая параметры реестра по умолчанию и области. Сохраните исходный проект и файл блокировки без изменений и не очищайте общий кэш npm. См . раздел AUTOTITLE.

  3. Установите точную версию с помощью нового пустого каталога кэша. Замените PACKAGE-NAME, EXACT-VERSIONа также EMPTY-CACHE-DIRECTORY на имя пакета, версию и путь к каталогу кэша. Параметр --ignore-scripts предотвращает выполнение скриптов жизненного цикла пакета.

    npm install PACKAGE-NAME@EXACT-VERSION \
      --cache EMPTY-CACHE-DIRECTORY --ignore-scripts
    
  4. Сравните результат с исходным проектом:

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

Кэширование artifactory

Примечание.

Это руководство применяется только к экспериментальной интеграции Artifactory для пакетов npm. Даже при использовании пустого локального кэша npm artifactory может обслуживать кэшированное содержимое без отправки нового запроса через брандмауэр.

Если npm извлекает пакет из Artifactory, проверьте, обслуживалось ли artifactory кэшированное содержимое. Кроме того, убедитесь, что виртуальный репозиторий npm использует удаленный брандмауэр и не включает удаленный, который извлекает пакет непосредственно из общедоступного реестра npm. См . раздел AUTOTITLE.