NuGet パッケージの更新って忘れがちなので、自動的にバージョンアップとか検出したいですよね
やり方
バージョンアップの検出
dotnet list {Your solution file path} package --outdated
廃止されたパッケージの検出
dotnet list {Your solution file path} package --deprecated
※ --format json
を付けると、json で返ってくるので、自動化して何かしたいといった時にも便利です
Azure Pipelines に組み込んでみよう
せっかくなんで、Azure Pipelines で動かしてみましょう
pool: vmImage: ubuntu-latest steps: - checkout: self submodules: true persistCredentials: true - task: DotNetCoreCLI@2 displayName: 'Restore' inputs: command: 'restore' projects: '**/{Your solution file path}' feedsToUse: 'select' - script: | result=$(dotnet list {Your solution file path} package --outdated --format json) echo $result echo $result | jq -c '.projects[]' | while read project; do project_path=$(echo "$project" | jq '.path') has_frameworks=$(echo "$project" | jq 'has("frameworks")') if [[ "$has_frameworks" == "true" ]]; then echo '対象があるよ' else echo '対象が無いよ' fi done - script: | dotnet list {Your solution file path} package --outdated - script: | dotnet list {Your solution file path} package --deprecated
簡単な検出用のスクリプトを記述してあります。
必要に応じて成型して slack に送るとかそういったことが出来ると思います。
まとめ
一週間に一回 CI を回してチェックするとか良いんじゃないでしょうか