[Mpuls-commits] r4973 - base/trunk
scm-commit@wald.intevation.org
scm-commit at wald.intevation.org
Wed May 18 15:07:05 CEST 2011
Author: torsten
Date: 2011-05-18 15:07:01 +0200 (Wed, 18 May 2011)
New Revision: 4973
Modified:
base/trunk/ChangeLog
base/trunk/INSTALL
Log:
Updated Install notes. Notes are now in german language.
Modified: base/trunk/ChangeLog
===================================================================
--- base/trunk/ChangeLog 2011-05-18 07:49:08 UTC (rev 4972)
+++ base/trunk/ChangeLog 2011-05-18 13:07:01 UTC (rev 4973)
@@ -5,6 +5,7 @@
robust. Fixed handling of c.filter attribute.
* mpulsweb/templates/tags/tags.mako: Fixed Rendering of tag icons in
mpuls_s or JMD. use url_for method.
+ * INSTALL: Updated Install notes. Notes are now in german language.
2011-05-16 Torsten Irländer <torsten.irlaender at intevation.de>
Modified: base/trunk/INSTALL
===================================================================
--- base/trunk/INSTALL 2011-05-18 07:49:08 UTC (rev 4972)
+++ base/trunk/INSTALL 2011-05-18 13:07:01 UTC (rev 4973)
@@ -1,138 +1,186 @@
-INSTALL (Debian Lenny)
-======================
-1. Requirements
+1. Einrichten eines dedizierten Nutzers
+#######################################
- pylons
- ------
- apt-get install python-pylons
- (>= 0.9.7, can be found in lenny backports)
- apt-get install python-psycopg2
- apt-get install python-pybabel
+Für den Betrieb einer mpuls Anwendung wird auf dem Server ein deizierter System-Nutzer 'mpuls' erstellt:
- libformed
- ---------
- wget \
- http://wald.intevation.org/frs/download.php/710/libformed_0.1.tar.gz
- tar xzvf libformed.tar.gz
- cd libformed
- python setup.py install
+ # Als root
+ adduser --system --home /home/mpuls mpuls
+ chsh -s /bin/sh mpuls
+ su - mpuls
- libmpuls
- --------
- wget \
- http://wald.intevation.org/frs/download.php/705/libmpuls_0.4.4.tar.gz
- tar xzvf libmpuls_0.4.4.tar.gz
- cd libmpuls_0.4.4
- python setup.py install
+Verzeichnisstruktur
+==================
- mpuls
- -----
- svn checkout \
- https://svn.wald.intevation.org/svn/mpuls/wasko/branches/2.0 mpulsweb
+Die Installation einer mpuls-Anwendung wird folgende Verzeichnisstruktur anlegen:
-2. Installation
+ /home
+ `-- mpuls
+ `-- ${CONFIG}
+ |-- db -> releases/current/${CONFIG}db
+ |-- libformed -> releases/current/libformed
+ |-- libmpuls -> releases/current/libmpuls
+ |-- ${CONFIG}web -> releases/current/${CONFIG}web
+ |-- mpulsweb -> releases/current/mpulsweb
+ |-- production.ini
+ `-- releases
+ |-- current -> ${CONFIG}_${VERSION}
+ `-- ${CONFIG}_${VERSION}
- The server can be run in 3 ways. In general the three ways differ in
- the way the user credentinals to connect to the database are provided.
- In general the crededtionals can be provided in a configuration file,
- or within the SSL-Client certificate. The latter needs a apache server
- involved which can extract these information from the SSL-Client
- certifiacte. If a database name is configured in the "ini" file it
- will be taken for the connection. Leave the databasename blank, to let
- the serve look for the credentionals in the HTTP-Headers.
+Unterhalb von '/home/mpuls/' liegen die verschiedenen Ausprägungen die hier
+expemplarisch '${CONFIG}' genannt sind. Jede Ausprägung enthält alle
+notwendigen Komponenten eines Servers. Es ist daher durchaus möglich, mehrere
+unterschiedliche Ausprägungen parallel nebeneinander (auch in verschiedenen
+Versionen) zu betreiben.
- 2.1 Standalone paster server
- The credetionals are provided in the "ini" file.
-
- cd mpulsweb
- cp development.ini wasko.ini
- # Configure wasko.ini for for needs. See details below
- paster serve wasko.ini
- -> Server is up and running. :)
+Die unterschiedlichen Versionen sind unter '/home/mpuls/${CONFIG}/releases'
+angelegt. Auf die jeweils aktuelle Version verweist der Link 'current'. Ein
+Wechsel zwischen verschiedenen Programversionen ist durch das umhängen des
+Links und Neustarten der Anwendung möglich.
- 2.2 Standalone paster server behind a apache reverse proxy.
- The credentionals are taken from the SSL-certificate and are added
- to the HTTP-Header. Setup a stand alone server as described above.
- Use 'contrib/apache/apache-site-proxy.conf' as base for your
- configuration of your apache server.
+Während sich die Konfiguration und die Funktiononalität zwischen den
+verschiedenen Versionen unterscheidet, liegt die Datein 'production.ini' auf
+der Ebene von 'home/mpuls/${CONFIG}' und enhält Konfigurationen wie die
+DB-Verbindung etc., die sich nicht zwischen den verschiedenen
+Programmversionen unterscheiden.
- 2.3 As WSGI application in Apache (mod_wsgi)
- The credentionals are taken from the SSL-certificate and are added
- to the HTTP-Header.
- Use 'contrib/apache/apache-site-wsgi.conf' and
- 'contrib/apache/mpuls.wsgi' as base for your apache configuration.
+Installation der Anwendung
+==========================
+Die Installation erfolgt auf einem Debian Lenny-System.
+Vorbedingung (Benötigte Pakete)
-CONFIGURATION
-=============
+Bevor die Anwendung installiert werden kann, muss sichergestellt werden, das
+die benötgten Pakete bereits installiert sind. Pylons wird aus den Backports
+installiert. Es wird die Version 0.9.7 benötigt.
-1. In the ini file:
+ # Als root
- # Choose whatever you want
- mpuls.app.name="MY MPULS APP"
- # Give name of the configuration file.
- mpuls.app.config=%(here)s/wasko.json
- # Choose the correct foldername where your application is located
- mpuls.app.instance=mympuls
- mpuls.app.indexcontroller=mpuls
+ # Eintragen der Backports.
+ echo deb http://backports.debian.org/debian-backports \
+ lenny-backports main \
+ >> /etc/apt/sources.list
+ apt-get update
- * Setup database connection. Only define databasename if you do not
- want the databasename comming from the SSL-certificate!
+ # Installation der Anwendung
+ apt-get install -t lenny-backports \
+ python-pylons
+ apt-get install libapache2-mod-wsgi \
+ python-pybabel \
+ python-excelerator \
+ python-psycopg2 \
+ gettext \
+ screen
+
+ # Sofern auch eine Datenbank auf dem Server laufen soll:
+ apt-get install postgresql-8.3 \
+ postgresql-plpython-8.3 \
+ pwgen
-2. Currently there are no more modifications needed. wasko.json already is
-ready to run.
+ # Locales konfigurieren
+ dpkg-reconfigure locales
+ # de_DE.UTF-8 ist Standar
+Ausrollen der Anwendung
+=======================
-CASEMANAGEMENT CONFIGURATION
-============================
+Die Installation erfolgt auf Basis der zuvor erstellten Installationpakete.
+Dieser werden vor der Installation auf den entsprechenden Webserver per scp
+nach '/tmp' kopiert. Mit den nun folgenden Befehlen wird die oben genannte
+Verzeichnisstruktur erstellt und die Anwendung installiert.
-Field Configuration
--------------------
+ su - mpuls
+ VERSION=1.0
+ TYPE=xyz
-The json configuration file can contain field-specific settings for each
-formed-field. These settings define whether to show a field in the
-default case-digest or whether the user can search for it or whether it
-will be automatically be retrieved from the database in the search
-results. See the comment for the "case, fields" setting in
-mpulsweb/lib/config.py and the doc-string of the Field class
-mpulsweb/model/case.py for details.
+ # Erstellen eines Verzeichnis für die Ausprägung
+ mkdir $TYPE
+ cd $TYPE
+ mkdir releases
+ cd releases
+ # Entpacken der Version
+ tar xzvf /tmp/${TYPE}_${VERSION}.tar.gz
+ mv tmp/releases/${TYPE}_${VERSION} .
+ rm -r tmp
-Columns in case overview/search results
----------------------------------------
+ # Erstellen der der Links auf die aktuelle Version
+ rm current
+ ln -s ${TYPE}_${VERSION} current
+ cd ..
+ for d in `find releases/current/ -maxdepth 1 -type d \
+ | grep -v current/$`;
+ do ln -s $d;
+ done
+ mv ${TYPE}db db
-Which columns are shown for whom in which way on the search results page
-(URL /case_overview) is determined on two different localtions:
+ # Sprachdateien für libformed erstellen
+ cd libformed
+ python setup.py compile_catalog
+ cd ..
-1. The field configuration form above. See details there and
-2. the python list called fields near the top of the template
-waskaweb/templates/casemanagement/caselist.mako. See the comments there for
-more information.
+ # Sprachdateien für mpulsweb erstellen
+ cd mpulsweb
+ python setup.py compile_catalog
+ cd ..
-LOGBOOK CONFIGURATION
+ # Übersetzen aller Sprachdateien und Ersetzen des Versions- und
+ # Datumsstring
+ cd ${TYPE}web
+ # Übersetzen aller po-Dateien in die entsprechenden mo-Dateien
+ for f in $(find . -name \*.po);
+ do msgfmt ${f} -o $(echo ${f} | sed -e "s/\.po$/.mo/g");
+ done
+ cd ..
+ cd mpulsweb
+ DATE=$(date +%d.%m.%Y)
+ sed -i -e s/REVISION/${VERSION}/g mpulsweb/lib/config.py
+ sed -i -e s/RELEASEDATE/${DATE}/g mpulsweb/lib/config.py
+
+Einrichten einer Datenbank
+==========================
+
+Cluster anlegen
+---------------
+
+ # Als root
+ TYPE=xyz
+ PORT=5433
+ pg_createcluster -p ${PORT} --lc-collate=de_DE.utf8 -lc-ctype=de_DE.utf8 --start 8.3 $TYPE
+ cd /home/mpuls/${TYPE}/db
+ chown postgre: -R *
+
+Datenbank anlegen
+---------------
+
+ # Als postgres
+ TYPE=xyz
+ cd /home/mpuls/${TYPE}/db
+ cd db_setup # in das Verzeichnis in dem (bin, install und update liegen)
+ psql -p ${PORT} -f mpuls-init-cluster.sql
+ echo testdb > KA_list
+ sh bin/create_databases.sh ${PORT}
+ -> result_list enthält Password für den "adm"-Nutzer
+
+Betrieb der Anwendung
=====================
+An dieser Stelle wird nur grundsätzlich der Betrieb der Software unter
+Verwendung des "Paste"-Servers beschrieben. Andere Betriebsarten wie der
+Betrieb im Apache über mod_wsgi ist nicht Teil dieser QUICK-Install Anleitung.
-Configuration of available types of logbook entries and their categories is
-done in the json file:
+Konfiguration der Anwendung
+---------------------------
-Example:
+ su - mpuls
+ TYPE=xyz
+ cd ${TYPE}/${TYPE}web
+ vim production.ini
+ # Parameter für Datenbankverbindung anpassen.
-"logbook": {
- "categories": [
- {
- "name": "unmittelbare Arbeit mit dem Jugendlichen",
- "items": ["1", "2", "3"]
- }
- ... more categories ...
- ],
- "descriptions": [
- {
+Starten der Anwendung
+---------------------
- "1": "Gespräch mit dem/der Jugendlichen",
- "2": "Kompetenzfeststellung",
- "3": "Korrespondenz mit dem/der Jugendlichen"
- ... more descriptions ...
- }
- ]
-}
-
+ su - mpuls
+ TYPE=xyz
+ export PYTHONPATH=/home/mpuls/$TYPE/libmpuls/:/home/mpuls/$TYPE/libformed/:/home/mpuls/$TYPE/mpulsweb/:PYTHONPATH
+ cd ${TYPE}/${TYPE}web
+ paster serve --reload production.ini
More information about the Mpuls-commits
mailing list