* [mdk-re] CVS commit & script from loginfo
@ 2001-09-05 23:25 cornet
2001-09-06 19:06 ` cornet
2001-09-07 10:25 ` Dmitry V. Levin
0 siblings, 2 replies; 9+ messages in thread
From: cornet @ 2001-09-05 23:25 UTC (permalink / raw)
To: mandrake-russian
Hello all!!
Подозреваю, что в данной рассылке куча знатоков CVS, уж по
крайней мере разработчики из Alt точно знают многое, не
отпирайтесь :-))
Задача:
Есть CVS, CVSROOT=/home/user/cvs
в ём есть каталог $CVSROOT/doc в котором содержится
документация в html. Люди ходят туда через pserver.
Хочется что бы по каждому commit в этот модуль, стартовал
скриптик, который все это будет через cvs update локально
вытягивать и складывать в доступное http серверу место
(/home/user/www), предварительно протралив, подправив в
соответствии с произошедшими изменениями индексы, заголовки,
атрибуты и прочую хренотень, поскольку в самом CVS хранится
практически голое <body> а обвеска должна браться из
темплейта и частично генериться налету.
Что у меня получилось:
$CVSROOT/CVSROOT/loginfo содержит строку:
^doc (date; cat; (sleep 2; cd /home/user/www;
/home/user/bin/script.pl) &) >> $CVSROOT/CVSROOT/updatelog 2>&1
/home/user/bin/script.pl - содержит вызов cvs update и
обрабатывает файлы.
Однако у такого подхода есть неприятность:
Если по commit фиксируется не один файл а несколько (cvs commit
doc), причем в различных подкаталогах $CVSROOT/doc , то
вышеприведенная строка будет вызвана столько раз, сколько
каталогов обработано, причем практически одновременно, что
недопустимо, поскольку копии скрипта неизбежно перессорятся между
собой из за файлов. К тому же, пока эти скрипты не отработают,
CVS не отпускает консоль клиента и считает операцию commit не
завершенной, что как то странно и неудобно.
Хачу:
Что бы если пользователь сказал _один_ раз
cvs commit doc
то независимо от количества и места расположения фиксируемых
файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
желательно как только скрипт запустится консоль клиента
отпустить.
Как?
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 9+ messages in thread
* [mdk-re] CVS commit & script from loginfo
2001-09-05 23:25 [mdk-re] CVS commit & script from loginfo cornet
@ 2001-09-06 19:06 ` cornet
2001-09-07 2:14 ` Anton Farygin
2001-09-07 10:25 ` Dmitry V. Levin
1 sibling, 1 reply; 9+ messages in thread
From: cornet @ 2001-09-06 19:06 UTC (permalink / raw)
To: mandrake-russian
cornet wrote:
>
> Hello all!!
>
> Подозреваю, что в данной рассылке куча знатоков CVS, уж по
> крайней мере разработчики из Alt точно знают многое, не
> отпирайтесь :-))
skip.
> Хачу:
> Что бы если пользователь сказал _один_ раз
> cvs commit doc
> то независимо от количества и места расположения фиксируемых
> файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
> желательно как только скрипт запустится консоль клиента
> отпустить.
Господа! Ну неужели здесь нету ни одного знатока CVS??
Ну не верю я, не верю!!
Разработчики из AltLinux, ну Вы же сами через CVS работаете...
Я что, в предыдущем письме вопрос криво сформулировал что ли?
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-06 19:06 ` cornet
@ 2001-09-07 2:14 ` Anton Farygin
2001-09-07 9:36 ` cornet
0 siblings, 1 reply; 9+ messages in thread
From: Anton Farygin @ 2001-09-07 2:14 UTC (permalink / raw)
To: mandrake-russian
cornet wrote:
> cornet wrote:
>
>>Hello all!!
>>
>>Подозреваю, что в данной рассылке куча знатоков CVS, уж по
>>крайней мере разработчики из Alt точно знают многое, не
>>отпирайтесь :-))
>>
> skip.
>
>>Хачу:
>>Что бы если пользователь сказал _один_ раз
>>cvs commit doc
>>то независимо от количества и места расположения фиксируемых
>>файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
>>желательно как только скрипт запустится консоль клиента
>>отпустить.
>>
>
> Господа! Ну неужели здесь нету ни одного знатока CVS??
> Ну не верю я, не верю!!
> Разработчики из AltLinux, ну Вы же сами через CVS работаете...
>
> Я что, в предыдущем письме вопрос криво сформулировал что ли?
>
>
Да в loginfo добавьте нужную команду в виде скрипта в background на
нужное событие.. .;-)
Rgds
Rider
--
+------------------------------------------------------------+
! ALT Linux Team http://www.altlinux.ru <rider@altlinux.ru> !
! tel/fax +7 095 2039698 !
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++!
! LRN Team http://www.lrn.ru <rider@linux.ru.net> !
+------------------------------------------------------------+
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-07 2:14 ` Anton Farygin
@ 2001-09-07 9:36 ` cornet
0 siblings, 0 replies; 9+ messages in thread
From: cornet @ 2001-09-07 9:36 UTC (permalink / raw)
To: mandrake-russian
Anton Farygin wrote:
>
> cornet wrote:
> > cornet wrote:
> >
> >>Hello all!!
> >>
> >>Подозреваю, что в данной рассылке куча знатоков CVS, уж по
> >>крайней мере разработчики из Alt точно знают многое, не
> >>отпирайтесь :-))
> >>
> > skip.
> >
> >>Хачу:
> >>Что бы если пользователь сказал _один_ раз
> >>cvs commit doc
> >>то независимо от количества и места расположения фиксируемых
> >>файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
> >>желательно как только скрипт запустится консоль клиента
> >>отпустить.
> >>
> >
> > Господа! Ну неужели здесь нету ни одного знатока CVS??
> > Ну не верю я, не верю!!
> > Разработчики из AltLinux, ну Вы же сами через CVS работаете...
> >
> > Я что, в предыдущем письме вопрос криво сформулировал что ли?
> >
> >
>
> Да в loginfo добавьте нужную команду в виде скрипта в background на
> нужное событие.. .;-)
^^^^^
Антон! Это я и сам знаю.
Я не знаю КАК? Видимо знаний шелл не хватает :-((
Ты можешь привести пример строки для такого запуска???
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-05 23:25 [mdk-re] CVS commit & script from loginfo cornet
2001-09-06 19:06 ` cornet
@ 2001-09-07 10:25 ` Dmitry V. Levin
2001-09-07 10:41 ` cornet
2001-09-07 10:57 ` cornet
1 sibling, 2 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2001-09-07 10:25 UTC (permalink / raw)
To: ALT Linux Spring mailing list
[-- Attachment #1: Type: text/plain, Size: 1030 bytes --]
On Wed, Sep 05, 2001 at 11:22:18PM +0400, cornet wrote:
> Хачу:
> Что бы если пользователь сказал _один_ раз
> cvs commit doc
> то независимо от количества и места расположения фиксируемых
> файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
> желательно как только скрипт запустится консоль клиента
> отпустить.
Вы думаете, что в CVS зря используются блокировки?
Если Вы не хотите получить нежелательных результатов, придется Вам
модифицировать свой скрипт так, чтобы он мог обрабатывать _именно_тот_
каталог, который commit'ится (другими словами, чтобы несколько скриптов,
запущенных для разных подкаталогов, не мешали друг другу).
Regards,
Dmitry
+-------------------------------------------------------------------------+
Dmitry V. Levin mailto://ldv@alt-linux.org
ALT Linux Team http://www.altlinux.ru/
Fandra Project http://www.fandra.org/
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who its friends are.
[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-07 10:25 ` Dmitry V. Levin
@ 2001-09-07 10:41 ` cornet
2001-09-07 10:58 ` Dmitry V. Levin
2001-09-07 10:57 ` cornet
1 sibling, 1 reply; 9+ messages in thread
From: cornet @ 2001-09-07 10:41 UTC (permalink / raw)
To: mandrake-russian
"Dmitry V. Levin" wrote:
>
> On Wed, Sep 05, 2001 at 11:22:18PM +0400, cornet wrote:
> > Хачу:
> > Что бы если пользователь сказал _один_ раз
> > cvs commit doc
> > то независимо от количества и места расположения фиксируемых
> > файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
> > желательно как только скрипт запустится консоль клиента
> > отпустить.
>
> Вы думаете, что в CVS зря используются блокировки?
> Если Вы не хотите получить нежелательных результатов, придется Вам
> модифицировать свой скрипт так, чтобы он мог обрабатывать _именно_тот_
> каталог, который commit'ится (другими словами, чтобы несколько скриптов,
> запущенных для разных подкаталогов, не мешали друг другу).
Так я хочу что бы скрипт запустился _после_ того как завершены
все commit во всех подкаталогах и все блокировки уже сняты. У
меня там идет сквозной индекс по всем разделам и его надо
обновлять глобально с учетом _всех_ произошедших изменений. Иначе
прараллельно запущенные процессы передерутся из за доступа к
индексному файлу и с большой вероятностью он будет сформирован
неправильно.
Либо надо как то наладить взаимопонимание между этими процессами,
выстроить их в очередь и так далее... чего я пока что не сделать
умею ни на bash не на perl :-(
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-07 10:25 ` Dmitry V. Levin
2001-09-07 10:41 ` cornet
@ 2001-09-07 10:57 ` cornet
1 sibling, 0 replies; 9+ messages in thread
From: cornet @ 2001-09-07 10:57 UTC (permalink / raw)
To: mandrake-russian
"Dmitry V. Levin" wrote:
>
> On Wed, Sep 05, 2001 at 11:22:18PM +0400, cornet wrote:
> > Хачу:
> > Что бы если пользователь сказал _один_ раз
> > cvs commit doc
> > то независимо от количества и места расположения фиксируемых
> > файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
> > желательно как только скрипт запустится консоль клиента
> > отпустить.
>
> Вы думаете, что в CVS зря используются блокировки?
> Если Вы не хотите получить нежелательных результатов, придется Вам
> модифицировать свой скрипт так, чтобы он мог обрабатывать _именно_тот_
> каталог, который commit'ится (другими словами, чтобы несколько скриптов,
> запущенных для разных подкаталогов, не мешали друг другу).
И еще вопрос - на сколько CVS устойчив к обрывам связи?
Что произойдет, если к примеру в процессе commit нескольких
файлов у клиента модем слетит с линии?
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-07 10:41 ` cornet
@ 2001-09-07 10:58 ` Dmitry V. Levin
2001-09-07 11:11 ` cornet
0 siblings, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2001-09-07 10:58 UTC (permalink / raw)
To: ALT Linux Spring mailing list
[-- Attachment #1: Type: text/plain, Size: 1250 bytes --]
On Fri, Sep 07, 2001 at 10:44:09AM +0400, cornet wrote:
> > > Хачу:
> > > Что бы если пользователь сказал _один_ раз
> > > cvs commit doc
> > > то независимо от количества и места расположения фиксируемых
> > > файлов, после их фиксации был бы _один_ раз вызван мой скрипт, и
> > > желательно как только скрипт запустится консоль клиента
> > > отпустить.
> >
> > Вы думаете, что в CVS зря используются блокировки?
> > Если Вы не хотите получить нежелательных результатов, придется Вам
> > модифицировать свой скрипт так, чтобы он мог обрабатывать _именно_тот_
> > каталог, который commit'ится (другими словами, чтобы несколько скриптов,
> > запущенных для разных подкаталогов, не мешали друг другу).
>
> Так я хочу что бы скрипт запустился _после_ того как завершены
> все commit во всех подкаталогах и все блокировки уже сняты. У
А как Вы это думаете организовать?
Regards,
Dmitry
+-------------------------------------------------------------------------+
Dmitry V. Levin mailto://ldv@alt-linux.org
ALT Linux Team http://www.altlinux.ru/
Fandra Project http://www.fandra.org/
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who its friends are.
[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [mdk-re] CVS commit & script from loginfo
2001-09-07 10:58 ` Dmitry V. Levin
@ 2001-09-07 11:11 ` cornet
0 siblings, 0 replies; 9+ messages in thread
From: cornet @ 2001-09-07 11:11 UTC (permalink / raw)
To: mandrake-russian
"Dmitry V. Levin" wrote:
>
skip.
> > Так я хочу что бы скрипт запустился _после_ того как завершены
> > все commit во всех подкаталогах и все блокировки уже сняты. У
>
> А как Вы это думаете организовать?
Понятия не имею!!
По тому и спрашиваю :-)
Кабы знал - давно бы уже сделал :-)
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2001-09-07 11:11 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-09-05 23:25 [mdk-re] CVS commit & script from loginfo cornet
2001-09-06 19:06 ` cornet
2001-09-07 2:14 ` Anton Farygin
2001-09-07 9:36 ` cornet
2001-09-07 10:25 ` Dmitry V. Levin
2001-09-07 10:41 ` cornet
2001-09-07 10:58 ` Dmitry V. Levin
2001-09-07 11:11 ` cornet
2001-09-07 10:57 ` cornet
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git