|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Denis Smirnov 2:5020/400 06 Nov 2002 18:45:24 To : Vladimir Bormotov Subject : Re: cvs -- commitinfo -------------------------------------------------------------------------------- Vladimir Bormotov <bor@vb.dn.ua> wrote: VB> Hасколько я помню доки на cvs, commitinfo срабатывает _до_ реального VB> коммита, а loginfo - уже после. Именно так. Hо реально в любом случае лок снимается только после отрабатывания commit'а и в текущем виде не работает оба варианта :) DS>>>> Пока решил проблему грубо -- просто запускаю cvs update в фоне -- DS>>>> тогда он через некоторое время просыпается и таки делает update. VB>>> дык. Кажется самое простое решение. DS>> Hо далеко не самое красивое. Hасколько я понял он просто с каким-то DS>> интервалом заново проверяет наличие лока? VB> Стоп. Кто "он"? cvs update DS>> Интересный вопрос появляется -- а что ему мешает сначала обработать DS>> всё, где нет лока, а потом с _указаным_ интервалом ждать когда DS>> освободятся остальные локи? VB> если "он" - процесс который делает cvs up - то думаю ему нехватает мозгов. VB> Он сообщает что файл залочен, и радостно висит, ждет реакции пользователя. Hе -- он через полминуты просыпается, и таки делает update. VB> В общем, попробуй таки на loginfo, причем cvs update не из того-же скрипта VB> который там прописан, а издругого, которому как-то сообщают. Отдельно. VB> Или random timeout сделать, в преедлах минуты.. Я так чувствую, что придётся патчить cvs на предмет времени ожидания (ключика я у него на этот счёт не нашёл). VB> Из неприличного - написать своего демона, который будет где-нибудь ждать VB> появления file, например в виде cvs-up.<username>, и по появлению этого VB> файлика от имени этого username делать cvs up. запускать каким-нибудь VB> respawn, из inittab, от рута. Hу если уж от рута, то тогда из под daemontools :) VB> Обвешать всякими проверками, чтоб username VB> совпадало с реальными правами на этот файл, и тому подобное. VB> собвенно файлики могут создаваться из какого-нибудь ~/.procmailrc, по VB> приходу почты, которая будет высылаться из скрипта, который в loginfo ;) VB> ндэ, жуть какая-то... ;))) Во-во, я о том же :) Мне так другой вариант понравился бы -- из под некоего аналога daemontools работающего из под юзера стартует скрипт (лежащий где-то в домашнем каталоге у юзера). Сей скрипт просто создаёт fifo, и ждёт пока туда что-нибудь придёт. Если пришло -- бодро идёт по пути, который пришёл, и делает там cvs update. VB>>> Hо навскидку мне кажется если ты пеервесишь скрипт с апдейтом в VB>>> loginfo, то все поедет без суперизвратов... DS>> Hе, не поехало, потому и стал извращаться. Он почему-то локи не DS>> отпускает перед вызовом скриптов в loginfo VB> вообще, есть список рассылки, там отвечают, очень часто по-делу. Думаю VB> лучше туда вопрос задать, ибо у меня так сходу идеи закончились ;-)) А на русском есть? Я на английском максимум могу документацию прочитать. -- С уважением, Denis http://freesource.info --- ifmail v.2.15dev5 * Origin: MTU-Intel ISP (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/45106d2536eb.html, оценка из 5, голосов 10
|