Это проблема, которая раздражала меня в течение некоторого времени - наконец, хотел написать об этом. Не стесняйтесь бить меня по запястью, если это уже обсуждалось в другом вопросе о суперпользователе.
Прямо сейчас я делаю большую часть своей разработки программного обеспечения на некоторой разновидности Windows (XP, Win7, Win8). Обычно я в конечном итоге настраиваю новую рабочую станцию для себя каждые 6-9 месяцев, будь то на новом ноутбуке или настольном компьютере, на работе или дома (или из-за аппаратного сбоя). Как и следовало ожидать, обычно есть много вещей, которые нужно установить вручную, от IDE до офисных инструментов повышения производительности. Очень много времени, утомительно и непоследовательно определенно нарушает принцип СУХОЙ в моем сознании. Я также предпочел бы держаться подальше от сред виртуальных машин по этому вопросу.
Я ищу предложения о том, как автоматизировать это. Некоторые требования:- Предположим, у меня уже установлена Windows 7 со всеми ее исправлениями и прививками. Также предположим, что я не могу просто клонировать образ жесткого диска. -Я хочу иметь возможность использовать какой-нибудь скрипт-файл для управления тем, что установлено. -Самый файл сценария должен быть просто текстовым файлом (или серией текстовых файлов), что-то, что может быть легко проверено в управлении версиями -Сценарий установки должен быть достаточно умным, чтобы знать, где скачать установщик для данного приложения (своего рода сетевого адреса /URI), я бы хорошо указал, где они жили. -Установка скриптового движка / исполняемого файла на самой рабочей станции не является проблемой. -Выполнение сценария установки может произойти в командной строке. -Единственное, чего я действительно стараюсь избегать, так это установки большого количества дополнительной инфраструктуры для поддержки этого (настройка сетевого диска - это нормально, настройка нескольких дополнительных серверов - нет). -Идеально, это решение было бы относительно портативным, то, что я мог бы использовать дома или на работе. -Решение должно быть недорогим (<100 долларов), если не совсем бесплатным, помимо моего времени на написание сценариев и т.д.
Что-то наивное, это похоже на что-то похожее на создание / проект скриптов (Make, Ant, Maven и т.д.), Скрещенных со скриптами оболочки. Подойдет ли PowerShell для такой задачи? Моей первой мыслью было использовать Puppet / Chef, но я не уверен, насколько они подходят для среды Windows?
Просто ищу мысли, предложения, любые полезные советы.
Благодарю.