Hi out there,
da es offenbar immer wieder probleme mit Updates gibt und das auch bei
mir selber nicht immer absolut reibungslos läuft, hier ein Script (als
Kochrezept, bitte nicht direkt so ausführen!), wie ich vorgehe.
Startpunkt ist ein bereits entpackter Tarball ohne Änderungen (OTRS_NEW)
und ein laufendes System (OTRS_OLD). Ich empfehle auf JEDEN Fall
sicherheitshalber vorher noch ein dump der alten Datenbank!
Vielleicht hilfts dem einen oder anderen, ansonsten würde ich mich auch
über Kommentare freuen, was ich vergessen haben oder besser machen könnte.
Gruß
Martin
=======================================================
#!/bin/bash
##############################################
## OTRS patch level upgrade script by marte ##
##############################################
#
# $Rev: 62 $
# $Date: 2013-09-02 12:46:17 +0200 (Mon, 02 Sep 2013) $
OTRS_BASE=/mnt/data
OTRS_NEW=$OTRS_BASE/otrs-3.2.9
OTRS_OLD=$OTRS_BASE/otrs-3.2.6
##############################################
[ ! -d $OTRS_NEW || ! -d $OTRS_OLD ] && echo "OTRS-Verzeichnisse nicht
gefunden, Variablen überprüfen"
cp -av $OTRS_OLD/Kernel/Config.pm $OTRS_NEW/Kernel/
cp -av $OTRS_OLD/Kernel/Config/GenericAgent.pm $OTRS_NEW/Kernel/Config
cp -av $OTRS_OLD/Kernel/Config/Files/ZZZAuto.pm
$OTRS_NEW/Kernel/Config/Files
# Artikel kopieren: ACHTUNG, eventuell Bug! Quell- und Zieldir
vergleichen!!!
[ -d $OTRS_OLD/var/article ] && cp -arv $OTRS_OLD/var/article/*
$OTRS_NEW/var/article/
# CMDB Anhaenge (Cape-IT Addon)
[ -d $OTRS_OLD/var/attachments ] && cp -arv $OTRS_OLD/var/attachments
$OTRS_NEW/var/
# eigene/veränderte Templates
echo "> copying non-standard templates... <"
for d in $( find $OTRS_OLD/Kernel/Output/HTML/* -maxdepth 0 -type d ); do
if [ "$( basename $d )" != "Standard" ]; then
cp -arv $d $OTRS_NEW/Kernel/Output/HTML/
fi
done
# Thirdparty Javascript Addons (a.e. lightbox)
echo "> looking for js Addons... <"
for d in $OTRS_OLD/var/httpd/htdocs/js/thirdparty/*; do
if [ ! -d $OTRS_NEW/var/httpd/htdocs/js/thirdparty/$( basename $d )
]; then
echo -n ">> $d not found in OTRS_NEW. Copy? [y/N] "
read ans
if [ "$ans" = "Y" ] || [ "$ans" = "y" ]; then
cp -arv $d $OTRS_NEW/var/httpd/htdocs/js/thirdparty
fi
fi
done
# eigene Config-Files
echo "> looking for own files in Kernel/Config/files... <"
for f in $OTRS_OLD/Kernel/Config/Files/*; do
if [ ! -f $OTRS_NEW/Kernel/Config/Files/$( basename $f ) ]; then
echo -n ">> $f not found in OTRS_NEW. Copy? [y/N] "
read ans
if [ "$ans" = "Y" ] || [ "$ans" = "y" ]; then
cp -av $f $OTRS_NEW/Kernel/Config/Files
fi
fi
done
# veränderte Skripte
echo "> copying Custom-Dir... "
cp -arv $OTRS_OLD/Custom/* $OTRS_NEW/Custom/
echo "> rebuilding Config <"
# Config neu generieren, Cache löschen
bin/otrs.RebuildConfig.pl
bin/otrs.DeleteCache.pl
setfacl -R -m u:www-data:rwX $OTRS_NEW
setfacl -R -m d:u:www-data:rwX $OTRS_NEW
setfacl -R -m u:otrs:rwX $OTRS_NEW
setfacl -R -m d:u:otrs:rwX $OTRS_NEW
# hat sich was an der default-Config geändert?
echo "> comparing Default configs... <"
diff $OTRS_OLD/Kernel/Config/Defaults.pm $OTRS_NEW/Kernel/Config/Defaults.pm
echo "> all done, you can restart cron and apache. <"
=======================================================
--
EDV-Service Martin Tettke
Internet Services / Network-Security / Consulting
Dipl.-Ing. Martin Tettke
Schillerstr. 78B
12305 Berlin
Tel 030 / 97 88 78 10
Fax 030 / 97 88 78 09
Mobil 0178 / 473 13 55
* i...@tettke-it.de * www.tettke-it.de *
---------------------------------------------------------------------
OTRS mailing list: otrs-de - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs-de
To unsubscribe: http://lists.otrs.org/mailman/listinfo/otrs-de