Comment créer un CD de démo ZOPE

Sébastien Georget

English version


Table of Contents

Pourquoi ?
Quel contenu ?
Comment ?
Installation de ZOPE
sous windows
sous linux
Préparation de la démo
Configurer le serveur pour un média en lecture seule
sous linux
sous windows
Modification du script de démarrage
Graver l'image

Pourquoi ?

Pour pouvoir réaliser une démo lors d'une présentation, ou pour distribuer une application Zope. Le serveur peut-être démarré à partir du CD-ROM sans rien écrire sur le disque dur local.

Quel contenu ?

plus les produits que vous voulez utiliser pendant votre démo, par exemple :

Comment ?

Il est possible de créer un CD pour windows, pour linux ou bien pour les deux. Quand une opération est spécifique à un système c'est précisé.

  1. Installation de ZOPE sous linux et/ou windows

  2. Création d'une instance ZOPE contenant les produits à utiliser.

  3. Lancement du serveur pour initialiser le contenu de la ZODB (FIXME : et générer le bytecode ?)

  4. Modification de la configuration du serveur pour qu'il puisse tourner en lecture seule.

  5. Gravure du CD.

Installation de ZOPE

sous windows

Téléchargez ZOPE puis lancez l'installation. Installez le dans c:\zope et choisissez une installation de type Custom. Placez l'instance de ZOPE dans c:\zope\instance.

Note

La lettre de lecteur n'importe pas, elle n'interviendra pas dans la suite.

sous linux

Il faut commencer par récupérer (ou compiler) python. Voila les options que j'ai utilisé pour compiler sur mon systéme :

        tar jxf Python-2.3.3.tar.bz2
        cd Python-2.3.3
        ./configure --prefix=/tmp/python
        make
        make install
      

Il faut ensuite compiler ZOPE

        tar zxf Zope-2.7.0.tgz
        cd Zope-2.7.0
        ./configure --prefix=/tmp/zope --with-python=/tmp/python/bin/python --optimize
        make install
      

Note

Vous pouvez certainement installer les paquets (rpm/deb) de votre distribution avec un racine différente pour arriver au même résultat.

La derniére étape consiste à créer une instance

        cd /tmp/zope/bin
        ./mkzopeinstance.py --dir /tmp/zope/instance --user admin:z0pe
      

Préparation de la démo

Vous pouvez maintenant mettre en place les produits nécessaires à la démo dans le répertoire Products de l'instance créée. Démarrez ensuite le serveur avec le script runzope présent dans le répertoire bin.

Once your application is initiated with your data, you can stop the server.

Configurer le serveur pour un média en lecture seule

Le ficher de configuration par défaut doit étre modifié pour étre indépendant du systéme sur lequel tournera la démo. Il faut également préciser que le media sera en lecture seule. Voici les principales modifications :

sous linux

        
        #%define INSTANCE /tmp/zope/instance
        #%define ZOPE /tmp/zope

        instancehome /plop

        zserver-read-only-mode on
        read-only-database on

        #comment eventlog and logger sections
        <zodb_db main>
          # Main FileStorage database
          <filestorage>
            path /plop
          </filestorage>
          mount-point /
        </zodb_db>
        
      

Le fichier est téléchargeable ici : linux/zope.conf.

sous windows

        
        %define INSTANCE \winzope\instance
        %define ZOPE \winzope

        instancehome \winzope

        zserver-read-only-mode on
        read-only-database on

        #comment eventlog and logger sections
        <zodb_db main>
          # Main FileStorage database
          <filestorage>
            path \winzope\instance\var\Data.fs
          </filestorage>
          mount-point /
        </zodb_db>
        
      

Le fichier est téléchargeable ici : windows/zope.conf.

Il faut ensuite créer le script suivant à la racine de l'instance ZOPE :

      # From : http://zope.org/Members/jens/docs/zope_on_cdrom/
      import Globals, ZODB.FileStorage, ZODB.DemoStorage

      name='%s/Data.fs' % Globals.data_dir

      base=ZODB.FileStorage.FileStorage(name, read_only=1)
      Storage=ZODB.DemoStorage.DemoStorage("Demo (%s)" % name, base)
    

Modification du script de démarrage

Le script de démarage par défaut doit étre modifié pour étre indépendant du systéme sur lequel tournera la démo. Les scripts sont disponibles ici et devront être placés à la racine du cd-rom.

Graver l'image

Voici ce que devra contenir le cd :

  • /runzope (linux)

  • /runzope.bat (windows)

  • /zope/ (linux)

  • /python/ (linux)

  • /winzope/ (windows)

Il est possible d'ajouter un autorun pour les cd des démo windows, comme c'est indiqué sur la page suivante :

http://www.zope.org/Members/jens/docs/zope_on_cdrom