[Asterisk-Users] Taking the plung to CVS HEAD
Rich Adamson
radamson at routers.com
Fri Oct 28 04:11:10 MST 2005
> > We are running 1.0.9 STABLE on all of our machines. I am about try
> > and upgrade one machine to CVS HEAD as all this echo cancellation
> > improvements sound enticing. Can anyone recommend
> >
> > a) A procedure to cleanly upgrade from STABLE to HEAD
> >
> > b) A procedure to ensure I can back out and go back to 1.0.9 easily
> >
> > I have looked on the wiki but couldn't find much about this.....
> >
>
> The easiest thing, I'd think, would be just to install the HEAD with
> an entirely different basedir and don't touch your existing install
> at all. That way it is a simply matter of running a different
> executable to switch between the old and the new. That's what I did
> here, at any rate, and it worked nicely, but my living-room is
> certainly not a production environment. Stay tuned for possible
> contradictions from the pros.
That's one way to do it. Another is to rename/move the directory
containing the compiled modules. For example, on a RH box, just do
mv /usr/lib/asterisk/modules /usr/lib/asterisk/modules-Oct27
The above renames the directory for asterisk modules; do the same
for zaptel and libpri modules whereever they are installed on your
distro.
Then if you have to back out to 1.0.9, reverse the above and restart
asterisk.
The more professional way to accomplish the objective is to designate
one machine as your pre-production test box, and use it to stage any
and all upgrades. Test the changes 'before' impacting production as
you will find the syntax of several statements in your *.conf files
have changed, new features have been added, default config values have
changed (in some cases), and simply installing (or moving) new executables
is not going to address your entire system test requirements. How many
of these changes actually impact your operation is 100% dependent on
what you've implemented in asterisk under 1.0.9.
When you checkout the cvs-head stuff, look for and read the readme's,
upgrade.txt, and compare sample config files.
Yet another way is to keep your source files in different directories
like this:
asterisk asterisk-Oct21 libpri-May30 zaptel-Jul14
asterisk-addons asterisk-Oct9 libpri-Oct7 zaptel-Jun24
asterisk-addons-Old asterisk-Sep27 libpri-Sep27 zaptel-May12
asterisk-Aug15 asterisk-Sep9 libpri-Sep9 zaptel-May30
Using this approach and looking at the asterisk directories only as
an example, the "asterisk" directory always contains the running
src and the other directories contain older versions. Renaming the
directory, doing a make clean followed by a make install can be used
to reinstall any old version. The approach always gives you multiple
recovery methods should the current src not be acceptable to your
operation.
More information about the asterisk-users
mailing list