D 2008-10-21T11:22:20 L Cookbook P 8e46971181ac2c7438e2614ae16ef6929dc777d8 U anonymous W 8342
fossil server
and/or fossil ui
commands, of course, but this is really only adequate for ad-hoc repository sharing. Consider, for example, sharing ten repositories. Using the built-in server would require you to open ten ports in your firewall to permit access. Any serious sharing will require something more robust and permanent.
fossil server/ui
is more than adequate. For more robust solutions, however, the use of (x)inetd or CGI support is indicated.
Setting up fossil for CGI support is simple. (Setting up your web server for CGI support may or may not be simple, but it is out of scope of this recipe. Consult your web server/service provider's documentation for this.)
#! /usr/bin/env fossil
repository: /full/path/to/repository/file.fsl
3. Ensure that the script file so generated is set executable for the CGI user account.
4. Ensure that every directory in the path leading to the repository is browseable (chmod +x) to the CGI user account.
5. Ensure that the repository file is readable and writable to the CGI user account.
The following bash script can be run from within the directory containing the Fossil repositories to be shared (and, of course, altered for your setup) to set some of the constraints above up automatically:
While it is far from a perfect set of instructions.. here are some quick notes that should help windows users along the way...
#! fossil.exe repository: c:/wamp/www/dev/accounts.fossilI suppose you could put fossil.exe somewhere more specific and set the path to it as well, but since you are probably using the same executable for cmdline and cgi it kind of just makes sense to put it somewhere more accessible
fossil server
is likely more than adequate or the use of (x)inetd may be indicated. If, however, there is already an existing web infrastructure in place, CGI still may be preferred if only for consistency and maintainability of the system as a whole.
Z 728e67da3aa53a8ab5a1c1ba8b97eec4