metaclass: (Default)
[personal profile] metaclass
Сижу клепаю для проекта сборку, деплоймент на тестовые машины и запуск автоматических тестов.
И получается, что если не использовать специализированные CI серверы типа CruiseControl.NET, то самый прямой способ это делать для дотнет-проектов - это MSBuild. Для него есть куча расширений (и можно массово писать свои), он умеет почти все мыслимые вариации на тему конфигурирования билда, интегрирован с проектами Visual Studio (вернее, это проекты студии являются проектами MSBuild). Единственный недостаток - конфигурация в xml и извращения, если нужен императивный код (императивный код на xml, как известно, всегда является уродством).
Но есть смутное ощущение, что я занимаюсь tool abuse и надо втащить CI и его 100501-й язык конфигурирования, тоже как всегда на базе xml.

И хочется, чтобы подобные вещи были написаны на кложуре - потому что более адекватной и прямой интеграции декларативных описаний и императивных алгоритмов для разного рода действий над иерархиями, чем в лиспах, я не встречал. Но в этом проекте только жабы не хватает для полного счастья, да.

Date: 2012-12-04 06:43 pm (UTC)
(deleted comment)

Date: 2012-12-04 08:22 pm (UTC)
From: [identity profile] bydlorus.livejournal.com
> ms team foundation
> очень счастливы

Поделил на 0. Впрочем, "что-то билдить умеет" как бы намекает на нетребовательность юзера.

Date: 2012-12-04 09:56 pm (UTC)
wizzard: (фото)
From: [personal profile] wizzard
таск трекер там и правда хороший. а вот версионник...

Date: 2012-12-05 07:08 am (UTC)
From: [identity profile] bydlorus.livejournal.com
Хороший таск трекер? Для тасков время в одном табе, для дефектов - в другом... один человек может создать дефект с пустым временем, а второй не может его сохранить пока не поставит 0... Ну это мелочи. Хуже, что при наличии сколько-нибудь больших проектов он постоянно отваливается (есть соотв. баг на сайте ms).

Date: 2012-12-04 08:00 pm (UTC)
From: [identity profile] jakobz.livejournal.com
Не в CCNet вроде из коробки nunit и msbuild. Деплоймент если тупо копированием - тоже просто. В простом случае даже сильно конфиги не надо крячить - тупо раскоментировать что нужно и поправить путь к SVN-у.

Date: 2012-12-04 08:27 pm (UTC)
From: [identity profile] bydlorus.livejournal.com
После hudson/jenkins ещё кто-то пользуется CI? Или его таки допили до юзабельного состояния?

msbuild это адский отстой для инопланетных роботов из черепашек-ниндзя ("кренг, те о ком надо говорить черепашки приближаются к месту на которым мы устроили засаду на тех кто называет себя черепашками - понял, кренг, вижу тех кто называется себя черепашками, они приближаются к месту о котором говорил кренг где кренг должен встретить тех о ком надо говорить черепашки"). NAnt был с человеческим лицом, жаль что не шевелится (вроде).

Date: 2012-12-04 10:57 pm (UTC)
From: [identity profile] jakobz.livejournal.com
msbuild может и отстой, но его студия открывает.

Date: 2012-12-05 07:10 am (UTC)
From: [identity profile] bydlorus.livejournal.com
Это типа достоинство? Т.е. формат настолько ужасный, что более-менее работать с ним можно только с помощью студии.. но это достоинство.

Code-only MS так и не осилили.

Date: 2012-12-05 07:53 am (UTC)
From: [identity profile] metaclass.livejournal.com
Формат ужасный, студия ужасна, но если не пользоваться MSBuild - все становится еще хуже, потому что приходится руками повторять все то, что умеет MSBuild.

Date: 2012-12-05 07:56 am (UTC)
From: [identity profile] bydlorus.livejournal.com
Короче среди слепых и одноглазый - король. Я забыл эту житейскую мудрость :-)

Date: 2012-12-05 05:01 pm (UTC)
From: [identity profile] nivanych.livejournal.com
Ну ви прямо как тактичный и вежливый theяced!

Date: 2012-12-05 07:58 am (UTC)
From: [identity profile] jakobz.livejournal.com
Можно использовать другое, но для студии-то все равно нужно будет писать msbuild-файлы.

Date: 2012-12-04 08:45 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
из засад, которые там помню, пробелы в именах папок и последовательность сбора проектов

Date: 2012-12-04 09:20 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Там надо выключать многопоточный билд, если не выстроены зависимости между проектами (хер знает как их выстроить).

Date: 2012-12-04 09:59 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
DependsOnTargets же

Date: 2012-12-04 09:14 pm (UTC)
From: [identity profile] evil-invader.livejournal.com
Ant скрипты умеет на всяких языках. Может NAnt у вас тоже должен уметь?

Date: 2012-12-04 09:21 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Я побаловался с NAnt - MSBuild более удобно оказалось. Тупо из-за того что студийные проекты совместимы с MSBuild.
Edited Date: 2012-12-04 09:21 pm (UTC)

Date: 2012-12-05 08:49 am (UTC)
From: [identity profile] migmit.livejournal.com
Я как-то раз отлаживал этот MSBuild. Причём именно императивный xml. Причём не кастомный, а мелкософтовский.

Нашёл багу. Какую - не помню.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 12th, 2025 12:49 am
Powered by Dreamwidth Studios