Incoming/справочник: различия между версиями
Нет описания правки |
(Описал выкладывание) |
||
Строка 22: | Строка 22: | ||
== Выкладывание пакетов == | == Выкладывание пакетов == | ||
В incoming имеется несколько директорий, выложенные в которые пакеты будут забраны скриптами, обработаны, проверены и выложены в репозиторий. | |||
;/incoming/Sisyphus | |||
: Пакеты для Sisyphus | |||
;/incoming/Daedalus | |||
: Пакеты для Daedalus | |||
;/incoming/updates/X.Y | |||
: Пакеты для updates соответствующей ветки | |||
;/incoming/backports/X.Y | |||
: Пакеты для [[Backports]] соответствующей ветки | |||
Для отправки пакета в <tt>incoming</tt> достаточно переложить его rsync'ом в соответствующую директорию: | |||
$ rsync blah-0.0-alt0.src.rpm incoming:/incoming/Sisyphus/ | |||
$ | |||
Пакеты, отправляемые в Sisyphus, Daedalus и updates проходят пересборку в [[hasher]] и проверку с помощью [[sisyphus_check]]. В случае ошибок сборки или проверки пакет отвергается. | |||
Об удачных/неудачных попытках отправки пакета сообщается отправившим по почте, а также в рассылку [https://lists.altlinux.org/mailman/listinfo/sisyphus-cybertalk sisyphus-cybertalk@] (для Sisyphus и Daedalus) или [https://lists.altlinux.org/mailman/listinfo/updates-cybertalk updates-cybertalk@] (для updates). | |||
Пакеты, отправляемые в Backports, проверяются и пересобираются вручную поддерживающим Backports. | |||
== ACL == | == ACL == |
Версия от 00:25, 15 августа 2008
incoming — это сервер Sisyphus, выполняющий несколько функций:
- Приём пакетов для последующего помещения их в репозитории (Sisyphus, Daedalus, backports, updates)
- Управление ACL пакетов
- Обновление SSH и PGP-ключей майнтайнеров
Доступ к incoming
incoming доступен по rsync через SSH. Доступ выдаётся при принятии в ALT Linux Team.
Адрес incoming — devel.altlinux.org. Аккаунт для доступа — in_USERNAME, где USERNAME — имя, присвоенное в процессе принятия в Team, с символами «-» заменёнными на «_».
Пример ~/.ssh/config[1]:
Host incoming Hostname devel.altlinux.org User in_USERNAME
Для работы из-за прокси и в других сложных условиях SSH на incoming также доступен по адресу devel.altlinux.org:443.
Выкладывание пакетов
В incoming имеется несколько директорий, выложенные в которые пакеты будут забраны скриптами, обработаны, проверены и выложены в репозиторий.
- /incoming/Sisyphus
- Пакеты для Sisyphus
- /incoming/Daedalus
- Пакеты для Daedalus
- /incoming/updates/X.Y
- Пакеты для updates соответствующей ветки
- /incoming/backports/X.Y
- Пакеты для Backports соответствующей ветки
Для отправки пакета в incoming достаточно переложить его rsync'ом в соответствующую директорию:
$ rsync blah-0.0-alt0.src.rpm incoming:/incoming/Sisyphus/ $
Пакеты, отправляемые в Sisyphus, Daedalus и updates проходят пересборку в hasher и проверку с помощью sisyphus_check. В случае ошибок сборки или проверки пакет отвергается.
Об удачных/неудачных попытках отправки пакета сообщается отправившим по почте, а также в рассылку sisyphus-cybertalk@ (для Sisyphus и Daedalus) или updates-cybertalk@ (для updates).
Пакеты, отправляемые в Backports, проверяются и пересобираются вручную поддерживающим Backports.
ACL
С каждым пакетом в Сизифе связан ACL - список пользователей, которые могут залить пакет в Incoming и список пользователей, которые могут залить пакет как NMU.
Текущие списки ACL размещаются по адресу http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/files/list/:
- list.src.classic
- Список пользователей, которым разрешена нормальная заливка каждого из пакетов
- list.nmu
- Список пользователей, которым разрешён NMU на заливку указанных пакетов и unixtime, когда было выдано разрешение
По умолчанию (после первого прохождения Incoming свежесобранным пакетом) ACL устанавливается в "разрешено только майнтайнеру".
Первый пользователь в списке list.src.classic являетя лидером пакета и может менять его ACL. Кроме того, этот человек назначается ответственным за ошибки в Bugzilla для этого пакета.
Кроме пользователей в списке могут быть группы.
Группы
Группа - это набор пользователей, обычно вместе работающих над сборкой пакетов и поэтому для краткости обозначаемых в ACL одним словом. Названия групп начинаются с символа @.
Текущий список групп размещается по адресу http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/files/list/groups.
Создаются группы вручную, с помощью отправки письма на incoming и указания названия группы и перечисления начального состава группы.
Изменяется состав группы её лидером - первым в списке членов группы.
@nobody
@nobody - специальная группа. После удаления всех пользователей из ACL пакета, пакет помечается как принадлежащий @nobody. Любой пользователь может залить пакет, принадлежащий @nobody - при этом пакет становится принадлежащим этому пользователю.
@everybody
@everybody - специальная группа. После добавления этой группы в ACL пакета, с пакета снимаются ограничения на заливку и на NMU. Принадлежность пакета при таких заливках не меняется.
Изменение ACL
Управление ACL пакетов и составом групп производится при помощи размещения файлов "записок" в Incoming. Это средство применяется для передачи майнтейнерства или расширения доступа, выдачи NMU или объявления пакета неподдерживаемым. Не осуществляемые с помощью этого автомата действия - это создание/уничтожение группы и перенос пакетов в obsolete и orphaned, для их совершения надо писать письма на incoming.
"Записки" лежат в Incoming в директории /incoming/notes/Sisyphus/. Каждая записка - это файл с именем майнтайнера.
Для помещения своей записки в incoming достаточно
rsync --inplace[2] USERNAME incoming:/incoming/notes/Sisyphus/
Записки обрабатываются раз в час, поэтому быстро переписывать старую записку новой рискованно - предыдущая команда может потеряться. Вместо этого стоит добавлять новые записи в файл в дополнение к недавно отправленным.
Справочник по всем возможным командам в "записках" находится здесь.
Управление ключами
TODO
Логи работы incominger
Логи работы incominger — комплекса скриптов, реализующих функциональность incoming — располагаются здесь: http://ftp.altlinux.org/pub/people/incominger/logs/