« ONBOARDING » : différence entre les versions

De Vitam
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
(Ajout de la procédure d'installation)
Ligne 18 : Ligne 18 :
- [https://www.programmevitam.fr/2023/11/13/vitam-en-ligne-interventions/ Webinaires]
- [https://www.programmevitam.fr/2023/11/13/vitam-en-ligne-interventions/ Webinaires]


== Pré-requis ==
- Java 17


- Maven
<h1>
Procédure d’installation de Vitam Core
</h1>
<span id="prérequis"></span>
= Prérequis =


- Git
w Linux (x86) ou MacOS (y compris Apple Silicon)


- Docker
Logiciels: - IntelliJ IDEA 24 (Ultimate recommandé) - Plugin multirun - Code style: [https://assistance.programmevitam.fr/plugins/document/projetvitam/folder/50 VitamStyle_Spotless.xml] - Maven 3.9.X et [https://github.com/nvm-sh/nvm?tab=readme-ov-file nvm] - Java 17 JDK - Docker (utiliser Rancher Desktop pour Mac)


- IDE (IntelliJ, VS Code)
Matériels: - Mémoire vive: 16GiB - Stockage: 20GiB


- ElasticSearch


- Ansible
-----


== Vitam Core ==
<span id="récupération-du-code-et-mise-en-place-de-lenvironnement-de-travail"></span>
= Récupération du code et mise en place de l’environnement de travail =


=== Import du repository ===
Cloner le code sur https://gitlab.dev.programmevitam.fr/vitam/vitam.git ainsi que le jeu de données de test sur https://github.com/ProgrammeVitam/vitam-itests.git. Nous présumons que le dossier du code source se nomme '''vitam_repo''' par la suite.
- Préparer un répertoire pour cloner le projet puis utiliser la commande :
git clone <nowiki>https://github.com/ProgrammeVitam/vitam-ui.git</nowiki>
- Egalement cloner le repository vitam-itests :
git clone <nowiki>https://github.com/ProgrammeVitam/vitam-itests.git</nowiki>


=== Installation des outils ===
S’assurer que JAVA_HOME et M2_HOME sont renseignés dans le <code>.bashrc</code> ou équivalent (On peut obtenir M2_HOME avec la commande <code>mvn -version</code> )
- Docker
sudo apt-get install docker-compose
- ElasticSearch
sudo apt-get install elasticsearch
- Ansible
pip install ansible


=== Liens symboliques ===
Dans le fichier vitam_repo/sources/pom.xml désactiver les modules <code>ihm-demo</code> et <code>ihm-recette</code>
In progress


=== Configuration interne ===
Installer node 18 avec la commande <code>nvm install 18 &amp;&amp; nvm use 18</code>
Dans le fichier /etc/hosts : ajouter les lignes suivantes :
127.0.0.1    access-external.service.consul
127.0.0.1    access-internal.service.consul
127.0.0.1    external.service.consul
127.0.0.1    functional-administration.service.consul
127.0.0.1    ingest-external.service.consul
127.0.0.1    ingest-internal.service.consul
127.0.0.1    logbook.service.consul
127.0.0.1    metadata.service.consul
127.0.0.1    offer-fs-1.service.consul
127.0.0.1    offer.service.consul
127.0.0.1    processing.service.consul
127.0.0.1    security-internal.service.consul
127.0.0.1    storage.service.consul
127.0.0.1    workspace.service.consul
127.0.0.1    dev.vitamui.com


== Vitam UI ==
Dans les paramètres IntelliJ: Editor &gt; Code Style &gt; Scheme &gt; Import Scheme &gt; IntelliJ IDEA code style XML et sélectionner le code style téléchargé plus tôt


Copier le répertoire vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations vers vitam_repo/.idea/runConfigurations (si le dossier existe déjà, remplacer le contenu.)


In progress
Relancer Intellij IDEA.
 
Editer le fichier <code>/etc/hosts</code> (ou équivalent) et y ajouter les enregistrements suivants:
 
<pre># Vitam
127.0.0.1    access-external.service.consul
127.0.0.1    access-internal.service.consul
127.0.0.1    external.service.consul
127.0.0.1    functional-administration.service.consul
127.0.0.1    ingest-external.service.consul
127.0.0.1    ingest-internal.service.consul
127.0.0.1    logbook.service.consul
127.0.0.1    metadata.service.consul
127.0.0.1    offer-fs-1.service.consul
127.0.0.1    offer.service.consul
127.0.0.1    processing.service.consul
127.0.0.1    security-internal.service.consul
127.0.0.1    storage.service.consul
127.0.0.1    workspace.service.consul</pre>
 
-----
 
<span id="création-de-larborescence-vitam"></span>
= Création de l’arborescence /vitam =
 
Vitam Core a besoin d’avoir un dossier stockant des données dans la racine de l’ordinateur. Voici l’arborescence nécessaire :
 
<pre>/vitam/
├── conf
├── data
│  ├── ihm-recette
│  │  └── test-data
│  │      └── data -&gt; /home/marthe/projects/vitam-itests/data
├── log
└── tmp
 
</pre>
S’assurer que tous les répertoires appartiennent à votre utilisateur (chown)
 
Créer dans <code>/vitam/data/storage</code> un fichier nommé <code>fr.gouv.vitam.storage.offers.workspace.driver.DriverImpl</code> avec le contenu <code>offer-fs-1.service.consul</code>
 
Créer un lien symbolique de <code>/vitam/data/ihm-recette/test-data/data</code> vers <code>vitam-itests/data</code> (vitam-itests étant le deuxième dépôt cloné au départ.)
 
Copier <code>vitam_repo/vitam-conf-dev/conf</code> vers <code>/vitam/conf</code>.<br />
Aller dans <code>/vitam/conf/metadata/mapping</code> et vérifier que les fichiers <code>unit-es-mapping.json</code> et <code>og-es-mapping.json</code> sont des liens symboliques vers les fichiers dans <code>vitam_repo/deployment/ansible-vitam/roles/elasticsearch-mapping/files/</code>.
 
Aller dans <code>/vitam/conf/worker</code> et s’assuree que <code>plugins.json</code> est bien un lien vers <code>deployment/ansible-vitam/roles/vitam/files/worker/plugins.json</code>
 
Ouvrir les paramètres IntelliJ IDEA &gt; Appearance and Behavior &gt; Path Variables et y ajouter une variable nommée <code>vitamLocalShareFolder</code> pointant vers <code>/vitam</code>.
 
 
-----
 
<span id="compilation"></span>
= Compilation =
 
Depuis le répertoire vitam_repo/sources exécuter la commande
 
<code>mvn clean install -D-skipTests -P-vitam</code>
 
La procédure peut prendre environ 10 à 20 minutes.
 
<span id="compilation-des-cots"></span>
== Compilation des COTS ==
 
Les COTS sont des dépendances externes nécessaires pour lancer le projet en local (mongo et elasticSearch)
 
L’option la plus simple est d’utiliser docker compose, dont le fichier .yaml se trouve dans <code>vitam_repo/dev-deployment/docker-cots</code> Puis lancer avec IntelliJ ou docker compose: <code>docker compose up</code>
 
 
-----
 
<span id="lancement"></span>
= Lancement =
 
Dans IntelliJ, lancer la configuration multiRun Vitam, qui doit normalement éxecuter les 13 services le composant.
 
 
-----
 
<span id="initialisation-des-données"></span>
= Initialisation des données =
 
Lancer le script <code>init_data_vitam.sh</code> depuis <code>vitam-conf-dev/scripts</code>. Celui-ci doit s’exécuter sans erreurs.

Version du 6 septembre 2024 à 10:15

Accès aux différents sites

- Messagerie Outlook

- Tuleap

- Slack

- Teams

- Jenkins

- GitLab de Vitam Core

- GitHub de Vitam UI

- GitHub de Vitam-itests

- Webinaires


Procédure d’installation de Vitam Core

Prérequis

w Linux (x86) ou MacOS (y compris Apple Silicon)

Logiciels: - IntelliJ IDEA 24 (Ultimate recommandé) - Plugin multirun - Code style: VitamStyle_Spotless.xml - Maven 3.9.X et nvm - Java 17 JDK - Docker (utiliser Rancher Desktop pour Mac)

Matériels: - Mémoire vive: 16GiB - Stockage: 20GiB



Récupération du code et mise en place de l’environnement de travail

Cloner le code sur https://gitlab.dev.programmevitam.fr/vitam/vitam.git ainsi que le jeu de données de test sur https://github.com/ProgrammeVitam/vitam-itests.git. Nous présumons que le dossier du code source se nomme vitam_repo par la suite.

S’assurer que JAVA_HOME et M2_HOME sont renseignés dans le .bashrc ou équivalent (On peut obtenir M2_HOME avec la commande mvn -version )

Dans le fichier vitam_repo/sources/pom.xml désactiver les modules ihm-demo et ihm-recette

Installer node 18 avec la commande nvm install 18 && nvm use 18

Dans les paramètres IntelliJ: Editor > Code Style > Scheme > Import Scheme > IntelliJ IDEA code style XML et sélectionner le code style téléchargé plus tôt

Copier le répertoire vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations vers vitam_repo/.idea/runConfigurations (si le dossier existe déjà, remplacer le contenu.)

Relancer Intellij IDEA.

Editer le fichier /etc/hosts (ou équivalent) et y ajouter les enregistrements suivants:

# Vitam
127.0.0.1    access-external.service.consul
127.0.0.1    access-internal.service.consul
127.0.0.1    external.service.consul
127.0.0.1    functional-administration.service.consul
127.0.0.1    ingest-external.service.consul
127.0.0.1    ingest-internal.service.consul
127.0.0.1    logbook.service.consul
127.0.0.1    metadata.service.consul
127.0.0.1    offer-fs-1.service.consul
127.0.0.1    offer.service.consul
127.0.0.1    processing.service.consul
127.0.0.1    security-internal.service.consul
127.0.0.1    storage.service.consul
127.0.0.1    workspace.service.consul

Création de l’arborescence /vitam

Vitam Core a besoin d’avoir un dossier stockant des données dans la racine de l’ordinateur. Voici l’arborescence nécessaire :

/vitam/
├── conf
├── data
│   ├── ihm-recette
│   │   └── test-data
│   │       └── data -> /home/marthe/projects/vitam-itests/data
├── log
└── tmp

S’assurer que tous les répertoires appartiennent à votre utilisateur (chown)

Créer dans /vitam/data/storage un fichier nommé fr.gouv.vitam.storage.offers.workspace.driver.DriverImpl avec le contenu offer-fs-1.service.consul

Créer un lien symbolique de /vitam/data/ihm-recette/test-data/data vers vitam-itests/data (vitam-itests étant le deuxième dépôt cloné au départ.)

Copier vitam_repo/vitam-conf-dev/conf vers /vitam/conf.
Aller dans /vitam/conf/metadata/mapping et vérifier que les fichiers unit-es-mapping.json et og-es-mapping.json sont des liens symboliques vers les fichiers dans vitam_repo/deployment/ansible-vitam/roles/elasticsearch-mapping/files/.

Aller dans /vitam/conf/worker et s’assuree que plugins.json est bien un lien vers deployment/ansible-vitam/roles/vitam/files/worker/plugins.json

Ouvrir les paramètres IntelliJ IDEA > Appearance and Behavior > Path Variables et y ajouter une variable nommée vitamLocalShareFolder pointant vers /vitam.



Compilation

Depuis le répertoire vitam_repo/sources exécuter la commande

mvn clean install -D-skipTests -P-vitam

La procédure peut prendre environ 10 à 20 minutes.

Compilation des COTS

Les COTS sont des dépendances externes nécessaires pour lancer le projet en local (mongo et elasticSearch)

L’option la plus simple est d’utiliser docker compose, dont le fichier .yaml se trouve dans vitam_repo/dev-deployment/docker-cots Puis lancer avec IntelliJ ou docker compose: docker compose up



Lancement

Dans IntelliJ, lancer la configuration multiRun Vitam, qui doit normalement éxecuter les 13 services le composant.



Initialisation des données

Lancer le script init_data_vitam.sh depuis vitam-conf-dev/scripts. Celui-ci doit s’exécuter sans erreurs.