Егермайстер
Хотел нажраться сабжем, в честь того, что таки довел до ума автоматическое тестирование распределенной опердени с репликациями, очередями расчетов, фоновыми сервисами, складывающими данные с датчиков в базу и прочей чернью.
Но недавно читал про корень солодки, оно же лакрица, являющаяся компонентом этого ликера - особенность настоек лакрицы в том, что они повышают давление, а с гипотензивными препаратами вообще нихрена не совместимы.
Придется видимо или жрать бехеровку, в которой лакрицы нет, или хеннеси или вообще ограничиться пивом.
Но недавно читал про корень солодки, оно же лакрица, являющаяся компонентом этого ликера - особенность настоек лакрицы в том, что они повышают давление, а с гипотензивными препаратами вообще нихрена не совместимы.
Придется видимо или жрать бехеровку, в которой лакрицы нет, или хеннеси или вообще ограничиться пивом.
no subject
1)собирает весь проект со всеми потрохами,
2) раскладывает результаты сборки по тестовым виртуальным машинам,
3) подключается к ним с помощью psexec, там распаковывает инсталляторы, выполняет их (тоже MSBuild скрипт - инсталляция БД, сервисов, создание ярлыков на утилиты, прописывание исключений в файрволлы, инициализация тестовых данных по заданной конфигурации) и проверяет одноразово работоспособность фоновых процессов, а затем запускает их автоматически в виде сервисов.
затем по результату CCNet отчитывается мне по почте о результатах.
no subject
msbuild имеет крайне поганую операционную семантику, из-за чего нормальные методы работы с ним не применимы, но зато он есть в гопнетах, интегрирован с ОС и легко расширяется всякой самодельной пакостью на C#.
no subject
Вообще говоря, от билд-системы требуется следующее:
1) Проверять нужно ли билдить файл, может он не изменился с прошлого раза. Мне не критично - я все результаты билда грохаю перед каждым тестом, чтобы все было начисто.
2) Уметь вызывать системные программы
3) Содержать стандартный набор операций - сборка и копирование файлов
4) Уметь таскать между операциями переменные (например, дефайны для билда или описания конфигурации тестирования)
4) сдыхать и возвращаться, когда вызванная подзадача вернула ошибку (то бишь семантика монады Maybe/Option или исключения). Это собственно то, ради чего я это все втащил - мне нужно видеть когда и где оно сломается.
5) позволять расширение на привычных языках, без крестиков-сишных интерфейсов-FFI и прочей черни.
PS: вот что еще забыл: крайне не хватает возможности прозрачно запустить билд на другой машине и получить оттуда результат. Приходится делать это через psexec, а с ним имеются заморочки, т.к. он выполняет программы удаленно с помощью оккультного сервиса и там не всегда все работает, без вуду механизмов.
no subject
no subject