Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч. / 25 сообщений из 48, страница 1 из 2
22.07.2015, 00:13:56
    #39012855
debose
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Кто-нибудь из обитателей форума использует автоматизированные сборки (да, запуск .bat-ника - это тоже оно)?

Или хотя бы про сборку под разные версии Delphi.
Расскажите про свой опыт, используемые инструменты (какой билд-сервер, на чём тесты, кто отчёты анализирует, есть ли сбор каких-либо метрик, code coverage, как обрабатываются отчёты, как давно это работает).
...
Рейтинг: 0 / 0
22.07.2015, 08:55:46
    #39012960
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
deboseКто-нибудь из обитателей форума использует автоматизированные сборки (да, запуск .bat-ника - это тоже оно)?
Это ж касается только тех, кто пилит что-то для самих разработчиков. Таких тут вроде не так уж и много...
Можно на пальце одной руки пересчитать.
...
Рейтинг: 0 / 0
22.07.2015, 09:30:58
    #39012992
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Вместо батников использую Apache Ant для автоматической сборки продуктов в продакшен. Но запуск вручную (без билд-сервера) и без тестов.

Ant -- тот еще фрукт, много подводных камней и нюансов работы, громозкий xml-синтаксис. Прямо привет из нулевых.
...
Рейтинг: 0 / 0
22.07.2015, 09:39:20
    #39013005
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
debose,

Набор батников. Батники генерируют (слишком громко сказано - тупой вывод строк в файл) DPK под нужную версию. Потом - запуск DCC32 из установленных. Самая младшая версия - D6. Ну и большой INCLUDE файл с директивами.
...
Рейтинг: 0 / 0
22.07.2015, 09:43:03
    #39013009
delphinotes
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
debose,

У нас есть сервер сборки.
Сборки запускаются автоматически:
а) при коммите - чисто чтобы проверить, не забыл ли программист чего закомитить в SCM. В случае ошибки сборки - сразу генерируется письмо, мол build failed;
б) ночные сборки, которые выкладываются на фтп и доступны для скачивания пользователям.

Все предупреждения компилятора, хинты, метрики и прочее - остаются на совести программистов (у нас их не так уж и много, пока не доросли до автоматизации этого)

...
Рейтинг: 0 / 0
22.07.2015, 09:45:45
    #39013013
Glays
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
wadmanМожно на пальце одной руки пересчитать.
На пальцах одного токаря.
gunsmoker, asviridenkov, Dmitry Arefiev, может ещё кто.

Я пользуюсь TeamCity, но только для базы данных. Из тестов только собралось/не собралось.

Для дельфи хотел как-то в TFS разобраться с BuildServer, но времени нет, тем более для этого нужно гонять админов крутить что-то на самом сервере.
...
Рейтинг: 0 / 0
22.07.2015, 09:51:18
    #39013020
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
delphinotes,

Кстати, вопрос не в тему - у вас GExperts совместно с CnPack нормально живут?
...
Рейтинг: 0 / 0
22.07.2015, 10:50:08
    #39013120
delphinotes
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
DarkMaster,

Конфликты были, но я потом в CNPack почти всё по отключал. Сейчас использую:
-Bookmark Browser
-Project Extension
-Procedure List (это он включает тулбар в редакторе, но я пользуюсь лишь кнопками Jump to interface/implementation)
-IDE Enhancements Settings
-Source Higlight Enhancements (и то в нём только одна галка - Enable Bk Higlight Keyword Structure at Cursor, остальное заметно на глаз как подтормаживает)
-Editor Enhancements (тоже не всё)
-Constraints Editor

Из GExperts активно пользуюсь:
-Ctrl+Alt+Up/Down
-Grep Search/Replace
Ещё он разрешает изменять размеры модальных окон среды (их размер до какой-то версии фиксирован, в Delphi Xe7 это уже не актуально).

..
Были мысли создать свой персональный набор расширений (с использованием Delphi AST)
...
Рейтинг: 0 / 0
22.07.2015, 11:30:53
    #39013174
schi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Используем. Без метрик и прочей высоколобой суеты. Из отчетов - сообщения об ошибках сборки.
...
Рейтинг: 0 / 0
22.07.2015, 16:09:21
    #39013560
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Вот совсем свежая статья о том, как в RemObjects организовали автоматическую сборку всех своих продуктов с нуля на виртуальных машинах амазона (в т.ч. и делфи). Так сказать, пример серьезного подхода: About our Build System Infrastructure, CI2
...
Рейтинг: 0 / 0
22.07.2015, 17:41:33
    #39013766
debose
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
delphinotesdebose,

У нас есть сервер сборки.
Сборки запускаются автоматически:
а) при коммите - чисто чтобы проверить, не забыл ли программист чего закомитить в SCM. В случае ошибки сборки - сразу генерируется письмо, мол build failed;

Все предупреждения компилятора, хинты, метрики и прочее - остаются на совести программистов (у нас их не так уж и много, пока не доросли до автоматизации этого)

Интересно, спасибо.
Я так понимаю, что батник использует msbuild для сборки. А msbuild конфиги (.dproj) там те же самые что и у разработчиков, или какие-то отдельные профили настроены?
А сервер сборки - это какой-нибудь jenkins, teamcity, hook на системе контроля версий, что-то еще?
...
Рейтинг: 0 / 0
22.07.2015, 17:45:06
    #39013775
debose
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
DarkMasterdelphinotes,

Кстати, вопрос не в тему - у вас GExperts совместно с CnPack нормально живут?
У меня нормально. Еще и DdevExtensions и MMX. На D6 и D2010, и XE. Много лет уже.
В CnPacks отключил плагин с оптимизациями. Ну и на D2010 иногда с CnPack-овским автокомплит (Alt+вниз) не запускается.
Ну и кое-где пришлось горячие клавиши под себя настроить (пересекаются).
...
Рейтинг: 0 / 0
22.07.2015, 20:47:30
    #39013945
delphinotes
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
deboseЯ так понимаю, что батник использует msbuild для сборки.
Именно его. Дёргается как-то так:
Код: powershell
1.
"%MSB%" %DPROJ% /nologo /p:Config=%Config% || goto error



deboseА msbuild конфиги (.dproj) там те же самые что и у разработчиков, или какие-то отдельные профили настроены?
Я специально настраивал всё так, чтобы на машине у разработчика можно было собирать релизные сборки.
В Delphi7 (и ниже) - да, там была маята, там переключение между конфигами было через одно место (был отдельный батник, который формировал dcc32.cfg и вызывался dcc32.exe напрямую).
В Delphi2010 - очень удобно в msbuild передать dproj и config.
Конфигов у нас несколько:
- Release, именно он используется в серверной сборке и в него компануется EurekaLog
- Debug, в основном он используется программистами
- Debug With Memory Leak Logging (обычный + FullDebugMode в FastMM)
- и ещё один для внутренних целей.
И все они гибко настраиваются через option set'ы - фишка классная, но IDE их иногда (при правке из IDE) портит.

deboseА сервер сборки - это какой-нибудь jenkins, teamcity, hook на системе контроля версий, что-то еще?
Координатором сборок у нас используется hudson , сборка Delphi-приложений - на виндовой тачке (раньше была реальная, сейчас - виртуальная).
...
Рейтинг: 0 / 0
22.07.2015, 20:56:31
    #39013949
delphinotes
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
delphinotesсборка Delphi-приложений - на виндовой тачке (раньше была реальная, сейчас - виртуальная).
Хотел написать, что на виндовой тачке установлена "голая" Delphi, и всё. Все исходники, в т.ч. сторонние компоненты - есть в SCM, для сборки приложений нет необходимости их устанавливать (и постоянно переустанавливать при обновлении) в среду. Также пути дополнительно прописывать не надо - все необходимые пути прописаны в двух местах:
-пути к сторонним библиотекам/компонентам задаются доп. батником как переменная среды окружения
-пути к нашим библиотекам - задаются в .opset-файлах и .dproj-файлах (как относительные пути от каталога проекта)
...
Рейтинг: 0 / 0
22.07.2015, 23:44:19
    #39014042
Michael Longneck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
FinalBuilder'ом собираю. Там всё - выгрузка из svn, сборка, генерация лицензий, информации о версии, локализационной dll и электронной подписи, сборка инсталлятора. Т.е. полный пакет. Собираются "официальные версии", любые сборки у девелоперов - отладочные. Данные по клиенту и доступным лицензиям автоматом грузятся из redmine, генерится в процессе сборки файл с define'ами. Менеджеры сами заводят клиентов, сами список купленных фич и рабочих станций ставят, а скрипт собирает. Надо только выбрать клиента и релиз. Запускают сборку не программисты.
...
Рейтинг: 0 / 0
22.07.2015, 23:54:10
    #39014047
debose
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Michael Longneck, очень толково.
FInalBuilder - полная версия используется? Сборка только для одной версии Delphi?

А автоматом при коммите ничего нигде не собирается чтобы проверить не поломалось ли чего этим коммитом?
...
Рейтинг: 0 / 0
23.07.2015, 00:01:30
    #39014049
Michael Longneck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Сейчас для двух, но мы поддерживаем релизы (ежемесячные) только полгода, а версию дельфей меняем не чаще раза в год( на деле реже). Автоматом не собирается - смысла нет. Проект собирается 30 сек, каждый сам себе может собрать. Коммиты обычно короткие, только я как архитект быает по полпроекта коммичу. Тестов нет. Тему с анализатором прорабатываю, но код там такой что и без анализатора есть что разгребать.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
02.12.2017, 13:03:27
    #39562966
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Может, кому пригодится

Continuous integration with SVN, Jenkins and DUnit (Delphi) with Craig Chapman - CodeRage XI
YouTube Video
...
Рейтинг: 0 / 0
02.12.2017, 16:37:55
    #39563033
под ван
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Уже 2017-й заканчивается, а Embarcadero Technologies до сих пор в 1080p не научилась скрикасты писать, стыдоба позорная :(
...
Рейтинг: 0 / 0
04.12.2017, 11:13:36
    #39563539
Василий №2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Уже 2017-й заканчивается, а кто-то все еще юзает SVN ))
...
Рейтинг: 0 / 0
04.12.2017, 11:47:09
    #39563567
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Василий №2, а что правильно было бы юзать?
...
Рейтинг: 0 / 0
04.12.2017, 12:45:03
    #39563619
schi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Василий №2Уже 2017-й заканчивается, а кто-то все еще юзает SVN ))

Я CVS использую и не жужжу.
...
Рейтинг: 0 / 0
04.12.2017, 13:06:49
    #39563636
bk0010
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Файловую систему с папками, содержащими версии проектов, очевидно.
...
Рейтинг: 0 / 0
04.12.2017, 17:48:11
    #39563944
Василий №2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
X11, git, mercurial... вопрос вкусовщины/холиварный, но после гита свн мне лично кажется очень неуклюжим.
schi, соболезную... хотя всегда ведь должны быть мыши-кактусофаги
...
Рейтинг: 0 / 0
04.12.2017, 18:09:15
    #39563970
Kazantsev Alexey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч.
Василий №2,

А есть в гите аналог свн'овских внешних реп?
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Сборка проектов с прогоном тестов, статическим анализом, сбором метрик и проч. / 25 сообщений из 48, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]