Вход:  Пароль:  
FreeSource: korinf ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |
Это старая версия korinf за 2009-07-05 22:10:20..

Korinf

Описание

Коринф – система сборки пакетов под различные целевые системы на основе единого src.rpm, выполненного согласно правилам ALT Linux.
Название Korinf (Коринф) предложено Алексеем Новодворским. Как известно, Сизиф был царём Коринфа.


Проект развивается из системы сборки, применяемой в Etersoft для сборки бинарных пакетов WINE@Etersoft, haspd, Postgre SQL?, freenx и прочего.


Система готова к самостоятельному использованию. В простейшем случае она может быть использована установленной из пакета. В случаях, требующих модификации системы сборки, для разработки, в соседние каталоги разворачиваются git-репозитории etersoft-build-utils и korinf.
По вопросам и проблемам можно обращаться в support@etersoft.ru.

Применение

Единый исходник

Исходной единицей, отправляемой на сборку, является src.rpm со спеком, написанным согласно принятым в ALT Linux правилам.
Спек желательно иметь идеальный (вычитанный согласно новейшим представлениям о его красоте).


Поддерживаемые целевые основные системы:

Процесс сборки

Коринф выполняет организационную работу по передаче задания на сборку пакета и публикацию результата.
Сначала rpm-спек преобразуется из спека для ALT Linux с помощью команды rpmbph (из etersoft-build-utils), далее выполняется его сборка в целевой системе, где задействуется пакет rpm-build-altlinux-compat (обеспечивающий совместимость спека по макросам с целевой системой).
Сборка происходит на сборочной машине в chroot'е целевой системы под специальным пользователем, либо в удалённой системе, доступной через ssh.
Для не rpm-систем после сборки производится конвертирование пакета с помощью alien (в deb или tgz) или отдельным скриптом.
Результат сборки публикуется (копируется в указанный каталог).
Успешность сборки контролируется, но в любом случае протокол сборки также публикуется.

Дополнительно


Для систем, в которые невозможно преобразование из rpm (Free BSD, Gentoo, Solaris), могут быть написаны собственные правила сборки (портежи и ебилды).

Разрабатывается конвертор в портежи и ебилды.

Что нужно

Как развернуть сборочную среду

Подобные системы

Сборочные фермы


“Personal Package Archives” полностью интегрируется в другой бесплатный сервис Launchpad, и дает каждому своему пользователю 1 Gb дискового пространства для загрузки любого программного обеспечения. “Personal Package Archives” автоматически скомпилирует его, и сделает deb пакет для Ubuntu Linux.
Плюс, в “Personal Package Archives” доступен сервис оповещения о ошибках (bug reporting) и локализированное програмное обеспечение через веб-интерфейс.

Использование


В настоящий момент Korinf развёрнут на сборочных серверах Etersoft. Инструкция по использованию для тех, у кого есть логин:

Дистрибутив/версия – в стиле ALTLinux/4.0 или SUSE/10.3
-r – вход под root, а не под пользователем


Для сборки пакета нужно выполнить скрипт из каталога bin-wine:


Без указания параметров будут собраны пакеты под все системы.
Чтобы проверить текущее состояние собранности:


Для установки недостающих по зависимостям пакетов:


Переписать, устарело:
Вспомогательные скрипты Korinf работают следующим образом:
Из скрипта build-%{пакет} вызывается функция build_rpm, описанная в ./functions/helpers.sh, которая запускает скрипт functions/autobuild-functions.sh. В нем используется функция build_in_dist, описанная в build-main.sh. Эта функция позволяет собирать пакеты для Free BSD (с помощью скрипта build-freebsd.sh), Open Solaris? (build-solaris.sh), Gentoo (build-gentoo.sh) (для этих систем сборка происходит на отдельных машинах), ALTLinux (./functions/build-hasher.sh) и других дистрибутивов (build_rpms из ./functions/build-rpm.sh) (для deb дистрибутивов производится конвертирование из rpm с помощью функции convert_rpm; с ее же помощью происходит конвертирование в tgz и tar.gz). Для 2 последних случаев монтируется файловая система соответствующего дистрибутива (системы указываются в переменной REBUILDLIST скрипта build-%{пакет}) (с помощью mount-linux из ./functions/mount.sh). Сборка для Linux при этом происходит в чруте в подмонтированной файловой системе с помощью средств из пакета etersoft-build-utils: rpmbb и rpmbph.


С результатом сборки можно ознакомиться в $TMPDIR/korinf-log/Система/Версия/Пакет.log, а также в соответствующем каталоге на ftp-сервере.

Планы

Дополнительно


Страницы, ссылающиеся на данную: AltLinux/Sisyphus/devel/situation


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]