monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] ikiwiki monotone support


From: William Uther
Subject: Re: [Monotone-devel] ikiwiki monotone support
Date: Mon, 25 Feb 2008 12:03:03 +1100


On 23/02/2008, at 10:56 AM, Brian May wrote:


"William" == William Uther <address@hidden> writes:

   William> Um, syncing to a database is not going to call a hook in
   William> _MTN/monotonerc either...

I suspect we might be making different assumptions here. Or some other
confusion exists.


Yeah - this is a little tricky. And I don't remember exactly what I was doing
when I put that stuff together.

If I  type in

cd $path
mtn sync

Will it call the hooks in $path/_MTN/montonerc?

I believe so, yes.

Nor is it possible to use a monotone server and ikiwiki from the same
database, I believe the monotone server will lock the database so
ikiwiki can't access it. So, on my setup, I have use two databases,
and supplied my own script for the server database, which means that
the supplied note_netsync_revision_received hook is still redundant.

My original thought was that the note_netsync_revision_received hook
would go in the monotonerc for the server mtn process.  That process
has nothing to do with the workspace that contains $path/_MTN/montonerc.

The rev-received hook was still being played with, when I got busy and
stopped having time to play.

Also, if this code is used, you probably only want to call the ikiwiki
wrapper script on the last revision received, not for every revision
received.

Good point :)

   William> er, no.  I believe that rcs_update() is called by ikiwiki
   William> when it wants ikiwiki to update the workspace.  Look at
   William> the comments in the Stub.pm example code in ikiwiki:

I am still confused when rcs_update() is called. If it only gets
called in response to the note_netsync_revision_received() hook, then
the new revisions have already been received, haven't they?

Or maybe ikiwiki calls rcs_update() on other occasions too?

My understanding was that it could call it at other occasions too.

I had a small test setup where I had one database and two local
workspaces.  There was no netsyncing going on at all.
I vaguely remember that working, although I've since
blown away that test setup, so I can't easily double check exactly
what I did.

Maybe we should check the ikiwiki source? ...  :)

It is called after an ikiwiki commit... and nowhere else.  Which is
weird.  I don't know how my setup could have worked.  Maybe something
has changed there in Ikiwiki?

Cheers,

Will         :-}






reply via email to

[Prev in Thread] Current Thread [Next in Thread]