[Devel-conf] Metalterator
Pavel Wolneykien
manowar на altlinux.org
Сб Апр 11 21:27:11 MSD 2009
Michael Shigorin <mike на osdn.org.ua> wrote:
> Возможно, wart@ и ldv@ не настраивают squid в повседневной
> деятельности -- перед изменением, которое по сути представляет
> из себя воспроизведение через много-много лет одной из худших
> черт SuSE YaST -- "конфиг руками не трогать", стоит советоваться
> не в закрытом режиме (как нам пеняли вот), а с теми, кому с этим
> жить. Т.е. в sysadmins@ и с support на .
Собственно, я и начал с написания парсера (а точнее набора макросов
для описания парсеров для задач конфигурирования). После написания
чернового варианта передо мной встала дилемма: либо разбирать весь
конфиг, либо только "заранее оговорённые значения". В первом случае
количество полей, кнопок и переключателей в интерфейсе пользователя
"стремиться к бесконечности". Я подумал, что человек, который в
состоянии справиться с таким интерфейсом (это не я :)) ) будет просто
править файл squid.conf. Да и написать и протестировать такой модуль
будет очень сложно. Поэтому я избрал второй путь. Конфигуратор должен
был работать так: попытаться прочитать те параметры, к которым он готов,
а остальные закомментировать. Если неизвестные параметры не убирать, они
ведь могут повлиять на поведение сервера. Но когда всё было почти
готово, меня, всё таки, отговорили от такой реализации модуля.
Однако, новый подход с БД не отменяет возможности использовать парсер:
с помощью него можно по прежнему пытаться извлечь из конфига полезную
информацию, а потом использовать её в новом конфиге (старый можно
любезно сохранить).
В качестве движка парсера я использовал lalr-scm. Модуль находится у
меня в private. Если интересно, то могу выложить _это_ в public. :))
Павел.
Подробная информация о списке рассылки devel-conf