doc/book/fr/03-01-bis-installation.fr.txt
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Mon, 08 Feb 2010 10:06:40 +0100
branchstable
changeset 4489 63128e8b9af9
parent 93 9c919a47e140
permissions -rw-r--r--
fix security issue #36564 (integrity error w/ RQLUniqueConstraint) by using a global lock serializing commit when some RQLUniqueConstraint is encountered.

.. -*- coding: utf-8 -*-

.. _installationGAE:

Installation de `CubicWeb` pour GoogleAppEngine
===============================================

Qu'est-ce que `LAX` ?
=======================

`LAX` (Logilab Appengine eXtension) est un framework d'application
web basé sur `Google AppEngine`.

`LAX` est un portage de la partie web de la plate-forme applicative
développée par Logilab depuis 2001.  Cette plate-forme publie des
données tirées de bases SQL, d'annuaires LDAP et de systèmes de
gestion de version. En avril 2008, elle a été portée pour fonctionner
sur le "datastore" de `Google AppEngine`.

XXX: faire un parallèle entre Django/GAE et LAX/GAE


Téléchargement des sources
==========================

- Les sources de `Google AppEngine` peuvent être récupérées à l'adresse
  suivante : http://code.google.com/appengine/downloads.html

- Les sources de `LAX` se trouvent à l'adresse suivante :
  http://lax.logilab.org/


Installation
============

Une fois décompactée, l'archive `lax-0.1.0-alpha.tar.gz`, on obtient
l'arborescence suivante::
  
  .
  |-- app.yaml
  |-- custom.py
  |-- data
  |-- ginco/
  |-- i18n/
  |-- logilab/
  |-- main.py
  |-- mx/
  |-- rql/
  |-- schema.py
  |-- simplejson/
  |-- tools/
  |   |-- generate_schema_img.py
  |   `-- i18ncompile.py
  |-- views.py
  |-- yams/
  `-- yapps/

  
On retrouve le squelette d'une application web de `Google AppEngine`
(fichiers ``app.yaml``, ``main.py`` en particulier) avec les dépendances
supplémentaires nécessaires à l'utilisation du framework `LAX`


Lancement de l'application de base
==================================

Plusieurs répertoires doivent être accessibles via la variable 
d'environnement ``PYTHONPATH`` ::

  $ export PYTHONPATH=/path/to/google_appengine:/path/to/google_appengine/lib/yaml/lib:/path/to/myapp/

Le répertoire yaml n'est nécessaire que pour le lancement des scripts
qui se trouvent dans lax/tools et pour l'exécution des tests unitaires.

Pour démarrer::

  $ python /path/to/google_appengine/dev_appserver.py /path/to/lax