Skip to content

Installation

Sébastien Le Ray edited this page Mar 16, 2018 · 2 revisions

Note : l'installateur présent sur le site au moment de l'écriture de cette page est celui de la version 4.1.0 qui date un peu. Son utilisation n'est pour l'instant pas documentée.

Prérequis

Vous aurez besoin :

  • d'un environnement git (en téléchargement pour Windows) ;
  • d'un conteneur de Servlet, pour la suite nous considérerons que Tomcat (version 8) est utilisé ;
  • d'un moteur de base de données PostgreSQL ;
  • d'un JDK, version 8 minimum.

Si vous êtes sous Linux, vous pouvez utiliser les paquets de votre distribution de manière à bénéficier des mises à jour de sécurité. À noter qu'il est conseillé d'utiliser un environnement Linux en production, celui-ci semblant mieux testé du point de vue de l'Axelor Development Kit.

Création de la base

Juste pour mémoire (commandes sous Linux) :

  • sudo -u postgres createuser axelor -P (saisissez un mot de passe et retenez-le) ;
  • sudo -u postgres createdb axelor -O axelor

Récupération des sources

Note : pour simplifier le processus, il est recommandé d'avoir un compte github et d'y avoir configuré sa clé SSH

  • Ouvrir un shell (si vous êtes sous Windows et avez installé la distribution git for Windows, vous devriez pouvoir faire un clic droit dans un dossier puis « Git Bash Here ») ;
  • Cloner les sources : git clone [email protected]:axelor/abs-webapp.git ou, si vous n'avez pas de compte GitHub, git clone https://github.com/axelor/abs-webapp.git ;
  • Accéder au répertoire nouvellement créé : cd abs-webapp ;
  • Basculer sur la branche qui vous intéresse (au moment de la rédaction de cette page, la version 5 correspond à la branche wip) : git checkout wip ;
  • uniquement si vous n'avez pas de compte GitHub (ou pas de clé SSH configurée), éditer le fichier .gitmodules pour remplacer les [email protected]: en https://github.com/ ;
  • Initialiser les modules : git submodule init ;
  • Récupérer les sources des modules (plus long que le clone initial, c'est normal) : git submodule update ;
  • Basculer les modules sur la même branche que l'application web : git submodule foreach git checkout wip

Configuration

Les éléments de configuration se situent tous dans le fichier src/main/resources/application.properties. Parmi les plus notables :

  • db.default.url contient l'URL JDBC pour l'accès à la base (jdbc:postgresql://hote_sql:port_sql/nom_base, si votre base est axelor sur la même machine que le tomcat: jdbc:postgresql://localhost:5432/axelor) ;
  • db.default.user : utilisateur de base de données ayant tous les droits sur la base ;
  • db.default.password : mot de passe de l'utilisateur de base de données ;
  • data.export.dir : chemin pour les différents exports de données, doit pointer vers un répertoire accessible en écriture à l'utilisateur exécutant tomcat (par exemple tomcat8 pour un tomcat 8 sous Debian) ;
  • file.upload.dir : contiendra tous les fichiers uploadés par les utilisateurs, doit également être accessible en écriture à l'utilisateur tomcat ;
  • hibernate.search.default.indexBase : répertoire utilisé pour le stockage des index hibernate, accessible en écriture pour tomcat.

Attention : les valeurs par défaut des répertoires sont toutes en java.io.tmpdir, sous Tomcat il s'agit d'un répertoire qui est vidé à chaque démarrage.

Construction de l'application

L'application utilise le système de build Gradle qui a l'avantage de pouvoir récupérer toutes les dépendances. Le lancement de la construction se fait donc très simplement, avec un shell dans le répertoire de clonage des sources : ./gradlew war. Patientez quelques minutes à la première exécution et vous obtiendrez une archive web Java dans le répertoire build/libs

Déploiement

Le déploiement se fait simplement en plaçant l'application dans le répertoire webapps de tomcat. Attention, sans configuration complémentaire, le nom du WAR deviendra le chemin d'accès à l'application : sudo -u tomcat8 cp build/libs/*.war /var/tomcat8/webapps/axelor.war.

Le premier démarrage prend plusieurs minutes, car la base et les modules doivent être initialisés. Une fois l'application démarrée, elle est accessible à l'adresse http://hote_tomcat:8080/axelor (si vous avez nommé le WAR axelor.war).

Mises à jour

Si vous vous contentez de suivre les mises à jour de la branche, vous pouvez exécuter périodiquement la série de commandes suivantes dans le répertoire de récupération des sources :

  • git pull -r --autostash
  • git submodule foreach git pull -r --autostash
  • ./gradlew war

Arrêtez tomcat (facultatif) et copiez le war par dessus l'ancien, redémarrez tomcat pour mettre à jour la base (attention, il peut arriver qu'il faille mettre à jour des valeurs à la main sur la version de développement). Vous devrez également rafraîchir les vues après le redémarrage en cliquant sur l'icône Tout restaurer dans la rubrique Administration » Gestion des Vues » Les Vues.