km.azerttyu.net

Accueil > Du km au texte > informatique > Installer E-venemement 2.x

Installer E-venemement 2.x

lundi 7 novembre 2011, par km

Dans le monde de la billetterie, il n’existe pas beaucoup de solutions libres, à l’heure d’aujourd’hui, je n’ai identifié que 2 outils :

  • Fusion Ticket, un projet anglophone sans activité depuis début 2010
  • e-venement, un projet francophone toujours actif

Pour le besoin de ma compagnie de théâtre nous avons décidé de tester e-venement. Cet article est un retour d’expérience suite au manque de la documentation officielle actuelle concernant la dernière version publiée.

Pré requis

Pour la suite de l’article nous considérerons que nous avons la main sur un serveur LAPP (dans notre cas une Debian).
De même, le répertoire home de l’utilisateur est considéré comme un répertoire web accessible depuis n’importe quel navigateur.

E-venement est une application Symfony, il est donc nécessaire d’obtenir :

Installer l’application

L’installation d’une application Symfony et de son environnement est assez simple.
Il s’agit de dézipper les 2 archives précédemment obtenues :

  1. serveur:~# wget http://www.symfony-project.org/get/symfony-1.4.15.zip
  2. serveur:~# unzip symfony-1.4.15.zip
  3. serveur:~# wget http://download.gna.org/e-venement/e-venement-2.0-rc2.tar.gz
  4. serveur:~# tar -xvzf e-venement-2.0-rc2.tar.gz
  5. serveur:~# ls
  6. e-venement-2.0-rc2 e-venement-2.0-rc2.tar.gz symfony-1.4.15 symfony-1.4.15.zip

Télécharger

Ensuite comme indiqué dans la documentation officielle, nous devons installer symfony comme bibliothéque de notre application e-venement.

  1. serveur:~# mv symfony-1.4.15 e-venement-2.0-rc2/lib/vendor/symfony

Configurer PHP

Il est à noter que pour la suite de l’installation de symfony, la configuration de PHP est insuffisante, il faut augmenter sa mémoire disponible pour le mode CLI.

  1. serveur:~# nano /etc/php5/cli/php.ini
  2. memory_limit = 320M

Télécharger

Configurer sa base de données

Les développeurs de e-venement préconise l’utilisation de PostgreSQL.
Son installation simple se fait via serveur:~# apt-get install postgresql ou bien apt-get install postgresql-8.4

Nous créons un compte et une base pour l’application :

  1. serveur:~# createuser evenement -P
  2. Saisissez le mot de passe pour le nouveau rôle :
  3. Saisissez-le à nouveau :
  4. Le nouveau rôle est-il super-utilisateur ? (o/n) o

Télécharger

Configurer Symfony

Pour que l’application puisse correctement fonctionner, 2 fichiers sont à mettre à jour :

  • config/autoload
  • config/database.yml
  1. serveur:~# mv e-venement-2.0-rc2/config/autoload.inc.php.template e-venement-2.0-rc2/config/autoload.inc.php
  2. serveur:~# mv e-venement-2.0-rc2/config/databases.yml.template e-venement-2.0-rc2/config/databases.yml

Télécharger

Enfin nous pouvons déclarer la base postgres précédemment créée :

  1. serveur:~# nano e-venement-2.0-rc2/config/databases.yml
  2. all:
  3. doctrine:
  4. class: sfDoctrineDatabase
  5. param:
  6. dsn: 'pgsql:host=localhost;dbname=evenement'
  7. username: evenement
  8. password: motdepasse

Télécharger

A cette étape nous venons de rendre l’application "éxecutable", c’est à dire que nous pouvons maintenant configurer à proprement parler l’application e-venement

Activer la base de données

Du fait que nous avons une application symfony, nous pouvons générer la structure et l’ensemble des données de la base via le module doctrine.

  1. serveur :~/e-venement-2.0-rc2# php symfony doctrine:build --all --application=default

Si par la suite vous voulez réinitialiser la base de données ou utiliser un autre serveur de données, vous pourrez le faire en mettant à jour config/databases.yml et en relançant la commande précédente.

Attention à ce moment, il n’est pas encore possible de tester l’application, aucun compte utilisateur n’est encore disponible.

Créer un premier compte administrateur

C’est le module guard de symfony qui gére les comptes utilisateurs et leurs droits.
Pour commencer nous créons un compte utilisateur sans droit via :

  1. serveur :~/e-venement-2.0-rc2# php symfony guard:create-user email@test.com evenement motdepasse
  2. >> guard Create user "evenement"

Télécharger

Nous pouvons maintenant le promouvoir administrateur ainsi :

  1. serveur :~/e-venement-2.0-rc2# php symfony guard:promote evenement
  2. >> guard User identified by "evenement" username has been promoted as super administrator

Télécharger

Teste l’application

Enfin nous pouvons tester pour de vrai l’application. Il est possible de voir le rendu sur notre site de demonstration. Le compte test est evenement avec le mot de passe evenement.
Une image pouvant parler mieux voici ce qui devrait être obtenu :


Ressources :

Messages

Un message, un commentaire ?

Qui êtes-vous ?
Votre message
  • Pour créer des paragraphes, laissez simplement des lignes vides.