Bug 24412

Summary: Содержимое пакета не помечено как %config
Product: Sisyphus Reporter: solo <solo>
Component: apache2-mod_php5-controlAssignee: solo <solo>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: boyarsh, kurakin, rider
Version: unstableKeywords: NMU, patch
Hardware: all   
OS: Linux   
Bug Depends on: 24413    
Bug Blocks:    

Description solo 2010-10-25 11:09:15 MSD
Файлы предоставляемые пакетом apache2-mod_php5-control-5.3.3.20100722-alt2.2 (%_sysconfdir/control.d/facilities/* и %php5_sysconfdir/%php5_sapi/control.d/*) не помечены макросом %config. => при обновлении пакета будут переписаны _без_ создания резервной копии, даже если они привились руками.

  Возможность сохранения ручных настроек важна для адаптацию под задачу и для сохранения оной при обновлениях.
Comment 1 Anton Farygin 2010-10-25 11:18:04 MSD
Это и не есть конфигурационные файлы, и их не надо править под задачу.

Если стоит задача делать что-то из control'а, то надо просто сделать ещё один файл (пакет) с другим поведением.
Comment 2 solo 2010-10-25 11:52:21 MSD
  Почему? Чем они отличаются по сути?

  Да, создание кастомизированного конфига под задачу -- вариант более предпочтительный (более дистрибутивный, как минимум). Но вынуждение адменистратора помимо foo (дистрибутивный конфиг под задачу, для zabbix, например) иметь и его личный my_foo -- вариант не лучший:

1. Невидно когда его надо синхронизировать с дистрибутивным. (Если отредактирован foo отмеченный как %config -- признаком необходимости синхронизации служит появление *.rpm*.)

2. Молчаливая замена в /etc файлов, изменённых вручную -- достаточно часто ломает рабочую конфигурации при обновлении. Такие разломы как минимум неприятны (а иногда и не очевидны).
Comment 3 solo 2010-10-25 11:54:24 MSD
  Необоснованную _молчаливую_ замену ручных правок в /etc -- считаю ошибкой.
Comment 4 Anton Farygin 2010-10-25 12:20:30 MSD
/etc содержит множество файлов, не являющихся конфигурационными (исполняемыми скриптами). Т.к. в control нет поддержки никаких других каталогов, кроме /etc, то это ошибкой не является. Впрочем, всё равно решать мейнтейнеру - меня наличие control'а не интересует.
Comment 5 solo 2010-10-25 13:08:32 MSD
> /etc содержит множество файлов, не являющихся конфигурационными (исполняемыми
> скриптами). Т.к. в control нет поддержки никаких других каталогов, кроме /etc,
> то это ошибкой не является.

  В данном случаи, файлы %php5_sysconfdir/%php5_sapi/control.d/* конечно скрипты. Но по суте своей исполняемые конфиги, т. к. содержат практически только список подлежащих установки параметров с их значениями (вызовы вида php_rule $mode "<имя параметра>" <значение>). Управляющая логика в данных файлах отсутствует.

  В спеке control (см http://sisyphus.ru/ru/srpm/Sisyphus/control/spec) присутствует определение:

%config %_sysconfdir/control.d

  Т. е. всё содержимое %_sysconfdir/control.d считается конфигами (и меня это неоднократно выручало) => и %_sysconfdir/control.d/facilities/* предоставляемые данным пакетом стоит отметить аналогично.


> Впрочем, всё равно решать мейнтейнеру - меня
> наличие control'а не интересует.

  В spec`е мантейнер не указан. По ACL -- мантейнер пакета rider@ ;-)

$ ssh git.alt acl sisyphus apache2-mod_php5 show
apache2-mod_php5        rider @everybody

  По git`у, автор обсуждаемого пакета apache2-mod_php5-control -- Sergey Kurakin <kurakin@...>. Я подпасал его на данную багу.

PS: Я готовлю NMU с данными правками.
Comment 7 Repository Robot 2010-10-25 18:19:46 MSD
apache2-mod_php5-5.3.3.20100722-alt2.3 -> sisyphus:

* Mon Oct 25 2010 Aleksey Avdeev <solo@altlinux> 5.3.3.20100722-alt2.3
- control(8) fix:
  + backup files (~|\.rpm(save|new)) are excluded from processing
    (Closes: #24413)
  + use %config for files subpackage %name-control (Closes: #24412)