OberonCore https://forum.oberoncore.ru/ |
|
Непрерывная интеграция для BlackBox проектов https://forum.oberoncore.ru/viewtopic.php?f=127&t=5419 |
Страница 1 из 1 |
Автор: | Иван Денисов [ Воскресенье, 24 Май, 2015 11:50 ] |
Заголовок сообщения: | Непрерывная интеграция для BlackBox проектов |
Как многие наверное уже знают, для разработки Блэкбокса в Центре была придумана достаточно удобная схема организации непрерывной интеграции. Так теперь, стоит сделать фиксацию в хранилище в любой из веток, как на сервере запускается процесс сборки Блэкбокса и подготовка файла с его архивом и установочным файлом. Технически система представляет из себя скрипт на языке Питон, связывающий набор вспомогательных приложений, а также подсистему Script, которая позволяет передавать Блэкбоксу файлы через параметры командной строки для исполнения. Так, при фиксации в хранилище, вызывается Hook (скрипт на php), который инициирует обновление хранилища на сервере Центра. Раз в минуту по расписанию Cron запускает скрипт сборки, который проверяет нет ли чего-то нового в локальном хранилище, и если есть, то выполняется вся последовательность процедур сборки проекта. После того, как для Центра данная система была немного обкатана, возникло закономерное желание организовать нечто подобное для своих проектов. То есть я хочу, на базе самой последней сборки Центра собрать свой проект, если в хранилище проекта произошли изменения. Адаптировав скрипт Центра для каждого из проектов, мы получаем желаемое. Пока я организовал автоматическую сборку трех проектов: http://dev.molpit.com/ Один из них полностью открыт, поэтому можно поглядеть как это организовано и что получается. Вот такой скрипт собирает проект: http://molpit.com/pub/diaball/make_py.txt и выкладывает в папки unstable и stable http://molpit.com/pub/diaball |
Автор: | Пётр Кушнир [ Воскресенье, 24 Май, 2015 12:28 ] |
Заголовок сообщения: | Re: Непрерывная интеграция для BlackBox проектов |
Я так понимаю, это основано на использовании установленного в одном и том же месте экземпляра ББ, когда пользовательские файлы лежат в /USE и затереть пользовательские файлы новым билдом нет никакой опасности? |
Автор: | Иван Денисов [ Воскресенье, 24 Май, 2015 12:50 ] |
Заголовок сообщения: | Re: Непрерывная интеграция для BlackBox проектов |
Пётр Кушнир писал(а): Я так понимаю, это основано на использовании установленного в одном и том же месте экземпляра ББ, когда пользовательские файлы лежат в /USE и затереть пользовательские файлы новым билдом нет никакой опасности? При разработке у меня файлы лежат в /USE. Сборщика эти файлы копирует поверх сборки Центра. У пользователя файлы (результаты измерений, настройки и т.п.) виртуализуются виндой, поэтому при обновлении программы они не могут пострадать. Ну, а если пользователь скачивает программу архивом, то уже сам заботится, чтобы файлы перенести. Опыт обновления пока не очень большой. Заставлять пользователя мороковать с /USE - садизм |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |