Hi,

I'd like to know how to setup commit hooks on a fossil server
so that, for example, I can perform an automatic checkout,
run tests and restart a server. I intend to use this for
deploying projects on a server - sort of like heroku's
deploy using "git push".

This has come up a few times in the past iirc, but I'm not
sure whether there is any resolution on whether fossil will
ever accept to support this and if so in what form it might 
take.

I'd like to propose something that (afaik) has not been
proposed --

Expose fossil server activity in the form of hook URLs
to which information about the activity is sent by POST
with the body in JSON format. With this setup, it would
be possible to code up a hook client in, say, node.js
which can respond appropriately.

So, for example, if trunk just got a new commit, and
a hook URL root of "http://localhost:9999/myserver/";
is registered, then a POST to "http://localhost:9999/myserver/commit";
is made with the body something like -

{"branch":"trunk", "commit":"longhexSHAid", "comment":"some text", ...}

Multiple such root URLs may be registered. In case connection
to one fails, it can be simply ignored.

I think there would be no need for the fossil server
to wait for the post action to complete before continuing
with whatever it needs to do (though I admit I haven't thought
that through).

Thoughts?
-Kumar


Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to