# 1. Mise à jour Open-Prod et des modules myfab

Procédure pour réaliser une mise à jour d'Open-Prod et ou des modules myfab.

# Présentation

#### 1. Préambule

Les solutions Open-Prod par myfab sont hébergées sur un environnement Ubuntu 18.04 / 20.04 / 22.04. Afin de maintenir en condition opérationnelle ou de mettre à jour votre ERP, myfab met à disposition un ensemble de commandes qui pourront être exécutées directement sur votre ou vos serveurs Ubuntu. Ces commandes seront disponibles en « ligne de commande ».

<p class="callout info">**A noter que ces commandes devront nécessairement être exécutées sur le compte utilisateur avec lequel l’ERP a été installé.**  
</p>

#### 2. Mise à jour et versionning

L’ensemble des mises à jour d’Open-Prod et des modules myfab s’effectuent au travers d’un « <span style="background-color: rgb(255, 255, 255);"><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">Git</span> </span>». Il s'agit d'un entrepôt de données sur lequel vos différents logiciels se connecteront afin de se mettre à jour : chaque connexion à un Git nécessitera une authentification spécifique qui aura été pré paramétrée lors de la mise en ligne de votre environnement. Chaque mise à jour logiciel devra s’accompagner d’une mise à niveau de la ou des bases de données existantes.

# Connexion à l'environnement technique Linux

#### 1. Connexion / Raccordement au(x) serveur(s)

Les connexions à l'environnement Open-Prod s’effectuent au travers du protocole "<span style="background: rgb(255, 255, 255);">ssh"</span>. C'est un protocole permettant une connexion au(x) serveur(s) Ubuntu via une liaison sécurisée afin de pouvoir lancer les commandes nécessaires à la mise à jour / maintenance de l'environnement.

Il convient de détenir :

- L’adresse IP ou le nom de votre serveur,
- <span style="text-indent: -18pt;">Le code utilisateur ayant réalisé l’installation d’Open-Prod sur le serveur,</span>
- <span style="text-indent: -18pt;">Le mot de passe du dit utilisateur.</span>

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Le poste à partir duquel la mise à jour sera réalisée devra être doté d’un client ssh, par exemple, Putty. L</span><span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">e poste devra également pouvoir joindre le serveur concerné sur le port 22. </span>

<p class="callout warning">**<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Merci de vous rapprocher de votre administrateur pour vérifier si votre poste est équipé d’un tel outil et si le serveur est joignable à partir de ce dernier.</span>**</p>

#### 2. Mise en œuvre de Putty

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Putty est téléchargeable à partir de l'url suivante :</span>

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">[https://www.putty.org/](https://www.putty.org/)</span>

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Télécharger et suivre les étapes d'installation de Putty, puis l'exécuter une fois cela fait. </span>

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Saisir l’adresse IP du serveur à mettre à jour, puis cliquer sur « Open »</span>

![](https://docs.myfab.fr/uploads/images/gallery/2022-11/embedded-image-cqbb3jxc.png)

<span style="font-size: 11.0pt; line-height: 107%; font-family: 'Calibri',sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">Votre pc peut afficher un message tel que celui ci-dessous lors de votre 1<sup>ère</sup> connexion sur le serveur. Cliquer sur « Accept ».</span>

![](https://docs.myfab.fr/uploads/images/gallery/2022-11/embedded-image-galubjp5.png)

Enfin saisir le code utilisateur et le mot de passe lorsqu’ils vous seront demandés.

![](https://docs.myfab.fr/uploads/images/gallery/2022-11/embedded-image-zp7h6hwx.png)

Si les identifiants de l’utilisateur sont corrects, l’écran ci-dessous doit s’afficher :

![](https://docs.myfab.fr/uploads/images/gallery/2022-11/embedded-image-vgvlk6gf.png)

Le poste est à présent connecté en « ligne de commande » sur le serveur Ubuntu. L’utilisateur peut dorénavant taper les commandes d’administration.

#### 3. Lecture des lignes de commandes

Une ligne est affichée à l’ouverture du terminal : avant le symbole $, diverses informations importantes en vert, et après le $, un curseur permettant la saisie de commandes.

Les informations en vert se lisent ainsi :

- <span style="background-color: #bfedd2;">**openprod** </span>: nom de l’utilisateur actuellement connecté au terminal.
- <span style="background-color: #bfedd2;">**openprodmf** </span>: nom de la machine sur laquelle est ouvert le terminal.
- **<span style="background-color: #bfedd2;">~</span>** : emplacement actuel de la navigation du terminal dans l’arborescence de fichiers. Le symbole tilde ~ représente la Home de l’utilisateur courant (équivalent du C:/Users/utilisateur sur Windows).

# Trouver et exécuter une commande myfab

Afin de simplifier la mise à jour et la maintenance des différents modules, 1Life a développé un ensemble de commandes mises à disposition de l’administrateur de l’ERP. Ces commandes sont recensées dans l'utilitaire « myhelp ».

Pour en afficher la liste, taper "`<strong>myhelp</strong>`" suivi de "Entrée" pour valider la commande.

![](https://docs.myfab.fr/uploads/images/gallery/2022-11/embedded-image-pvlzuokm.png)

![](https://docs.myfab.fr/uploads/images/gallery/2022-11/embedded-image-lln0ktkm.png)

<p class="callout info">Cette liste de commandes est maintenue et mise à jour en continu. [**Pour plus de détails sur myhelp, se rendre sur la page dédiée.**](https://docs.myfab.fr/books/2-outils-myhelp-et-app-manager-pour-la-maintenance/chapter/scripts-myhelp "Scripts myhelp")</p>

# Configuration du Git

#### 1. Commande git-config

Afin d'accéder aux différentes sources des programmes, il convient de paramétrer l'accès de l'utilisateur aux Gits Open-Prod et de myfab. Ce paramétrage est déjà en place sur un environnement Pour réaliser les opérations de maintenance courantes, vous aurez principalement besoin d'accéder aux Gits d'<span style="color: rgb(53, 152, 219);">**Objectif-Pi Open-Prod**</span>, <span style="color: rgb(132, 63, 161);">**myfab Modules**</span> et <span style="color: rgb(132, 63, 161);">**myfab Modules Spécifiques**</span>. Pour cela et depuis un terminal, utiliser la commande `<strong>git-config</strong>`

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/Nw1image.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/Nw1image.png)

Saisir le numéro correspondant au Git que vous souhaitez modifier. Par exemple 1 pour le Git myfab.

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/CWAimage.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/CWAimage.png)

Trois options sont possibles :

- Changer de branche \[0\],
- Appliquer un commit particulier \[1\],
- Changer d'utilisateur \[2\].

#### 2. Changement de branche

Sur chacun des répertoires, il est possible de se positionner sur une branche du projet, c'est à dire une version. Après avoir tapé la commande `<strong>git-config</strong>` saisir 0 puis renseigner le mot de passe administrateur.

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/6mGimage.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/6mGimage.png)

Toutes les branches mises en ligne sur le Git seront alors affichées. Taper le numéro correspondant à la branche sur laquelle vous souhaitez vous positionner.

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/xiFimage.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/xiFimage.png)

#### 3. Appliquer un commit particulier

Après avoir tapé la commande `<strong>git-config</strong>` et avoir sélectionné le Git à modifier, saisir 1 pour appliquer un commit donné. Saisir ensuite le numéro de commit puis valider par "Entrée".

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/bCSimage.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/bCSimage.png)

#### 4. Changer d'utilisateur

Après avoir tapé la commande `<strong>git-config</strong>` et avoir sélectionné le Git à modifier, saisir 2 pour modifier les identifiants d'accès au Git. Il vous sera demandé ensuite le login, l'email et le mot de passe de l'utilisateur à définir.

<p class="callout info">Veuillez vous adresser au service SI ou à votre chargé de clientèle si vous ne connaissez pas ces identifiants.</p>

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/AINimage.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/AINimage.png)

<p class="callout warning">**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".** </p>

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/image.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/image.png)

Auquel cas, le terminal propose d'appliquer une exception sur le répertoire en question via une commande particulière :

`<strong style="font-family: 'Lucida Console', 'DejaVu Sans Mono', 'Ubuntu Mono', Monaco, monospace; font-size: 0.84em; white-space: pre-wrap;">git config --global --add safe.directory /home/openprod/myfab-specific</strong>`

Il faut exécuter cette commande en ajoutant la commande **`sudo`** comme ci-dessous :

`<strong style="font-family: 'Lucida Console', 'DejaVu Sans Mono', 'Ubuntu Mono', Monaco, monospace; font-size: 0.84em; white-space: pre-wrap;">sudo git config --global --add safe.directory /home/openprod/myfab-specific</strong>`

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2023-03/scaled-1680-/0e5image.png)](https://docs.myfab.fr/uploads/images/gallery/2023-03/0e5image.png)

# Déroulement d'une mise à jour

**Pour réaliser une mise à jour de l'environnement Open-Prod, veuillez suivre les étapes listées ci-dessous.**

<p class="callout info">**[La commande `myhelp`](http://docs.myfab.fr/books/myhelp-et-app-manager/chapter/scripts-myhelp "Scripts myhelp") est un récapitulatif de toutes les commandes créées par myfab pour faciliter l'accessibilité de l'interface Linux.**</p>

#### 1. Réaliser une sauvegarde de l'environnement

<p class="callout warning">**Une mise à jour de votre environnement nécessite un arrêt de production durant toute la durée du traitement.**</p>

<p class="callout warning">De plus, avant de faire une mise à jour, il est obligatoire de sauvegarder à minima les bases de données Open-Prod et Jasper à l'aide de la commande `<strong>sql-backup</strong>`.</p>

<p class="callout warning">Si votre environnement est virtualisé, il est vivement conseillé de réaliser un snapshot de l'ensemble des VM concernées (sauvegarde de l'ensemble de l'environnement virtualisé avec les outils de l'hyperviseur). Si une régression était constatée à posteriori, il serait beaucoup plus simple de revenir en arrière par ce biais.</p>

**Il convient de noter <span style="text-decoration: underline;">et conserver</span> le numéro de version d'Open-Prod avant la montée de version afin de savoir vers quelle version revenir au besoin. Pour cela, exécuter la commande `openprod-info`.**

![image.png](https://docs.myfab.fr/uploads/images/gallery/2022-11/scaled-1680-/image.png)

##### 2. Mise à jour des scripts myfab

La prochaine étape consiste à mettre à jour les scripts myfab avec la commande **`command-update`**. Elle permet de mettre vos commandes Linux à jour de celles récemment ajoutées. Il est nécessaire de redémarrer le terminal après l’opération pour qu’il prenne en compte ces nouvelles commandes.

##### 3. Lancement de l'App Manager

**[L'App Manager](https://docs.myfab.fr/books/2-outils-myhelp-et-app-manager-pour-la-maintenance/page/presentation-de-lapp-manager)** est le gestionnaire proposé par myfab pour gérer de manière simple l'installation et la mise à jour des applicatifs. Il permet d'exécuter de manière optimale les différentes commandes de mise à jour.

*Résumé des étapes d'une mise à jour d'un environnement Open-Prod*

<div drawio-diagram="8396"><img src="https://docs.myfab.fr/uploads/images/drawio/2025-10/drawing-10-1761055436.png" alt=""/></div>

Voir utilisation de**[ L'App Manager](https://docs.myfab.fr/books/2-outils-myhelp-et-app-manager-pour-la-maintenance/page/presentation-de-lapp-manager)**

# Installation d'un commit particulier

Il n'est pas systématiquement conseillé d'appliquer la dernière mise à jour disponible d'Open-Prod. Il est donc toujours possible de l'installer en sélectionnant un commit particulier.

<p class="callout warning">[Comme pour une mise à jour standard d'Open-Prod ou des modules myfab, il est vivement conseillé de réaliser une sauvegarde de votre environnement afin d'être en mesure de facilement revenir en arrière en cas de régressions.](https://docs.myfab.fr/books/3-gestion-des-sauvegardes-dopen-prod)</p>

#### 1. Mise à jour d'Open-Prod sur un commit particulier

Les versions d'Open-Prod sont déclarées au travers du Git grâce aux commits. On pourrait décrire simplement un commit comme l'enregistrement d'une transaction en base de données. En l'occurrence, la transaction est la mise à disposition sur le git d'une version de l'ERP.

Pour appliquer un commit particulier d'Open-Prod suivre les étapes suivantes :

1. Lancer l'App Manager avec la commande `<strong>app-manager</strong>`.
2. Sélectionner l'option "1 - Open-Prod" et terminer la sélection avec la touche \*. Puis valider la sélection avec la touche "O" pour Oui.
3. Le script va vérifier la connexion au Git d'Objectif Pi et le positionnement de branche. Il sera demandé si vous souhaitez changer de branche. Répondre par "N" pour Non. Le script va lancer la récupération des sources.

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2022-12/scaled-1680-/X1timage.png)](https://docs.myfab.fr/uploads/images/gallery/2022-12/X1timage.png)

4\. A la question "Voulez-vous récupérer les sources à la dernière version ?", répondre "N".

5\. Saisir le numéro de commit souhaité.

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2022-12/scaled-1680-/RlIimage.png)](https://docs.myfab.fr/uploads/images/gallery/2022-12/RlIimage.png)

6\. Réaliser la synchronisation SQL Update pour mettre à niveau les bases de données.

Après réalisation de ces étapes, vous pouvez vérifier la bonne application du numéro de commit en tapant la commande `<strong>openprod-info</strong>`. Si le commit installé n'est pas celui que vous avez tenté d'appliquer, positionner manuellement l'environnement sur un commit donné en suivant les étapes de la partie suivante.

#### 2. Positionnement manuel sur un commit particulier

Une fois les sources récupérées, il est possible de se positionner manuellement sur un commit particulier à l'aide de la commande **`git-config`**. Procéder en suivant les étapes suivantes :

1. Depuis un terminal de commande, taper la commande **`git-config`**.
2. Sélectionner le répertoire Git Objectif Pi - Open-Prod en tapant "0".
3. Sélectionner l'action "\[1\] Appliquer un commit" en tapant 1.
4. Saisir le commit voulu et valider.
5. Saisir le mot de passe si demandé.
6. Lancer une synchronisation de votre / vos base(s) de données avec la commande **`sql-update`**.
7. Une fois le commit appliqué et votre / vos base(s) synchronisée(s), vous pouvez vérifier que la commande ait fonctionné en tapant la commande `<strong>openprod-info</strong>`.

[![image.png](https://docs.myfab.fr/uploads/images/gallery/2022-12/scaled-1680-/H3limage.png)](https://docs.myfab.fr/uploads/images/gallery/2022-12/H3limage.png)

# Versions d'Open-Prod

<p class="callout info">**Version majeure en diffusion d'Open-Prod et disponible sur la branche master : <span style="text-decoration: underline;">9.10. </span>**</p>

Vous retrouvez ci-dessous la liste des versions majeures et le dernier commit associé. Ainsi, vous pouvez maintenir votre environnement dans une version majeure précise de l'ERP.

<table border="1" id="bkmrk-derni%C3%A8re-version-maj" style="border-collapse: collapse; width: 100%; height: 90.1876px;"><colgroup><col style="width: 26.461%;"></col><col style="width: 47.5811%;"></col><col style="width: 26.0816%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">**Dernière version majeure d'Open-Prod**</td><td class="align-center" style="height: 29.7969px;">**Commit associé**</td><td class="align-center" style="height: 29.7969px;">**Date**</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">9.9</td><td class="align-center" style="height: 29.7969px;">4a0fbcf0298f5bb57d9b10a1390431c21f4f0544</td><td class="align-center" style="height: 29.7969px;">23/12/2023</td></tr><tr style="height: 30.5938px;"><td class="align-center" style="height: 30.5938px;">9.9.1</td><td class="align-center" style="height: 30.5938px;"><span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">a9ef3f26fca465cbeadbff9fe2b3ee0d701e1be0</span></td><td class="align-center" style="height: 30.5938px;">19/05/2023</td></tr></tbody></table>