VBoxManageを使用してvirtualBoxでVMを開始および停止できることがわかります。これが必要なツールかどうかはわかりません。
私はそのスクリプトを書こうとしています
私はWebサービスとAPIの存在を知っていますが、ポイント2についてはオンラインで多くを見つけることができませんでした。
私はこれについていくつかの方向性を本当に感謝します。つまり、vboxmanageを使用してVMを起動および停止してから、他の方法でインストーラーを実行する必要がありますか?または、COM APIを使用する必要があります。使用する場合は、手順2の実行方法に関するサンプルのアイデアはありますか?
VirtualBoxにまったく精通していません。しかし、私はコードを書くことができます。
更新:VagrantまたはPuppetを見るべきですか?ご想像のとおり、これはインストーラー用のテストスイートであり、再利用できると便利です。
ありがとう
VMで開始できます
VBoxManage startvm <vm>
で電源を切ります
VBoxManage controlvm <vm> poweroff
ゲストでコマンドを実行するには、
VBoxManage guestcontrol execute ...
これはコマンドラインプログラムで正常に機能し、出力をホストにリダイレクトできます。ただし、これが通常のWindowsMSIインストーラーパッケージのようなGUIアプリケーションでどの程度うまく機能するかはわかりません。また、「結果の記録」については少しあいまいですが、インストーラーは、VMの電源を切る前にネットワーク共有に送信できるログファイルを書き込みますか?
VMのスナップショットを撮り、後で見ることもできます
はい、あなたが説明したことを正確にスクリプト化することは可能です。伝えられるところでは、Windowsホスト環境からこれを行うことは可能ですが、私の経験では、これらの機能はLinuxでのみ完全に機能します。 (スクリプトはOS Xでも正常に機能しますが、RDP認証を取得できないため、リモートシステムでのスクリプトはあまり面白くありません。)
さまざまなフープジャンプを追加すると、ゲストの追加をリモートで更新したり、ソフトウェアをインストール/削除したり、Powershellスクリプトを実行したり、WUInstallを使用してWindowsを更新したりすることもできます。それは本当にかなり滑らかです。
エリック