ACL: различия между версиями
Нет описания правки |
Ldv (обсуждение | вклад) (Approve Control List) |
||
(не показаны 4 промежуточные версии 3 участников) | |||
Строка 1: | Строка 1: | ||
[[Категория:Sisyphus]] | [[Категория:Sisyphus]] | ||
[[Категория:Devel]] | [[Категория:Devel]] | ||
С каждым пакетом в | С каждым пакетом в каждом репозитории пакетов связан ''ACL'' (Approve Control List) — список пользователей и групп пользователей, которые могут отправить свою или одобрить чужую сборку этого пакета с помощью [[git.alt]] в этот репозиторий пакетов. | ||
== ACL == | == ACL == | ||
Строка 8: | Строка 8: | ||
; list.packages.sisyphus | ; list.packages.sisyphus | ||
: Список пользователей, которым разрешена нормальная заливка каждого из пакетов | : Список пользователей, которым разрешена нормальная заливка каждого из пакетов | ||
; list. | ; list.groups.sisyphus | ||
: Список пользователей | : Список групп пользователей | ||
Кроме того, ACL | Кроме того, ACL можно посмотреть с помощью команды [[git.alt/Справочник#acl_show|git.alt acl show]]. | ||
По умолчанию (после первой сборки пакета и попадания его в репозиторий) ACL устанавливается в «разрешено | По умолчанию (после первой сборки пакета и попадания его в репозиторий) ACL устанавливается в «разрешено майнтейнеру и всем кто захочет». Майнтейнером считается группа, если тэг <tt>Packager</tt> пакета установлен в <tt><имягруппы>@packages.altlinux.org</tt> или член Team, указанный в <tt>Packager</tt>, в противном случае. | ||
Первый пользователь в ACL является ''лидером'' пакета и может менять ACL. Кроме того, этот человек назначается ответственным за ошибки в Bugzilla для этого пакета. Остальные пользователи добавляются в CC на ошибки в Bugzilla для этого пакета. | Первый пользователь в ACL является ''лидером'' пакета и может менять ACL. Кроме того, этот человек назначается ответственным за ошибки в Bugzilla для этого пакета. Остальные пользователи добавляются в CC на ошибки в Bugzilla для этого пакета. | ||
Строка 23: | Строка 23: | ||
Группа — это набор пользователей, вместе работающих над сборкой пакетов и поэтому для краткости обозначаемых в ACL одним словом. Названия групп начинаются с символа <tt>@</tt>. | Группа — это набор пользователей, вместе работающих над сборкой пакетов и поэтому для краткости обозначаемых в ACL одним словом. Названия групп начинаются с символа <tt>@</tt>. | ||
Создаются группы вручную, с помощью отправки письма на [mailto:devel/lists.altlinux.org devel@lists] с указанием названия группы и начального состава группы. | |||
Изменяется состав группы с помощью команд семейства [[git.alt/Справочник#acl|git.alt acl]] её лидером — первым в списке членов группы. | |||
Изменяется состав группы с помощью | |||
=== @nobody === | === @nobody === | ||
@nobody — специальная псевдогруппа. После удаления всех пользователей из ACL, пакет помечается как принадлежащий @nobody. Любой пользователь может обновить пакет, принадлежащий @nobody, | @nobody — специальная псевдогруппа. После удаления всех пользователей из ACL, пакет помечается как принадлежащий @nobody. Любой пользователь может обновить пакет, принадлежащий @nobody. В этой ситуации пользователь, обновивший пакет, автоматически становится мейнтейнером этого пакета. | ||
=== @everybody === | === @everybody === | ||
@everybody — специальная псевдогруппа. После добавления этой группы в ACL пакета | @everybody — специальная псевдогруппа. После добавления этой группы в ACL пакета с пакета снимаются ограничения на заливку и на [[NMU|NMU]]. Принадлежность пакета при таких заливках не меняется. | ||
== Управление ACL == | == Управление ACL == | ||
Управление ACL происходит с помощью | Управление ACL происходит с помощью команд семейства [[git.alt/Справочник#acl|git.alt acl]]. | ||
== HOWTO == | == HOWTO == | ||
Строка 49: | Строка 47: | ||
=== Передача пакета кому-то ещё === | === Передача пакета кому-то ещё === | ||
$ ssh git.alt acl sisyphus ПАКЕТ leader КТО_ТО | $ ssh git.alt acl sisyphus ПАКЕТ leader КТО_ТО | ||
=== | === Передача пакета в общую разработку === | ||
Эта команда снимает ограничения на NMU и не-NMU заливку пакета. | |||
$ ssh git.alt acl sisyphus ПАКЕТ | $ ssh git.alt acl sisyphus ПАКЕТ add @everybody | ||
=== Отказ от пакета === | === Отказ от пакета === | ||
Для отказа от пакета необходимо удалить | Для полного отказа от сопровождения пакета необходимо удалить себя из ACL пакета. | ||
$ ssh git.alt acl sisyphus ПАКЕТ show | $ ssh git.alt acl sisyphus ПАКЕТ show | ||
ПАКЕТ вася петя | ПАКЕТ вася петя | ||
$ ssh git.alt acl sisyphus ПАКЕТ del вася | $ ssh git.alt acl sisyphus ПАКЕТ del вася | ||
== Управление группами == | == Управление группами == | ||
Строка 76: | Строка 69: | ||
=== Создание группы === | === Создание группы === | ||
Вручную, письмом | Вручную, письмом в [mailto:devel@lists.altlinux.org список рассылки devel], с названием группы и начальным списком участников. | ||
=== Добавление в группу === | === Добавление в группу === | ||
$ ssh git.alt acl sisyphus @ГРУППА add КТО_ТО | $ ssh git.alt acl sisyphus @ГРУППА add КТО_ТО |
Текущая версия от 03:37, 23 февраля 2021
С каждым пакетом в каждом репозитории пакетов связан ACL (Approve Control List) — список пользователей и групп пользователей, которые могут отправить свою или одобрить чужую сборку этого пакета с помощью git.alt в этот репозиторий пакетов.
ACL
Текущие списки Sisyphus ACL размещаются по адресу http://git.altlinux.org/acl/:
- list.packages.sisyphus
- Список пользователей, которым разрешена нормальная заливка каждого из пакетов
- list.groups.sisyphus
- Список групп пользователей
Кроме того, ACL можно посмотреть с помощью команды git.alt acl show.
По умолчанию (после первой сборки пакета и попадания его в репозиторий) ACL устанавливается в «разрешено майнтейнеру и всем кто захочет». Майнтейнером считается группа, если тэг Packager пакета установлен в <имягруппы>@packages.altlinux.org или член Team, указанный в Packager, в противном случае.
Первый пользователь в ACL является лидером пакета и может менять ACL. Кроме того, этот человек назначается ответственным за ошибки в Bugzilla для этого пакета. Остальные пользователи добавляются в CC на ошибки в Bugzilla для этого пакета.
Кроме пользователей в списке могут быть группы.
Группы
Группа — это набор пользователей, вместе работающих над сборкой пакетов и поэтому для краткости обозначаемых в ACL одним словом. Названия групп начинаются с символа @.
Создаются группы вручную, с помощью отправки письма на devel@lists с указанием названия группы и начального состава группы.
Изменяется состав группы с помощью команд семейства git.alt acl её лидером — первым в списке членов группы.
@nobody
@nobody — специальная псевдогруппа. После удаления всех пользователей из ACL, пакет помечается как принадлежащий @nobody. Любой пользователь может обновить пакет, принадлежащий @nobody. В этой ситуации пользователь, обновивший пакет, автоматически становится мейнтейнером этого пакета.
@everybody
@everybody — специальная псевдогруппа. После добавления этой группы в ACL пакета с пакета снимаются ограничения на заливку и на NMU. Принадлежность пакета при таких заливках не меняется.
Управление ACL
Управление ACL происходит с помощью команд семейства git.alt acl.
HOWTO
Добавление кого-либо в ACL пакета
$ ssh git.alt acl sisyphus ПАКЕТ add КТО_ТО
Передача пакета кому-то ещё
$ ssh git.alt acl sisyphus ПАКЕТ leader КТО_ТО
Передача пакета в общую разработку
Эта команда снимает ограничения на NMU и не-NMU заливку пакета.
$ ssh git.alt acl sisyphus ПАКЕТ add @everybody
Отказ от пакета
Для полного отказа от сопровождения пакета необходимо удалить себя из ACL пакета.
$ ssh git.alt acl sisyphus ПАКЕТ show ПАКЕТ вася петя $ ssh git.alt acl sisyphus ПАКЕТ del вася
Управление группами
Внимание! Управлять составом группы могут только лидеры (первые в списке членов) группы.
Создание группы
Вручную, письмом в список рассылки devel, с названием группы и начальным списком участников.
Добавление в группу
$ ssh git.alt acl sisyphus @ГРУППА add КТО_ТО