目的
CI から sln ファイルを扱いたかったのですが、通常 Unity プロジェクトの git リポジトリに sln ファイルは含めないです。
コマンドラインから sln ファイルを作成することで CI で sln ファイルを扱うことが出来るようになります。
sln ファイルでやりたいこと
sln ファイルがあれば msbuild が利用できます。
たとえば msbuild project.sln -warnAsError
を CI 中に仕込むことで、Unity プロジェクトに警告があった場合に CI を失敗させるなどで利用できます。
方法
batchmode で UnityEditor.SyncVS.SyncSolution メソッドを実行します。
以下が実行例です。
Unity.exe -batchmode -nographics -logFile - -executeMethod UnityEditor.SyncVS.SyncSolution -projectPath . -quit