[Openmcl-devel] First draft!

Gary Byers gb at clozure.com
Wed Jul 7 04:48:47 PDT 2004



On Wed, 7 Jul 2004, Barry Perryman wrote:

> but instead of being built twice we get 24 builds a day, for possibly no
> changes :)

The GNU make program should ensure that things only get built when
something in CVS changes.  A day or two ago, I thought that it was being
a little overzealous about that, but I was either mistaken or was
reacting to bugs I was introducing while modifying the Makefile.

Dan's new stylesheets put timestamps on the generated HTML (the
timestamps show when the HTML was generated in local time, which is
currently 6 hours west of GMT.)  The timestamps on
<http://newsite.openmcl.clozure.com/Doc/> reflect changes that were
checked into CVS a little earlier on July 6; the other pages were last
built when the new content was first checked in to/out of CVS a day
earlier.

I think that that means that "make" works (e.g., we don't have to worry
about spurious rebuilds); I don't know whether it's better to rebuild
on commit, rebuild via cron, or combine the approaches, but we should
be pretty confident that there won't be new HTML content on the
webserver unless there's new (or at least very recent) XML content in
CVS.

>
> What about combining the two approaches and use a method similar to the
> continuous integration software tools*.  If we know that the site has been
> updated since we last rebuilt it, BUT there have been no changes in the last
> say 10 minutes then we rebuild the site. That way, multiple checkins are not
> going to build the site multiple times and we also aren't going to be
> rebuilding the site when no mods have been made.
>

Right now (with the cron job being the only thing that builds the site)
there's no concurrency issue, but there is a latency issue (in the worst
case, it might take almost an hour for changes in the CVS XML source to
propagate to served HTML.)

Personally, I think that it'd be great if the worst thing that people
could say about the OpenMCL documentation is that new content takes
half an hour on average to make it to the webserver and downloadable archive.
Since the cron job doesn't expend a lot of energy when nothing's changed
in CVS, it certainly wouldn't hurt to run it more frequently.


> Depending on the scheduling of the rebuild you'll only wait a maximum of:
>     (+ cron-task rebuild-time inactivity-time)
> before the changes are available.
>
> Barry
>
> ---
> * Software such as Cruise Control.NET for example.
> [Hello, My name's Barry and I'm a .NET developer]

>From what I understand, this admission is the first step towards recovery.



More information about the Openmcl-devel mailing list