ItEr32S13ImplantacionAplicacionItEr31S16: Update scripts and installation howtos

This commit is contained in:
Jose Maria Casanova Crespo 2009-10-28 21:59:02 +01:00
parent 6812e03d15
commit 1397ef2da5
4 changed files with 239 additions and 0 deletions

View file

@ -0,0 +1,172 @@
----------------- Creación e configuración da base de datos
$ sudo apt-get install postgresql
$ sudo su -c "psql" postgres
<----------------- Executar os seguintes comandos SQL ----------
create database navaldev;
create user naval with password 'naval';
grant all privileges on database navaldev to naval;
\q
------------------------------------------------------------------
IMPORTANTE a instalación supon a instalación sobre unha ubuntu jaunty.
------------------ Instalando Tomcat e a aplicación --------------
$ sudo apt-get install openjdk-6-jre tomcat6 libpg-java
en /etc/tomcat6/conf/context.xml incluimos o código o elemento XML Resource
para permitir o acceso a base de datos
---------------------- context.xml -----------------------------
<Context>
...
<Resource name="jdbc/navalplanner-ds" auth="Container"
type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="naval" password="naval"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/navaldev"/>
...
</Context>
---------------------- ---------------------------------------
incluimos a seguintes directivas en /etc/tomcat6/policy.d/04webapps.policy
-------------------------- 04webapps.policy-----------------------
grant codeBase "file:/var/lib/tomcat6/webapps/navalplanner-webapp/-" {
permission java.security.AllPermission;
};
grant {
permission java.net.SocketPermission "127.0.0.1:5432","resolve,connect";
permission java.net.SocketPermission "localhost:5432","resolve,connect";
};
------------------------------------------------------------------
incluimos a seguintes directivas en /etc/tomcat6/policy.d/03catalina.policy
dentro dos permisos de "tomcat-juli.jar"
---------------------------03catalina.policy ----------------------
permission java.io.FilePermission "${catalina.base}${file.separator}webapps${file.separator}navalplanner-webapp${file.separator}WEB-INF${file.separator}classes${file.separator}logging.properties", "read";
-------------------------------------------------------------------
Instalamos a librería de acceso a jdbc a postgresql en tomcat, o jar está no paquete libpg-java:
# sudo ln -s /usr/share/java/postgresql-jdbc3-8.2.jar /usr/share/tomcat6/lib
Instalamos a última versión da aplicación no tomcat
$ cd /var/lib/tomcat6/webapps
$ sudo wget http://naval.igalia.com/downloads/navalplanner-webapp.war
$ sudo chown tomcat6.tomcat6 navalplanner-webapp.war
Reiniciamos o tomcat para que recolla todas as modificacións da configuración:
$ sudo /etc/init.d/tomcat6 restart
Neste intre a aplicación debería estar accesible en : http://localhost:8080/navalplanner-webapp/
---------------------------------------------------------------------------
Instalación de scripts de actualización, copiaranse os seguintes scripts no Escritorio:
* navalapp-scripts-update.sh: ao executarse descarga as últimas versión dos scripts navalapp-update.sh e navalapp-database-update.sh
* navalapp-application-update.sh: ao executarse descarga e instala a última versión da aplicación dispoñible
* navalapp-database-update.sh: carga a última versión da base de datos por defecto.
----navalapp-scripts-update.sh ----------------------------------
#!/bin/sh
set -e
BASE_URL=http://naval.igalia.com/downloads
wget $BASE_URL/navalapp-application-update.txt
wget $BASE_URL/navalapp-database-update.txt
mv navalapp-application-update.txt navalapp-application-update.sh
mv navalapp-database-update.txt navalapp-database-update.sh
chmod +x navalapp-application-update.sh navalapp-database-update.sh
echo Se han actualizado los scripts de actualización pulse una tecla para terminar
read foo
----------------------------------------------------------------
--- navalapp-database-update.sh ----------------------------------
#!/bin/sh
set -e
CONFIG_FILENAME=navalapp-download-config.txt
UPDATE_CONFIG_URL=http://naval.igalia.com/downloads/$CONFIG_FILENAME
wget $UPDATE_CONFIG_URL
. ./$CONFIG_FILENAME
rm -f $CONFIG_FILENAME
DUMP_FILENAME_UNCOMPRESSED=`echo $NAVAL_DATABASE_DUMP_FILENAME|sed "s/\.bz2$//g"`
cd /tmp
sudo su -c "rm -f /tmp/$NAVAL_DATABASE_DUMP_FILENAME"
sudo su -c "rm -f /tmp/$DUMP_FILENAME_UNCOMPRESSED"
wget $NAVAL_DATABASE_DUMP_URL
bunzip2 $NAVAL_DATABASE_DUMP_FILENAME
sudo su -c "psql navaldev < $DUMP_FILENAME_UNCOMPRESSED" postgres
cd -
echo Se han actualizado la base de datos $DUMP_FILENAME_UNCOMPRESSED con la versión inicial de datos de prueba
echo Pulse una tecla para terminar
read foo
------------------------------------------------------------------------
----navalapp-application-update.sh ----------------------------------
#!/bin/sh
set -e
CONFIG_FILENAME=navalapp-download-config.txt
UPDATE_CONFIG_URL=http://naval.igalia.com/downloads/$CONFIG_FILENAME
wget $UPDATE_CONFIG_URL
. ./$CONFIG_FILENAME
rm -f $CONFIG_FILENAME
HOME_NAVALAPP=/var/lib/tomcat6
cd $HOME_NAVALAPP/webapps
sudo rm -f $NAVAL_APP_WAR_FILENAME
sudo wget $NAVAL_APP_WAR_URL
sudo chown tomcat6.tomcat6 $NAVAL_APP_WAR_FILENAME
sudo /etc/init.d/tomcat6 restart
cd -
echo Se han actualizado la aplicacion puede consultarla en http://localhost:8080//navalplanner-webapp/
echo Pulse una tecla para terminar
read foo
------------------------------------------------------------------------
Cambianse os permisos para que sexan executables.
chmod +x navalapp-database-update.sh navalapp-application-update.sh navalapp-scripts-update.sh
Comprobarase que os scripts se executan correctamente e a aplicación segue a funcionar.
------------------------------------------------------------------------
Se quixeramos facer un volcado da base de datos so precisariamos empregar o seguinte comando, isto non é necesario para a instalación.
$ pg_dump -h localhost -U naval -c -F p -v -f bdxestionproducion.dump navaldev

View file

@ -0,0 +1,24 @@
#!/bin/sh
set -e
CONFIG_FILENAME=navalapp-download-config.txt
UPDATE_CONFIG_URL=http://naval.igalia.com/downloads/$CONFIG_FILENAME
wget $UPDATE_CONFIG_URL
. ./$CONFIG_FILENAME
rm -f $CONFIG_FILENAME
HOME_NAVALAPP=/var/lib/tomcat6
cd $HOME_NAVALAPP/webapps
sudo rm -f $NAVAL_APP_WAR_FILENAME
sudo wget $NAVAL_APP_WAR_URL
sudo chown tomcat6.tomcat6 $NAVAL_APP_WAR_FILENAME
sudo /etc/init.d/tomcat6 restart
cd -
echo Se han actualizado la aplicacion puede consultarla en http://localhost:8080/navalplanner-webapp/
echo Pulse una tecla para terminar
read foo

View file

@ -0,0 +1,26 @@
#!/bin/sh
set -e
CONFIG_FILENAME=navalapp-download-config.txt
UPDATE_CONFIG_URL=http://naval.igalia.com/downloads/$CONFIG_FILENAME
wget $UPDATE_CONFIG_URL
. ./$CONFIG_FILENAME
rm -f $CONFIG_FILENAME
DUMP_FILENAME_UNCOMPRESSED=`echo $NAVAL_DATABASE_DUMP_FILENAME|sed "s/\.bz2$//g"`
cd /tmp
sudo su -c "rm -f /tmp/$NAVAL_DATABASE_DUMP_FILENAME"
sudo su -c "rm -f /tmp/$DUMP_FILENAME_UNCOMPRESSED"
wget $NAVAL_DATABASE_DUMP_URL
bunzip2 $NAVAL_DATABASE_DUMP_FILENAME
sudo su -c "psql navaldev < $DUMP_FILENAME_UNCOMPRESSED" postgres
cd -
echo Se han actualizado la base de datos $DUMP_FILENAME_UNCOMPRESSED con la versión inicial de datos de prueba
echo Pulse una tecla para terminar
read foo

View file

@ -0,0 +1,17 @@
#!/bin/sh
set -e
BASE_URL=http://naval.igalia.com/downloads
wget $BASE_URL/navalapp-application-update.txt
wget $BASE_URL/navalapp-database-update.txt
mv navalapp-application-update.txt navalapp-application-update.sh
mv navalapp-database-update.txt navalapp-database-update.sh
chmod +x navalapp-application-update.sh navalapp-database-update.sh
echo Se han actualizado los scripts de actualización pulse una tecla para terminar
read foo