Concepts importants
Notions importantes pour comprendre le fonctionnement d'Open-Prod
- Service Open-Prod
- Jasper
- Répertoires Git
- Base de données PostgreSQL
- HHTP & HTTPS
- Versionnage d'Open-Prod
- GED Open-Prod
Service Open-Prod
Page en cours de construction...
Open-Prod est un ERP full-web. Cela signifie qu’il est exécuté sur un serveur Web, et que chaque utilisateur qui souhaite accéder à l’ERP le fait à partir d’un navigateur sur son poste (sur le même réseau que le serveur).
Pour exécuter Open-Prod « en continu », un service spécifique est actif sur le serveur. On peut le manipuler grâce aux scripts installés plus tôt :openprod-status
: affiche le statut du service (s’il est toujours actif, ses derniers logs, etc).openprod-start
: démarre le service.openprod-stop
: stoppe le service.openprod-restart
: redémarre le service.
Jasper
Page en cours de construction...
Jasper est un logiciel installé sur un autre serveur que celui d’Open-Prod (historiquement). On peut l’installer avec la commande jasper-install. Jasper permet de stocker et éditer tous les modèles de document de l’ERP. Jasper génère les PDFs des documents à la demande d’Open-Prod (quand on clique sur « Imprimer un document » dans l’interface Open-Prod).
Jasper fonctionne par le biais d’un service, comme Open-Prod. Des scripts permettent de manipuler ce service :jasper-status
: Affiche le statut du service (s’il est toujours actif, ses derniers logs, etc).jasper-start
: Démarre le service.jasper-stop
: Stoppe le service.
Répertoires Git
Page en cours de construction...
1. Présentation
Un répertoire Git (aussi nommé « projet Git ») permet de stocker, versionner et archiver les sources d’une application. Un serveur Git peut héberger de multiples répertoires Git.
Dans le cadre de l'utilisation des modules myfab, on peut être amenés à interagir avec deux serveurs Git, chacun proposant des répertoires Git intéressants pour notre utilisation d’Open-Prod :
Un répertoire Git contient plusieurs branches, chacune symbolisant (en général) un stade différent dans le flux de développement. Dans le cas d’Open-Prod, on trouve 3 branches :
- La branche "dev", celle sur laquelle les développeurs travaillent.
- La branche "integration", dans laquelle est régulièrement injecté le code de la branche "dev", afin de tester les développements et les corriger. On peut être amené à tester les futures fonctionnalités (pas encore stables) sur cette branche en local sur son poste : auquel cas, on utilise
openprod-update
pour changer de branche. - La branche "master" (qui existe dans tous les projets Git), sur laquelle est transvasé le code stable de la branche "integration" pour être mis en production. Chez un client, on installe toujours les sources Open-Prod en master.
2. Changement de comptes Git
Pour pouvoir mettre à jour les scripts et les modules MyFab, il faut lier ces deux répertoires à notre compte Git 1Life personnel. Ce compte nous permet de s’authentifier auprès du serveur Git 1Life et récupérer les dernières sources des deux répertoires.
Pour lier notre compte Git, on lance la commande git-config
, en sélectionnant d’abord MyFab Setup (saisir 1 dans l’exemple ci-dessous). On modifie l’utilisateur, et on inscrit nos identifiants (fournis par la R&D). Puis on relance la commande git-config
, et on fait pareil pour MyFab Modules (saisir 2 dans l’exemple ci-dessous).
Lors du changement d'utilisateur via la commande git-config, il peut arriver que la manipulation soit refusée par le système car le répertoire n'est pas considéré comme étant un répertoire "git" ou bien qu'il ne soit pas considéré comme sûr.
Auquel cas, le terminal propose d'appliquer une exception sur le répertoire en question via une commande particulière. Il faut exécuter cette commande en ajoutant la commande sudo
comme ci-dessous :
Base de données PostgreSQL
Page en cours de construction...
Sur un même serveur Open-Prod, on peut utiliser en parallèle une multitude de bases de données différentes. On peut s’y connecter et les organiser via l’écran d’accueil d’Open-Prod (bouton Manage databases). Chaque ligne de la capture ci-dessous est une base de données à laquelle on peut se connecter.
Le script pgadmin4-install permet d’installer un gestionnaire de base de données (équivalent à SSMS pour SQL Server) pour travailler à plus bas niveau sur les bases de données (tables, requêtes SQL, etc.).
HHTP & HTTPS
Page en cours de construction...
Par défaut, Open-Prod est installé en HTTP. C’est-à-dire que lorsqu’on accède à l’application via le navigateur Web, les échanges d’information avec le serveur ne sont pas sécurisés. Ce n’est pas un souci si Open-Prod est installé chez le client (On Premise), mais peut représenter une faille de sécurité pour les clients dont l’ERP est dans le cloud.
Si le client émet la demande de l’installation du HTTPS sur son serveur Web Open-Prod, la R&D prend en charge le sujet.
Versionnage d'Open-Prod
Page en cours de construction...
Il faut bien distinguer la version des sources Open-Prod de la version de chaque base de données. Par exemple, lorsqu’on importe une nouvelle BDD via Open-Prod, la version de celle-ci ne sera quasiment jamais la même que celle des sources Open-Prod du serveur sur lequel on l’importe. Il faut donc lancer la commande sql-update
et choisir cette BDD, pour la mettre en accord avec les sources Open-Prod du serveur.
Pour connaître la version actuelle d’Open-Prod, on peut utiliser la commande openprod-info
.
Quand on met à jour Open-Prod, on le fait dans la majorité des cas à la dernière version. On lance la mise à jour des sources et la synchronisation des bases de données avec la commande openprod-update
.
GED Open-Prod
Page en cours de construction...
La GED (gestion électronique des documents) d’Open-Prod est stockée par défaut sur la VM où est installé Open-Prod (GED locale). Toutefois, on peut vouloir stocker celle-ci sur un serveur distant, sur un NAS par exemple (GED distante).
Auquel cas, la commande ged-remote-config
permet de créer un lecteur réseau sur la VM vers ce serveur distant, et de configurer Open-Prod pour qu’il stocke sa GED sur ce lecteur réseau.