view contrib/make_flys_release/README @ 5158:a9658d43b621

added missing constraints in schema (mostly for Oracle)
author Tom Gottfried <tom@intevation.de>
date Fri, 01 Mar 2013 13:28:45 +0100
parents 415ac9bc5a56
children 4355b4cecef8
line wrap: on
line source
Konfiguration:
==============
Im `confs` Verzeichnis liegen Konfigurationsdateien, die für jede FLYS
Installation angepasst werden müssen (Ports, Hosts, Datenbank-Connection, etc).

In der `make_flys_release.sh` kann über die Variable `RELEASE` ein TAG aus dem
HG Repository ausgewählt werden, welches für den Bau von FLYS verwendet werden
soll.

Außerdem muss in der `make_flys_release` eingestellt werden, ob man FLYS für
eine Oracle oder Postgresql Datenbank bauen will. Im Verzeichnis sind
spezifische Libraries im `libs_oracle` und `libs_postgresql` Verzeichnis
enthalten. In der `make_flys_release` muss zurzeit in Zeile 71-77 eingestellt
werden, welche Libs (Oracle / Postgresql) wieder aus dem Zielverzeichnis
entfernt werden sollen.

TODOS:
======
- auf return Codes der einzelnen Aufrufe (mvn package, etc) reagieren, und den
  Bau ggf abbrechen
- Konfig-Option für den Bau für Oracle und Postgresql integrieren.
- Libs für Postgresql / Oracle besser in den Build-Prozess integrieren

Prozess:
========
Nachdem die Konfigurationen angepasst wurden, kann das Skript mittels
  sh make_release.sh
von der Konsole gestartet werden. Anschließend werden die Quellen des
dive4elements, des HTTP-Clients und von FLYS über SSH aus dem HG Repository
ausgecheckt. In der `make_flys_release.sh` ist dazu der Name des HG Users in der
zweiten Zeile anzupassen. Die Quellen werden anschließend mit Maven gebaut.

Für den Client wird OpenLayers-2.11 heruntergeladen und in den Client
verschoben. Zurzeit wird das komplette OpenLayers-2.11 Verzeichnis in den Client
verschoben. Dies ist jedoch nur für die Entwicklung sinnvoll.

Das Resultat des Skripts ist ein tar.gz, welches zwei Verzeichnisses beinhaltet:
`server` und `client`. Im Server sind alle Konfigurationen sowie notwendige
Bibliotheken zum Starten des FLYS Servers enthalten. Im Client ist lediglich das
WAR Archiv für einen Servlet Container (z.B. Tomcat) enthalten.

Importer:
=========
Das script um den Importer zu bauen und zu paketieren liegt unter 
bin/make-importer-package.sh dies muss man anpassen in dem man Pfade angibt
unter welchem sich weitere pakete befinden.
Um das Paket zu bauen muss rpm2cpio installiert sein.

Benötigt werden in den einzustellenden Verzeichnissen:
EXTRAS:
    - libgdal1-1.9.0-intevation1.x86\_64.rpm
    - gdal-1.9.0-intevation1.x86\_64.rpm 
    - python-gdal-1.9.0-intevation1.x86\_64.rpm
ORACLE:
    - cx\_Oracle-5.1.2-11g-py26-1.x86\_64.rpm
    - instantclient-basic-linux-x86-64-11.2.0.2.0.zip
    - instantclient-sdk-linux-x86-64-11.2.0.2.0.zip
    - instantclient-sqlplus-linux-x86-64-11.2.0.2.0.zip

http://dive4elements.wald.intevation.org