Я вижу, что могу запускать и останавливать виртуальную машину с помощью virtualBox, используя VBoxManage. Я не уверен, что это тот инструмент, который мне нужен.
Я пытаюсь написать сценарий, который
Мне известно о существовании веб-сервисов и API, однако я не смог найти в Интернете много информации о пункте 2.
Я был бы очень признателен за руководство по этому поводу. т.е. я должен использовать vboxmanage для запуска и остановки виртуальных машин, а затем запускать установщики каким-либо другим способом? в качестве альтернативы я должен использовать COM API, если да, какие-либо идеи некоторых примеров о том, как выполнить шаг 2?
Совершенно не знаком с VirtualBox. Но я могу писать код.
ОБНОВЛЕНИЕ: я должен смотреть на Vagrant или Puppet? Как вы, наверное, догадались, это набор тестов для установщиков, и было бы здорово иметь возможность использовать его повторно.
Спасибо
Вы можете запустить виртуальную машину с
VBoxManage startvm <vm>
и выключить его с помощью
VBoxManage controlvm <vm> poweroff
Вы можете выполнять команды в гостевой системе, используя
VBoxManage guestcontrol execute ...
это отлично работает для программ командной строки, и вы можете перенаправить вывод на свой хост. Однако я не уверен, насколько хорошо это работает с приложениями с графическим интерфейсом пользователя, такими как обычный установочный пакет Windows MSI. Также немного нечетко сказано о «записи результатов», записывает ли ваш установщик файл журнала, который вы могли бы отправить в общий сетевой ресурс перед выключением виртуальной машины?
Вы также можете сделать снимок виртуальной машины, а затем просмотреть его позже.
Да, можно написать сценарий именно так, как вы описываете. Предположительно это можно сделать из среды хоста Windows, но, по моему опыту, эти возможности полностью работают только в Linux. (Сценарии отлично работают и в OS X, но вы не можете получить аутентификацию RDP, что делает создание сценариев в удаленной системе менее интересным процессом.)
С добавлением некоторых различных вариантов вы также можете удаленно обновлять гостевые дополнения, устанавливать / удалять программное обеспечение, запускать сценарии Powershell и использовать WUInstall для обновления Windows. Это действительно здорово.
Эрик