146 lines
5.0 KiB
Markdown
146 lines
5.0 KiB
Markdown
# Déploiement d'une application existante
|
||
|
||
> Source : [Confluence EasyWMS France](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/3000089575437/D%C3%A9ploiement+d%27une+application+existante)
|
||
> Dernière mise à jour : 04/07/2024 (v20)
|
||
|
||
---
|
||
|
||
### 1 - Vérifier le fichier "env.secrets.yaml" du Deploy
|
||
|
||
Vérifier les informations concernant la base de données utilisée sur le projet.
|
||
|
||
**Pour Oracle :**
|
||
|
||
| Paramètre | Valeur par défaut |
|
||
|-----------|-------------------|
|
||
| `Engine` | `Oracle` |
|
||
| `Server` | `localhost/orcl` |
|
||
| `Password` (des différentes bases) | `robmec` |
|
||
|
||
**Pour PostgreSQL :**
|
||
|
||
| Paramètre | Valeur par défaut |
|
||
|-----------|-------------------|
|
||
| `Engine` | `PostgreSQL` |
|
||
| `Server` | `localhost` |
|
||
| `Password` (des différentes bases) | `robmec` |
|
||
|
||
---
|
||
|
||
### 2 - Déploiement complet
|
||
|
||
Ouvrir **PowerShell en administrateur** dans le dossier `Deploy` de la VM.
|
||
|
||
> Pour se déplacer dans le dossier Deploy depuis PowerShell : `cd C:\deploy`
|
||
|
||
Par défaut la commande utilise la branche **Master** du projet Git. Pour déployer une branche spécifique, ajouter son nom après le nom du projet.
|
||
|
||
```powershell
|
||
# Déploiement sur la branche Master (par défaut)
|
||
.\deploy_repository.ps1 NomDuProjetGit
|
||
|
||
# Déploiement sur une branche spécifique
|
||
.\deploy_repository.ps1 NomDuProjetGit Branche
|
||
```
|
||
|
||
Exemple :
|
||
|
||
```powershell
|
||
.\deploy_repository.ps1 1707_FRANCE_MA_PIECES_AUTOS_BRETAGNE develop
|
||
```
|
||
|
||
> Plus de détails sur l'exécution du script : [Documentation Mecalux](https://msscc.mecalux.com/documentation/ExternalProcedures/master/EN/ProfessionalServices/TaskWorkBreakDownAndVerification/TaskWorkBreakdownAndVerification.md#md-developmentenvironmentarchitecture)
|
||
|
||
> ℹ️ D'après l'Espagne, il devrait être possible de déployer n'importe quelle version depuis la **21.1.19.2**. Si ce n'est pas le cas, ouvrir un ticket.
|
||
|
||
> En cas d'erreur : consulter la page [Installation machine virtuelle de développement](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/2786690269319) au paragraphe **"Deploy 1"**.
|
||
|
||
> ✅ Sans erreur, vous pouvez **sauter les étapes 3, 4, 5 et 6**.
|
||
> ⚠️ L'**étape 7 est obligatoire** dans tous les cas.
|
||
|
||
---
|
||
|
||
### 3 - Deploy 1 *(anciens scripts de deploy uniquement)*
|
||
|
||
Ouvrir PowerShell en administrateur dans le dossier `Deploy` de la VM et exécuter :
|
||
|
||
```powershell
|
||
.\deploy.ps1
|
||
```
|
||
|
||
Choisir **"1. Complete"**.
|
||
|
||
> En cas d'erreur : consulter la page [Installation machine virtuelle de développement](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/2786690269319) au paragraphe **"Deploy 1"**.
|
||
|
||
---
|
||
|
||
### 4 - Intégrer la configuration d'entrepôt *(anciens scripts de deploy uniquement)*
|
||
|
||
Ouvrir PowerShell en administrateur dans le dossier `Deploy` de la VM et exécuter :
|
||
|
||
```powershell
|
||
.\deploy.ps1
|
||
```
|
||
|
||
Choisir **"2. Load"**.
|
||
|
||
Cela transférera :
|
||
- La configuration entrepôt depuis **`C:\deploy\Config`**
|
||
- Les paramètres exportés via uGNA depuis **`C:\deploy\Data`**
|
||
|
||
> Il est également possible d'utiliser **EasyS** pour charger le fichier de config via un *Transfert Data* vers la VM.
|
||
|
||
---
|
||
|
||
### 5 - Assignation de l'utilisateur à l'entrepôt *(anciens scripts de deploy uniquement)*
|
||
|
||
Ouvrir PowerShell en administrateur dans **`C:\deploy`** et exécuter :
|
||
|
||
```powershell
|
||
.\Commands\commands.ps1
|
||
```
|
||
|
||
Il est aussi possible de faire l'assignation via le WMS : dans **SmartUI**, aller dans **"Organisation"** → **"Utilisateurs"**, sélectionner l'utilisateur (par défaut `mecalux`) et l'éditer pour ajouter les sites autorisés.
|
||
|
||
---
|
||
|
||
### 6 - Faire l'import de l'application custom *(anciens scripts de deploy uniquement)*
|
||
|
||
Suivre la documentation : [Gestion de la custom application — Import](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/3000089673775/Gestion+de+la+custom+application#2---Import-de-l%27application-custom)
|
||
|
||
---
|
||
|
||
### 7 - Désactiver les instances stockées sur la base de données
|
||
|
||
> ⚠️ **Cette étape est obligatoire.** Sans cette modification, les instances ne fonctionneront pas.
|
||
|
||
Dans le fichier **`Tenants.xml`** situé dans `C:\inetpub\wwwroot\ApplicationService`, remplacer la ligne :
|
||
|
||
```xml
|
||
<processStore name="TENANT ProcessStore" providerName="Oracle.ManagedDataAccess.Client" … />
|
||
```
|
||
|
||
par :
|
||
|
||
```xml
|
||
<processStore name="TENANT ProcessStore" providerName="InMemory" connectionString="MaxProcessInfoLogs=20;MaxProcessLogEntries=50"/>
|
||
```
|
||
|
||
Puis effectuer un redémarrage de l'application (`iisreset` ou recyclage du pool de l'ApplicationService) — voir : [Restart pool + iisreset](https://easywmsfrance.atlassian.net/wiki/spaces/EF/pages/3000244731905).
|
||
|
||
#### Astuce Notepad++ (remplacement automatique multi-tenant)
|
||
|
||
Utiliser l'outil **"Replace"** de Notepad++ (`Ctrl+H`) en activant le mode **Regular expression** :
|
||
|
||
**Recherche :**
|
||
```
|
||
(<processStore name=")(.*)(ProcessStore.*$)
|
||
```
|
||
|
||
**Remplacement :**
|
||
```
|
||
<processStore name="\2ProcessStore" providerName="InMemory" connectionString="MaxProcessInfoLogs=20;MaxProcessLogEntries=50"/>
|
||
```
|
||
|
||
Cela remplacera la ligne directement avec le bon nom de Tenant.
|