Что такое Sisyphus?

Материал из ALT Linux Wiki
Версия от 16:02, 28 июля 2008; MichaelBochkaryov (обсуждение | вклад) (Import from freesource.info)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Freesource-logo.png Blue Glass Arrow.svg MediaWiki logo.png
Эта страница была перемещена с freesource.info.
Эта страница наверняка требует чистки и улучшения — смело правьте разметку и ссылки.
Просьба по окончанию убрать этот шаблон со страницы.


Что такое Sisyphus?


Введение

Sisyphus (Сизиф) -- это разрабатываемый ALT Linux Team проект, целью которого является развитие репозитория свободного ПО для удобной разработки на его основе дистрибутивов и других решений.

Проект Sisyphus включает следующие компоненты:

  • собственно репозиторий ПО (rpm- и src.rpm-пакеты);
  • инструментарий для подготовки и тестирования программных пакетов (hasher, gear, git; sisyphus_check, qa-robot, repocop; etc);
  • инструментарий обеспечения целостности репозитория (apt);
  • инструментарий для разработки конечных решений и, в частности, дистрибутивов (spt, mkimage).

В настоящий момент Sisyphus доступен для архитектур x86 и x86_64, но ведется работа по портированию на другие платформы (ARM, PPC).

Назначение Sisyphus

Sisyphus прежде всего предназначен для использования в качестве основы для разработки продуктов/решений для конечных пользователей:

  • Разработка дистрибутивов общего назначения (например, ALT Linux Server, ALT Linux Desktop);
  • Разработка специализированных дистрибутивов (OEM решения, ALTSP, SeirosPBX и другие);
  • Разработка дополнений к существующим дистрибутивам;
  • Разработка решений для использования на виртуальных машинах (например, шаблоны OpenVZ).

Пожалуй, самым распространенным вариантом на сегодня является создание компанией "Альт Линукс" линейки дистрибутивов ALT Linux.

Чем не является Sisyphus

Достаточно важно понимать, чем Sisyphus точно не является, чтобы по ошибке не создать себе больших проблем.

  • Sisyphus не является самостоятельным дистрибутивом.
  • Sisyphus не является обновлениями для дистрибутивов. Для этого есть официальные updates.
  • Sisyphus не является дополнением к дистрибутивам. Для этого есть backports.
  • Sisyphus не является стабильным решением для применения в mission critical задачах. Для этого есть дистрибутивы.

Кому и зачем нужен Sisyphus

Косвенные варианты пока не рассматриваем, но они тоже есть.

Разработчикам решений на базе Linux

Sisyphus можно использовать в качестве основы для создания собственных решений -- репозиториев, дистрибутивов и т.д.

Используя Sisyphus, разработчик получает в свое распоряжение большую базу подготовленных и в достаточной мере протестированных пакетов и набор полезных инструментов (hasher, gear, mkimage, etc), существенно сокращающих время на создание готового решения.

Достаточно логичным вариантом оказывается участие таких разработчиков в ALT Linux Team, что позволяет более активно влиять на направление развития проекта Sisyphus и, как следствие, получающихся на его основе продуктов. Таким образом можно существенно сократить затраты (временные, финансовые, человеческие) на создание конечного решения.

Продвинутым пользователям

Если пользователь не входит в Team, то ему Sisyphus может быть полезен в следующих случаях:

  • Можно взять отдельные пакеты, которые отсутствуют или устарели в дистрибутиве. Только сперва рекомендуется хорошо подумать, потом проверить отсутствие в backports, а уж потом брать (и то обычно лучше src.rpm, каковой и бэкпортить сборкой в бинарном окружении целевого дистрибутива).
  • Можно почувствовать себя "в струе", на своей шкуре ощущая, как развивается свободный софт и какие новшества (включая грабли) светят в ближайших релизах :-)

Зачем участвовать в работе над Sisyphus

Участие в разработке Sisyphus дает возможность непосредственно влиять на вектор развития проекта и производных от него решений. Как следствие, возможность получить более качественный продукт и/или снизить затраты на разработку своих решений. Например, можно опубликовать сборку необходимого пакета и получить в ближайшем стабильном дистрибутиве этот пакет "из коробки".

Как разрабатывается Sisyphus

Кратко о технологиях и полиси, ссылки на документацию, etc
Подраздел в разработке

Основные инстументы для подготовки пакетов

  • rpm
  • hasher
  • git
  • gear
  • apt (apt-rpm)
  • sisyphus_check
  • repocop - платформа для запуска интеграционных тестов над пакетами
  • qa-robot
  • spt
  • mkimage

Нормативные документы (полиси)

Чтобы обеспечить некоторую упорядоченность в развитии проекта, существует ряд соглашений, регламентирующих различные (чаще технологические) аспекты разработки.

Как присоединиться к разработке Sisyphus

Для присоединения к разработке Sisyphus достаточно пройти процедуру вступления в ALT Linux Team.

Процедура состоит из идентификации кандидата -- регистрации GPG и ssh-ключей -- и проверки уровня технической подготовки -- тестового задания, обычно состоящего из сборки пакета по правилам Sisyphus.

Тестовое задание может варьироваться для разных кандидатов: желающих заниматься преимущественно поддержанием пакетов в репозитории, документированием, дизайном, тестированием и т.д.

Взаимосвязь Сизифа с другими сущностями

Т.к. Sisyphus является не сферическим конем в вакууме, а прежде всего инструментарием, то должны быть связи между ним, его потребителями и конечными продуктами/решениями.

Sisyphus и ALT Linux Team

Разработкой проекта Sisyphus занимается независимая команда ALT Linux Team. Sisyphus является главным продуктом, создаваемым командой.

Sisyphus и компания "Альт Линукс"

Разработка Sisyphus происходит при заметной поддержке (технической, организационной и т.д.) со стороны компании "Альт Линукс". Собственно, большая часть сотрудников компании также является участниками ALT Linux Team и занимается разработкой Sisyphus.

Sisyphus и дистрибутивы ALT Linux

Компания "Альт Линукс", среди прочего, выпускает дистрибутивы Linux, которые создаются на основе Sisyphus.

Процесс превращения нестабильного Сизифа в стабильный дистрибутив приблизительно описывается такой схемой:

Постоянно меняющийся Sisyphus => стабилизация Sisyphus => создание стабильной ветки => готовый дистрибутив (или линейка)

Решения других разработчиков

На базе Sisyphus построено некоторое количество публично доступных решений:

  • Дистрибутив для терминальных серверов ALTSP;
  • Решение для IP-АТС -- SeirosPBX;
  • Прошивка для маршрутизаторов -- RAD Linux;
  • наверняка есть еще, но не в курсе.

Примечания