Pour l'installation du logiciel client-web OpenERP, aussi connu sous le nom etiny, se remporter à l'article Installer le clientweb OpenERP avec l'outil automatique xoe

Pour plus d'information sur l'utilisation de xoe, se reporter au manuel.de xoe

Durée de la procédure

  • 30 minutes

Difficulté : niveau avancé

  • Connaître les principales commandes shell,
  • savoir paramétrer un serveur de base,
  • savoir utiliser vi pour éditer deux fichiers.
  • L'utilisation d'un serveur OpenERP avec des données réelles nécessite la maîtrise de l'administration des serveurs Linux et du logiciel OpenERP.

Attention : brouillon, non testé à ce jour, utilisé sous debian-lenny

Je ne sais pas pourquoi, la traduction de Google écrit xoe en lettres capitales en traduction anglaise, lisez bien xoe en petites lettres dans tout cet article.

Connexion sous root, ou bien utiliser sudo devant chaque commande

Sur une machine (physique ou virtuelle) installer une version minimale de debian lenny.

Que vous faudra-t-il pour mener cette procédure au bout ?

Au cours de la procédure vous devez avoir un accès "root" sur la machine physique ou virtuelle.

  1. Déterminer le nom de l'utilisateur linux qui sera utilisé pour gérer le serveur, ainsi que son mot de passe. Evitez les noms d'utilisateur ambigus comme "admin" ou "openerp". Nous utilisons "sisalpuser" sur nos serveurs. Remplacer openerp_unix_user par le nom d'utilisateur et openerp_user_password par son mot de passe. Cet utilisateur sera créé par xoe.
  2. Disposer d'un compte sur un serveur d'envoi de messagerie smtp, par exemple gmail de Google afin que le serveur puisse émettre des messages de services vers votre compte. Ces paramètres seront nécessaires pour paramétrer le fichier de configuration de ssmtp.
  3. Disposer d'une adresse mail pour recevoir ces mêmes messages. Nous utilisons des comptes gmail sur nos serveurs.
  4. Connaître l'adresse réseau de votre serveur que vous pouvez obtenir par la commande "ifconfig". Dans le cas d'un serveur virtuel, il s'agit de l'adresse du serveur virtuel et non pas l'adresse du host.
  5. Choisir un nom de service unique pour chaque service OpenERP, nous avons pris oerp-506 et oerp-5XX par la suite et les rôles postgresql, que nous avons fixés à pg-oerp-506 et pg-oerp-5XX..
  6. Choisir un mot de passe dit "super-administrateur" nécessaire pour créer, sauvegarder, restorer et supprimer des bases de données, soit ABOPASSWD1 et ABOPASSWD2 par la suite
  7. Enfin, deux exemples de serveurs sont donnés, mais vous devriez décider de la version du logiciel que vous souhaitez utiliser et les ports que vous redirigez par le par-feu, ici les versions 5.0.6 et la dernière révision disponible de la 5.0 ainsi que les ports 8071, 8072, 8073 et 8074.

Première étape : mettre en place le paysage

installer xoe

en root

cd /usr/local/bin
wget http://download.sisalp.net/xoe
chmod 755 xoe

vérifier le bon fonctionnement de xoe avec quelques commandes de base

xoe --update
xoe --version
xoe --help
Mise à jour, dépendences, utilitaires et environnement de configuration
xoe --install -server openerp_unix_user openerp_user_password

xoe enchaine l'ensemble des opérations d'installation des dépendances et crée l'utilisateur openerp_unix_user

Paramétrage complémentaire de l'environnement du serveur

adapter le fichier /etc/ssmtp pour l'envoi de mails

vi /etc/ssmtp
A partir de maintenant, quitter root et changer d'utilisateur vers openerp_unix_user
su openerp_unix_user
xoe --verbose -blabla

mettre la crontab à votre goût

crontab -e

Adapter la configuration de base de xoe

xoe --config -edit

Attention, dans ce fichier les séparateurs sont des -tab- et non des blancs

Les paramétres importants sont :

openerp_address:    10.0.0.100

mettre l'adresse réelle du serveur obtenue par la commande ifconfig,

admin_mail:         admin.openerp@domaine.ext
shop_mail:          -

votre adresse mail pour recevoir les rapports du serveur

:wq

sauvegarder et quitter l'édition du fichier de configuration

Deuxième étape : Déclarer un serveur OpenERP et préparer son installation automatique

Il faut maintenant définir votre premier serveur OpenERP en lui choisissant un nom

Vous pouvez éditer de nouveau le fichier de configuration ou bien utiliser les fonctions de déclaration de xoe

Pour ajouter un serveur OpenERP appelé oerp-506 utilisant le code de la version 5.0.6
syntaxe incertaine

xoe --config -new -directory -server oerp-506 wget http://download.sisalp.net/openerp-server-5.0.6.tar.gz server 
xoe --config -new -service oerp-506 Auto pg-oerp-506 server/bin/openerp-server.py http 8070 8071 ABOPASSWD1 
xoe --config -new -database oerp-506 serv1 save

créer une base avec ce serveur nécessitera de connaître le mot de passe ABOPASSWD1.

Une base dont le nom commencera par les lettres serv1 sera automatiquement sauvegardée par la crontab ou à l'arrêt du serveur OpenERP

Pour ajouter un deuxième serveur OpenERP appelé oerp-5XX utilisant le code de la version de bazaar de la veille au soir

xoe --config -new -directory -server oerp-5XX wget http://download.sisalp.net/openerp-server-5.uptodate.tar.gz
xoe --config -new -directory -addons oerp-5XX wget http://download.sisalp.net/openerp-addons-5.uptodate.tar.gz
xoe --config -new -directory -specific oerp-5XX wget http://download.sisalp.net/openerp-specific-5.uptodate.tar.gz
xoe --config -new -service oerp-5XX Auto pg-oerp-5XX server/bin/openerp-server.py http 8072 8073 ABOPASSWD2
xoe --config -new -database oerp-5XX serv2 save

Pour contrôle le paramétrage généré par ces commandes

xoe --config

Pour éditer le fichier de configuration

xoe --config -edit

Voici en exemple le fichier du serveur de démonstration sisalp.net

# global values
# =============
version:		2.5	Saturday_09/19/09-08:31:01
openerp_main:		/home/sisalpuser/openerp
openerp_secure_mode:	unsecure
openerp_address:	10.0.0.101
openerp_url:		openerp.sisalp.net
admin_mail:		dominique.chabord@sisalp.org
shop_mail:		service.client@bdll.fr
#--
# definition du serveur dev5
# ==========================
#--	
directory:server:dev5:		Auto	copy	/home/sisalpuser/openerp/packages/openerp-V5-server.tar.gz	server
directory:addons:dev5:		Auto	copy	/home/sisalpuser/openerp/packages/openerp-V5-addons.tar.gz	addons
directory:extra-addons:dev5:	Auto	copy	/home/sisalpuser/openerp/packages/openerp-V5-extra-addons.tar.gz	extra-addons
directory:specific:dev5:	Auto	wget	http://download.sisalp.net/specific-5.uptodate.tar.gz		specific
service:dev5:			Auto	pg-dev5	/home/sisalpuser/openerp/dev5/server/bin/openerp-server.py	http	8073	8074	admin
#--
# definition du serveur stable5
# ============================
#--	
directory:server:stable5:	Auto	wget	http://download.sisalp.net/openerp-server-5.0.6.tar.gz		server
directory:specific:stable5:	Auto	wget	http://download.sisalp.net/specific-5.uptodate.tar.gz		specific
service:stable5:		Auto	pg-stable5	/home/sisalpuser/openerp/stable5/server/bin/openerp-server.py	http	8071	8072	admin
Télécharger le code des serveurs OpenERP déclarés
xoe --directory -download

Vous pouvez ignorer le téléchargement du répertoire openerp-specific-5.uptodate.tar.gz dont le rôle est de reporter des spécificités propres au serveur, mais dans ce cas n'oubliez pas de copier le contenu de /home/openerp_unix_user/openerp/oerp-5XX/addons /home/openerp_unix_user/openerp/oerp-5XX/server/bin/addons

Troisième étape: Démarrer le serveur et contrôler son fonctionnement

Créer les rôles postgresql

avec les privilèges root (sudo ou si)

xoe --database -createuser pg-oerp-506
Puis on démarre tous les serveurs OpenERP déclarés

retour sous l'utilisateur unix

xoe --start
Contrôle
xoe --watch -running
xoe --status
Diagnostique des problèmes
xoe --log oerp-5XX

Remarques

mode secure/unsecure
  • le mode unsecure signifie que l'utilisateur unix défini au départ démarre les différents serveurs openerp. Ceux-ci ne sont donc pas emprisonnés dans l'espace d'un utilisateur spécifique. L'utilisateur unix commun n'a pas besoin d'accéder à des droits root. Il faut donc passer sous root pour créer le rôle pg-oerp-506 par la commande xoe --database -createuser pg-oerp-506
  • le mode secure signifie que chaque serveur openerp est lancé avec un utilisateur linux spécifique et ne peut aller voir ce qui se passe chez son voisin. Dans ce cas, l'utilisateur unix commun se voit attribuer la possibilité d'effectuer des tâches d'administration par sudo. la création du rôle devient xoe --database -createuser pg-oerp-506
syntaxe des commandes xoe

les commandes et options peuvent être abrégées si elles ne deviennent pas ambigües. Par exemple

xoe --verb -bl

est équivalent à

xoe --verbose -blabla

Cet article doit être vérifié et corrigé.