Получение лицензионной информации для всех пакетов nuget / npm / bower программно - PullRequest
0 голосов
/ 15 мая 2019

Я пытаюсь реализовать скрипт, который будет извлекать информацию о лицензии для всех пакетов nuget, используемых во всех моих проектах.

До сих пор я написал скрипт PowerShell, который будет проходить через весь мой GITрепозитории и вернуть список всех пакетов NuGet / npm / bower & и версий, которые я использую.

Теперь я хочу получить информацию о лицензии для каждого пакета NuGet / npm / bower, например:это MIT или лицензия Apache ...

Из консоли диспетчера пакетов в Visual Studio я могу просто запустить следующую команду «Get-Package | Select-Object Id, LicenseUrl», но поскольку у меня есть сотни решений(база кода - это более 1 миллиона строк кода), этот вариант недопустим.

Итак, мой вопрос: знаете ли вы, ребята, какие-либо WebApplication или WebAPI, где я могу запрашивать информацию о лицензии пакета?

Заранее большое спасибо.

1 Ответ

0 голосов
/ 15 мая 2019

Решение:

  1. Загрузите каждый найденный мной пакет nuget (с nuget-cli).
  2. Пакет Foreach проверяет узел LicenseUrl / License в файле nuspec.Стрела выполнена (часть1).

  3. Использование https://www.npmjs.com/package/license-checker - тот же подход, что и выше.Boom - done (part2).

Я действительно хочу поделиться своим сценарием (250 строк), где я прохожу 500 репозиториев git, нахожу все ссылки на nuget в смеси старого и нового проектаструктуры и найти все ссылки на пакеты npm - прежде чем делать выше, но я боюсь, у меня будут проблемы, так как это оплачиваемая работа :(

...