リソース package ツールはもともと対話的な利用に寄っていました。大量 scan、更新比較、自動 unpack には、同じ core service を再利用できる CLI が必要です。
プロジェクト概要
リポジトリ: logue/NgsPacker。
NgsPacker.Cli が引数を処理し、NgsPacker.Core が scan、snapshot 保存、diff、catalog 出力、ICE unpack service を提供します。コマンドは scan、list、catalog、diff、unpack を扱います。
用途は、GUI の分析能力をバッチ処理用ツールへ変えることです。更新 scan、member catalog、リソース変化比較、一括 unpack に向いています。
実装
コマンド入口は引数を core service 呼び出しへ変換します。core service は package 読み取り、member 列挙、SHA256 scan、CSV 出力、snapshot 比較、ICE unpack を担当します。
テストはコマンド引数、CSV 出力、一括 unpack、diff 結果を確認します。プロセス終了コードだけでなく、出力の形も検証します。