OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 22 Октябрь, 2017 22:14

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
СообщениеДобавлено: Воскресенье, 24 Май, 2015 11:50 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 1922
Откуда: Красноярск
Как многие наверное уже знают, для разработки Блэкбокса в Центре была придумана достаточно удобная схема организации непрерывной интеграции. Так теперь, стоит сделать фиксацию в хранилище в любой из веток, как на сервере запускается процесс сборки Блэкбокса и подготовка файла с его архивом и установочным файлом. Технически система представляет из себя скрипт на языке Питон, связывающий набор вспомогательных приложений, а также подсистему 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 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2401
Откуда: Россия, Ярославль
Я так понимаю, это основано на использовании установленного в одном и том же месте экземпляра ББ, когда пользовательские файлы лежат в /USE и затереть пользовательские файлы новым билдом нет никакой опасности?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 24 Май, 2015 12:50 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 1922
Откуда: Красноярск
Пётр Кушнир писал(а):
Я так понимаю, это основано на использовании установленного в одном и том же месте экземпляра ББ, когда пользовательские файлы лежат в /USE и затереть пользовательские файлы новым билдом нет никакой опасности?

При разработке у меня файлы лежат в /USE. Сборщика эти файлы копирует поверх сборки Центра.
У пользователя файлы (результаты измерений, настройки и т.п.) виртуализуются виндой, поэтому при обновлении программы они не могут пострадать. Ну, а если пользователь скачивает программу архивом, то уже сам заботится, чтобы файлы перенести. Опыт обновления пока не очень большой.
Заставлять пользователя мороковать с /USE ­- садизм :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2017, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB