タイトルの通り。
Nugetで取得したパッケージのライセンスファイルをダウンロードしてくるツールを作った。
【悲報】2021/08/19 直前で気まぐれにメソッド化した処理がバグっており、動かない模様。。。。現在修正中。。。 -> 致命的なのは直した
ソースは以下。
自動化したかった操作は以下。
- (1) Nugetのページでパッケージを検索(例えばNewtonsoft.Jsonの場合は以下)
- (2) InfoのSource Repositoryをクリックして、リポジトリのURLを開く。
- (3) リポジトリ内のライセンスファイルを取得。
Newtonsoft.Jsonの場合はLICENSE.md。
使った技術
nuspecファイルの解析
以下のページを参考にプロジェクトのURLを取得した。
https://docs.microsoft.com/ja-jp/nuget/reference/nuspec
GitHubのAPI
以下のAPIでコンテンツを取得した。
https://docs.github.com/ja/rest/reference/repos#community
できなかったこと
とりあえず100万以上DLされているパッケージを対象に実行してみたが、jQueryだけダメだった。
jQueryはプロジェクトURLがGithubじゃなかったので、GitHubのREST APIじゃライセンスファイルがとれなかった模様。
うーん、これ頑張れるのかなぁ・・・・