Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Vladimir Bormotov                    2:5020/400     06 Nov 2002  18:32:04
 To : Denis Smirnov
 Subject : Re: cvs -- commitinfo
 -------------------------------------------------------------------------------- 
 
 
    Hi, Denis!
 
 >>>>> "DS" == Denis Smirnov <mithraen@freesource.info> writes:
 
  VB>>  кстати, а почему не из loginfo?
 
  DS> Сначала я почитал доки, и решил сделать через loginfo -- неполучилось.
  DS> Потом я вспомнил, что Виктор говорил про то, что он это делал через
  DS> commitinfo -- проверил по гуглю, точно он говорил. Попробовал так --
  DS> тоже ничего не получилось. Подумал и сделал грязный хак с запуском в
  DS> фоне.
 
  ясно.  _Такое_ я не делал, но рассылка почтой дифов у нас работает именно
  через loginfo.
  
  Hасколько я помню доки на cvs, commitinfo срабатывает _до_ реального
  коммита, а loginfo - уже после.
  
  
  DS>>> Пока решил проблему грубо -- просто запускаю cvs update в фоне --
  DS>>> тогда он через некоторое время просыпается и таки делает update. 
  VB>>  дык.  Кажется самое простое решение.
 
  DS> Hо далеко не самое красивое. Hасколько я понял он просто с каким-то
  DS> интервалом заново проверяет наличие лока?
 
  Стоп.  Кто "он"? 
  
  
  DS> Интересный вопрос появляется -- а что ему мешает сначала обработать
  DS> всё, где нет лока, а потом с _указаным_ интервалом ждать когда
  DS> освободятся остальные локи?
 
  если "он" - процесс который делает cvs up - то думаю ему нехватает мозгов.
  Он сообщает что файл залочен, и радостно висит, ждет реакции пользователя.
  
  
 [skip]
 
  DS>>> Что я не понимаю? Как решить эту задачу?
  VB>>  Ты пытаешься на сервер-сайд решать клиентскую задачу.
  VB>>  Если хочется "чтоб чиста все крута" - то вешается клиентский демон, а из
  VB>>  (таки мне кажется что лучше) loginfo, ему говорится "данные обновились",
  VB>>  он берет и обнавляет.
 
  DS> Я об этом сразу же подумал, но сильно надеялся что можно штатными
  DS> средствами победить свою лень :) Демон ведь ещё и запускать надо...
 
  я таки полез в доки, чем я сегодня добрый ;-))
  
  http://alexm.here.ru/cvs-ru/html_chapter/cvs-ru_18.html#SEC163
  Файл `commitinfo' описывает программы, которые выполняются перед тем, как
  команда `cvs commit' выполняет свою работу. 
  
  ключевые слова _перед_тем_, т.е. мой склероз меня не подвел на этот раз.
  
  http://alexm.here.ru/cvs-ru/html_chapter/cvs-ru_18.html#SEC167
  Файл `loginfo' используется для управления тем, куда посылается журнальная
  информация при выполнении `cvs commit'.
  
  вот тут подвел - не "после", а "во время" ;-))
  
  В общем, попробуй таки на loginfo, причем cvs update не из того-же скрипта
  который там прописан, а издругого, которому как-то сообщают.  Отдельно.
  
  Или random timeout сделать, в преедлах минуты..
  
  
  DS> О! Соответственно вопрос появился -- сейчас я использую daemontools
  DS> для запуска всех демонов.  А что можно использовать для того, чтобы
  DS> пользователи могли сами иметь свой аналог /services, содержимое
  DS> которого запускалось бы от них? Мне бы это сильно жизнь упростило.
 
  от такого не знаю, и сходу в голову ничего приличного не приходит.
  daemontools не пользовал..  
  
  Из неприличного - написать своего демона, который будет где-нибудь ждать
  появления file, например в виде cvs-up.<username>, и по появлению этого
  файлика от имени этого username делать cvs up.  запускать каким-нибудь
  respawn, из inittab, от рута.  Обвешать всякими проверками, чтоб username
  совпадало с реальными правами на этот файл, и тому подобное.
  собвенно файлики могут создаваться из какого-нибудь ~/.procmailrc, по
  приходу почты, которая будет высылаться из скрипта, который в loginfo ;)
  
  ндэ, жуть какая-то... ;)))
  
  
  VB>>  Hо навскидку мне кажется если ты пеервесишь скрипт с апдейтом в
  VB>>  loginfo, то все поедет без суперизвратов...
 
  DS> Hе, не поехало, потому и стал извращаться.  Он почему-то локи не
  DS> отпускает перед вызовом скриптов в loginfo
 
  вообще, есть список рассылки, там отвечают, очень часто по-делу.  Думаю
  лучше туда вопрос задать, ибо у меня так сходу идеи закончились ;-))
  
  
 -- 
    Bor.
 --- ifmail v.2.15dev5
  * Origin: BorHomeLand (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 cvs -- commitinfo   Denis Smirnov   05 Nov 2002 22:17:17 
 Re: cvs -- commitinfo   Artem Chuprina   05 Nov 2002 22:52:15 
 Re: cvs -- commitinfo   Denis Smirnov   06 Nov 2002 15:00:44 
 Re: cvs -- commitinfo   Artem Chuprina   06 Nov 2002 15:23:45 
 Re: cvs -- commitinfo   Denis Smirnov   06 Nov 2002 16:06:11 
 Re: cvs -- commitinfo   Vladimir Bormotov   06 Nov 2002 18:44:52 
 Re: cvs -- commitinfo   Denis Smirnov   06 Nov 2002 19:01:59 
 Re: cvs -- commitinfo   Pavel Marenyuk   06 Nov 2002 22:33:49 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 12:10:30 
 Re: cvs -- commitinfo   Artem Chuprina   06 Nov 2002 20:21:28 
 Re: cvs -- commitinfo   Sergey Aleshin   07 Nov 2002 13:59:18 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 12:12:34 
 Re: cvs -- commitinfo   Vladimir Bormotov   06 Nov 2002 18:39:45 
 Re: cvs -- commitinfo   Pavel Marenyuk   06 Nov 2002 22:33:49 
 Re: cvs -- commitinfo   Vladimir Bormotov   06 Nov 2002 22:59:59 
 Re: cvs -- commitinfo   Vladimir Bormotov   05 Nov 2002 22:54:49 
 Re: cvs -- commitinfo   Denis Smirnov   06 Nov 2002 15:00:44 
 Re: cvs -- commitinfo   Vladimir Bormotov   06 Nov 2002 18:32:04 
 Re: cvs -- commitinfo   Denis Smirnov   06 Nov 2002 18:45:24 
 Re: cvs -- commitinfo   Vladimir Bormotov   06 Nov 2002 22:34:51 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 12:18:14 
 Re: cvs -- commitinfo   Valentin Nechayev   10 Nov 2002 13:43:44 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 14:25:44 
 Re: cvs -- commitinfo   Pavel Marenyuk   06 Nov 2002 22:33:48 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 12:15:38 
 Re: cvs -- commitinfo   Alex Tomas   10 Nov 2002 12:18:44 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 13:38:35 
 Re: cvs -- commitinfo   Alex Tomas   10 Nov 2002 13:43:12 
 Re: cvs -- commitinfo   Denis Smirnov   10 Nov 2002 14:25:44 
Архивное /ru.linux/2541f77b5c29.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional