Выпуск системы сборки пакетов Open Build Service 2.7
После почти полутора лет разработки подготовлен релиз платформы Open Build Service 2.7, которая позволяет организовать процесс разработки дистрибутивов и программных продуктов, включая подготовку и сопровождение релизов и обновлений. Система даёт возможность выполнить кросс-компиляцию пакетов для большинства основных дистрибутивов Linux или собрать собственный дистрибутив на основе заданной пакетной базы.
Поддерживается сборка для 22 целевых платформ (дистрибутивов) и 6 архитектур, в том числе для архитектур i386, x86_64 и ARM. Среди поддерживаемых дистрибутивов: CentOS, Debian, Fedora, Mandriva, openSUSE, SUSE Enterprise Linux, Red Hat Enterprise Linux (RHEL) и Ubuntu. OBS используется в качестве первичной системы для сборки проектов openSUSE, Tizen, Sailfish, Mer, ownCloud и VideoLAN, а также для сборки Linux-продуктов в компаниях Dell, Cray и Intel.
Для сборки свежей версии заданной программы в виде бинарного пакета под нужную систему достаточно создать spec-файл или подключить репозиторий пакетов, представленный на сайте software.opensuse.org. Кроме того, можно сформировать готовое минималистичное окружение для выполнения в системах виртуализации, cloud-окружениях или для загрузки в виде Live-дистрибутива. При работе с OBS разработчик может использовать готовый online-сервис build.opensuse.org или установить подобную систему на своём сервере. Кроме того, можно быстро развернуть собственную инфраструктуру при помощи специально подготовленных образов для виртуальных машин, локальной установки или для PXE-загрузки по сети.
OBS даёт возможность автоматизировать загрузку исходных текстов из внешних Git или Subversion репозиториев или архивов с кодом с ftp- и web-серверов первичных проектов, что позволяет избавиться от промежуточной ручной загрузки архивов с кодом на локальную машину разработчика и последующего импорта в openSUSE Build Service. Сопровождающим пакеты предоставляются средства для определения зависимостей от других пакетов с автоматической пересборкой данных зависимостей при внесении в них изменений. При добавлении патчей имеется возможность их тестирования с аналогичными пакетами от других проектов.
Для управления Open Build Service можно использовать как инструментарий для командной строки, так и web-интерфейс. Имеются средства для подключения сторонних клиентов и использования ресурсов с внешних сервисов, таких как SourceForge и kde-apps.org. Разработчикам доступны инструменты для создания групп и организации совместной работы. Код всех компонентов системы, включая web-интерфейс, систему тестирования пакетов и сборочные бэкенды, полностью открыт под лицензией GPLv2.
Среди улучшений, добавленных в Open Build Service 2.7:
- Реализована система автоматического отслеживания перемещения репозиториев экспериментальных веток (таких как Fedora Rawhide), обновлений дистрибутивов и новых rolling-выпусков (таких как Arch Linux);
- В средствах интеграции с Git добавлена поддержка работы с непрерывными сборками;
- Экспериментальная поддержка импорта архивов (kiwi.txz), подготовленных при помощи построителя образов KIWI. Указанную возможность, например, можно использовать для упрощения миграции образов из SUSE Studio;
- В бэкенде OBS добавлена поддержка формата simpleimage, что дало возможность создавать простые образы rootfs и squashfs. Также добавлена поддержка формата collax (вариант пакетов deb).
- Возможность использования сервисов обработки кода (Source services), которые вызываются в процессе сборки на этапе до запуска инструмента сборки пакета (rpm-build) и могут применяться для создания дополнительных архивов;
- Во фронтэнде OBS добавлена возможность принудительного удаления проектов, которые являются зависимостями для других проектов. Реализована поддержка подключения внешних репозиториев. Возможность ограничения замещающих запросов (supersede) для того же проекта и определения допустимых замещающих запросов. Поддержка разблокировки проектов.