Forum OpenACS Development:, docs, etc.?

Posted by Andrew Piskorski on
Where is the Dev copy of the live site? Currently, redirects to Is there a separate Dev site or are all changes just made directly to the Production site?

Where are the docs or pointers to info on how the website is maintained? Which CVS checkouts on the box are for what?

What leads me to ask? Well, I realized I'm going to need to tweak the AOLserver config file distributed for use with OpenACS. The current online install docs say to download and use this file: /doc/openacs-4/files/openacs4.tcl.txt

The online openacs4.tcl.txt appears to have no embedded CVS Id strings in it, nor any other information identifying which version of the file it is whatsoever. Not so good. Ok, let's first fix that, then worry about the other tweaks I need to make later. So, where is the current canonical copy of that file in CVS? Well, there's no really simple answer! At least at first glance without any docs to help me, the current system appears to be rather disorganized and confused.

On the box, some version of the site is apparently using the /web/ CVS checkout. Which version? I'm not really sure but I suspect it is Production. (If I could read the AOLserver config files I could figure that out, but alas, I can't. See also below.)

This "/web/" checkout has Roberto's username in all the CVS/Root files, which is obnoxious as it means no one else can even do a "cvs stat FILENAME" in the checkout without giving Roberto's password. This is particularly silly since the CVS repository is on the same machine, so there's no need for any username in the CVS/Root files at all.

"www/doc/openacs-4-6/files/openacs4.tcl.txt" appears to be the real copy of the file. But fortunately, README.TXT in that directory explains that even though it's checked into CVS, that's not the canonical copy, it's actually generated "www/doc/openacs-4-6/xml/files/openacs4.tcl.txt", which is in fact identical.

However, when I checkout my own copy of "" onto my desktop, it turns out the "www/doc/openacs-4-6/" directory doesn't exist at all! Hm... Consulting the "CVS/Repository" files in the live checkout above, it seems that "/www/doc/openacs-4-6" is actually a duplicate checkout of "/packages/acs-core-docs/www/files". Ok, that makes sense - this is a hack to make various versions of the docs show up on the website.

So, on my desktop, I add a trivial CVS $Id tag to the top of the file, and commit - cool, that worked. The "packages/acs-core-docs/www/xml/Makefile" controls the doc generation. I don't have any of this xsltproc and htmldoc stuff installed in my /usr/bin/, but running just "make prelim" copies the slightly tweaked openacs4.tcl.txt into the right place.

Of course, I have no idea how to go about making that tweaked file show up on the website, nor even if I should... How is this sort of thing supposed to be handled?

Finally, as I briefly mentioned above, on the unix box, the AOLserver config files used by the live sites are apparently all in "/usr/local/aolserver/", e.g. "". They are mostly all readable only be root. This seems like a profoundly bad idea to me, as it prevents even developers with accounts on the unix box from seeing how the heck the live OpenACS AOLserver is configured. To protect the database passwords, it should be simple to put those in a separate small tcl file, readable only be root, which is sourced by the main config file, right? Since that answers the db password security issue, I can't think of any other good reason to hide the rest of the contents of the AOLserver config file. (Oh yeah, and it should be in CVS...)

Posted by Jeff Davis on
Andrew, the prod site does run from /web/ There is no dev version and a lot of the stuff on the prod site is uncommitted (and in some cases needs to be cvs added) so you can't really check out a working dev version.

It needs to be cleaned up, made less "obnoxious" and "profoundly bad", but until you volunteered no one seemed to have time to do it :)

Posted by Andrew Piskorski on
I perhaps let me irritation show through a bit too much in the severity of my adjectives... :) Of course, none of these problems are show stoppers, but they are well, irritating.

I do indeed volunteer to put some time into helping straighten things out; scratch your own itch and all that. However, looks like fixing anything on the unix box is going to take somebody with sudo, and I don't have that.

The sort of project docs and notes I'm complaining about not having above should probably be linked to from the projects/openacs/developers/ page. But, how is that page edited and maintained? Is it an ADP page in CVS somewhere, or done with Edit This Page, or what? If someone tells me how to edit it and gives me the permissions to do so, I can see about adding some of the missing info. (Not in the next few days or anything, but definitely a bit here and there when I get a chance.)

What do you want to do about a Dev server? Do the relevent decision makers agree that a site would be a good thing? Or? The only major snafu I see would be worrying about whether or how to make the Dev database contents look like the Production site, etc.

I take it the old was just a one time thing to get the new 4.x website working, and was then discarded?