Хорошо, выкладывай тогда в Сизиф как 2.0 (увеличение первой цифры
пусть сигнализирует о потере совместимости "чуть менее чем полностью").

Alexey I. Froloff <ra...@altlinux.org> wrote:

> * Pavel Wolneykien <manowar-u2l5PoMzF/Vg9hUCZPvPmw@> [090410 14:03]:
> >   P.S. К разработке собирался присоединиться raorn@, и грозился
> > переписать всё это на некоем libshell. Так что если кто-то ещё захочет
> > сделать это, просьба сперва связаться с ним.
> [не знаю, дойдёт или нет, пишу из горящего танк^W^W^Wчерез gmane]
> 
> Я его переписал чуть менее, чем полностью.  В общем оно сейчас
> тупое как валенок.
> 
> Сканируется каталог шаблона.  Если нашли каталог, а в этом
> каталоге только файлы - это шаблон файла и идём его генерировать.
> Если нашли каталог, в котором тоже есть каталоги, обрабатваем его
> рекурсивно.  Если нашли что-то ещё - с громкими криками его
> пропускаем.
> 
> Для генерации файла из шаблона генерится скрипт.  Сначала пишется
> шапка
> 
> CATERVA_VERBOSE=${verbose:+1}
> CATERVA_TEMPLATE="$(quote_shell "$template")"
> 
> Потом разбираются non-option arguments переданные самой катерве и
> если они в виде NAME=VALUE, то они тоже записываются в скрипт в
> виде
> 
> ARG_NAME="VALUE"
> 
> Дальше, для каждого кусочка темплейта генерится либо команда "cat
> имяфала", либо ". имяфайла" (последнее в случае если "кусочек"
> исполняемый).
> 
> Рядом с генерируемым файлом создаётся временный.  Запускается
> сгенерированный скрипт, его вывод перенаправляется во временный
> файл.  Если генерируемый файл существовал, делается chown/chmod
> --reference, потом mv временного файла в генерируемый (при этом
> mv можно передать опции --backup и --suffix).
> 
> Вот эта схема решает задачу передачи каких-то данных в
> скрипты-шаблончики и обмена данными между самими
> скриптами-шаблончиками.
> 
> -- 
> Regards,
> Sir Raorn.
> _______________________________________________
> devel-conf mailing list
> devel-conf@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel-conf
_______________________________________________
devel-conf mailing list
devel-conf@lists.altlinux.org
https://lists.altlinux.org/mailman/listinfo/devel-conf

Ответить