Installation - Côté projet (développeur)
Ce document explique comment déployer un nouveau site "eCare Cleaning".
Prérequis
- Nom de domaine au format recommandé :
- `e.[client].ecare.pro`
- `plan.[client].ecare.pro` (format privilégié)
- Ou un nom de domaine personnalisé pour le client :
- `e.[domaine_client].com`
- `plan.[domaine_client].com`
## 1. Administration (ASW)
1. Ajouter un nouveau client dans l'interface d'administration.

2. Configurer les paramètres du nouveau client.

## 2. Configuration du serveur
1. Se connecter en RDP au serveur cible.

2. **Installer eCare Business si le client n'en dispose pas encore** : utiliser le script d'installation prévu et vérifier qu'il est accessible en ligne.
3. Vérifier que le dossier `D:/inetpub/localuser/[client]/private/plan-hygiene` existe bien avant de continuer
4. Dans SQL Server, ouvrir la base `service_ecare` puis la table `compte` et vérifier que les champs `path_` et `url_` sont correctement renseignés pour le client ciblé.

5. Vérifier que l'utilisateur SQL utilisé pour la base de données du client possède le rôle `db_owner`.

6. Dans IIS, ajouter un nouveau site pour le client.

7. Dans IIS, modifier le pool d'application du nouveau site pour changer la valeur de `version du CLR.NET` pour `Version v4.0`.

8. Lancer Win‑Acme (WACS) en tant qu'administrateur et générer un certificat SSL pour le nouveau site.

## 3. Configuration / ajout d'un site dans Visual Studio
1. Ouvrir la page de publication du projet dans Visual Studio : **Menu > Générer > Publier**.

2. Créer un nouveau profil de publication.

3. Sélectionner le type de cible : **Serveur Web (IIS)**.

4. Choisir la méthode : **Web Deploy**.

5. Remplir la configuration du profil (serveur, site, utilisateur, mot de passe, chemin).

6. Renommer le profil en retirant le préfixe `plan.` si vous le souhaitez (ex. `plan.paris.ecare.pro` → `paris.ecare.pro`).

7. Ouvrir le Gestionnaire de configurations : **Menu > Générer > Gestionnaire de configurations**.

8. Créer une nouvelle configuration nommée d'après le site sans le préfixe `plan.` (ex. `paris.ecare.pro`).

9. Ajouter une transformation de `web.config` : **Explorateur de solutions > Web.config > Click droit > Ajout d'une transformation de configuration**.

10. Copier le contenu d'une configuration existante pour servir de base :
- Pour un client sans groupe ou si le groupe n'a pas d'eCare Cleaning disponible :
`Web.7darmor.ecare.pro.config`.
- Si le client appartient à un groupe qui possède déjà un eCare Cleaning (ex. `plan.groupe.geh.ecare.pro`) :
`Web.clermont-chimie.ecare.pro.config`.

## 4. Publier / mettre à jour depuis Visual Studio
1. Ouvrir la page de publication du projet dans Visual Studio : **Menu > Générer > Publier**.
2. Vérifier que le profil sélectionné correspond bien au site, puis cliquer sur **Publier**.

3. A la fin de la publication le site devrait s'ouvrir dans le navigateur (ex. `[site]/Compte/Connexion?doUpdate=true`).
4. Une fois sur la page de connexion, cliquer sur le buton `?` orange.

5. Puis cliquer sur `Mettre à jour la BDD` et `Ajouter le compte "admin.plan"`, ça lance automatiquement une mise à jours des tables `PLAN_*` et ajoute le compte `admin.plan` si il n'existe pas encore.

## 5. Publier / Mettre à jour avec le script
Double cliquer `publish_profiles.ps1` ou lancer le script `publish_profiles.ps1` manuellement.
Le script va alors lister l'ensemble des profils du projet et afficher :
```
Enter the profile index, name, or group to select (0 to select all)
```
Saisir au choix :
- Un index numérique (ex. `3`) — sélectionne le profil à cet index.
- `0` — sélectionne tous les profils.
- `>n` (ex. `>5`) — sélectionne tous les profils depuis l'index `n` jusqu'à la fin.
- Le nom d'un profil (ex. `paris.ecare.pro`) — sélection par nom.
- `g:<nom_groupe>` (ex. `g:geh`) — sélectionne tous les profils du groupe indiqué.
- Plusieurs sélections séparées par des virgules (ex. `1,3,g:geh,>10`).
Après saisie, le script affiche les profils sélectionnés puis lance le processus de publication.
A la fin de chaque publication le script va ouvrir une page dans chrome au format `[site]/Compte/Connexion?doUpdate=true`.
Ce qui permet de vérifier que le site fonctionne bien et lance automatiquement une mise à jours des tables `PLAN_*` (avec l'instruction `?doUpdate=true`)
## 6. Vérifications après déploiement
- Accéder au site en HTTPS et vérifier la page d'accueil.
- Vérifier la connexion à la base de données et le bon fonctionnement des fonctionnalités clientes.
- Consulter les logs IIS / application `[site]/labs/logs` en cas d'erreur.