Forum OpenACS Q&A: How are upgrades accomplished?

Collapse
Posted by Brent Fulgham on
Let's say I've been running ACS/pg for a few weeks, and I see that
a really useful dog-walking module has been added.  I want this
module, but I'm stuck because I've got this existing system running.
How do I install the new pieces of ACS/pg without trashing any
configuration changes I may have made.

Is there some "standard" as to how updates can be made to ACS/pg?
Simply untarring the tree from CVS seems like it would clobber lots
of stuff, but if I don't allow it to overwrite some files, I may
end up with old versions of files that need to be changed for the
new system to work properly.

How does this work?

Collapse
Posted by Ben Adida on
This is precisely why we want more modularity in the ACS (see other threads about this). Currently, you would have to:

- load the new data model, hope it doesn't conflict

- install the tcl/*.tcl files

- install the www/module_name/* files

- install the templates/module_name/* files

- restart your server

- hope for the best

This is actually not so bad. It's much worse if you need to upgrade an existing module where a data model changes...

Collapse
Posted by Don Baccus on
If it makes you feel any better, Brent, it's not an ACS/pg problem, it's an ACS-in-general problem.  This is a case where Oracle users are no better off than us.

There's a rationale that can lead one to believe that this isn't so bad, in practice.  In order to build a "real" web site on top of the ACS, one which is highly customized such as scorecard.org or eplay.com,  you have to hack the hell out of all the Tcl scripts because that's where the presentation HTML is generated (except for e-commerce  and a couple of other modules that use the templating system).

Once you've hacked the hell out of all those Tcl scripts, upgrading is  going to be a major pain.

So you won't do it.  That argument has been made in the past by folks within aD, or at least the claim's been made that "most of our customers don't want to upgrade once their site's done".

aD has held some touchingly naive views in the past, in this software engineer's opinion.  "Backward compatibility just slows down progress"  is one interesting mantra.  They've been leaving a trail of web sites  orphaned from their forward development path.

Recently, more traditional views seem to be surfacing, perhaps as aD hires more folks with real-world experience working to keep customers happy over the long-term.  That's a good thing, IMO.