« ONBOARDING » : différence entre les versions

De Vitam
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
 
(32 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
== Accès aux différents sites ==
= Accès aux différents sites =
 
- [https://messagerie.culture.gouv.fr/ Messagerie Outlook]
- [https://messagerie.culture.gouv.fr/ Messagerie Outlook]


Ligne 16 : Ligne 17 :
- [https://github.com/ProgrammeVitam/vitam-itests/ GitHub de Vitam-itests]
- [https://github.com/ProgrammeVitam/vitam-itests/ GitHub de Vitam-itests]


- [https://www.programmevitam.fr/2023/11/13/vitam-en-ligne-interventions/ Webinaires]
- [https://www.programmevitam.fr/pages/demonstration/ Webinaires]


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


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


'''Un script d'installation est disponible. Pour la procédure[[Installation avec script]]'''
Logiciels:
* Java 17 JDK
* IntelliJ IDEA 24 (Ultimate recommandé) avec:
** Plugin multirun
** Code style pour Java: [https://assistance.programmevitam.fr/plugins/document/projetvitam/folder/50 VitamStyle_Spotless.xml] à ajouter dans les paramètres de IntelliJ: Editor &gt; Code Style &gt; Java &gt; Scheme &gt; Import Scheme &gt; IntelliJ IDEA code style XML
* Maven 3.9.X
* Docker (utiliser Rancher Desktop pour Mac)
* nvm<code>curl -o- <nowiki>https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh</nowiki> | bash</code>
* ansible
** installer pipx: https://pipx.pypa.io/stable/
** puis installer ansible <code>pipx install --include-deps ansible</code>
* node 18 avec la commande <code>nvm install 18 &amp;&amp; nvm use 18</code>


= Prérequis =
Matériels:
* Mémoire vive: 16GiB
* Stockage: 20GiB


Linux (x86) ou MacOS (y compris Apple Silicon)
= Procédure d’installation de Vitam Core =
'''Un script d'installation est disponible. Pour la procédure:  [[Installation avec script]] (à réparer)'''


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)
== Récupération du code et mise en place de l’environnement de travail ==
 
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.
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.
Ligne 40 : Ligne 51 :
Dans le fichier vitam_repo/sources/pom.xml désactiver les modules <code>ihm-demo</code> et <code>ihm-recette</code>
Dans le fichier vitam_repo/sources/pom.xml désactiver les modules <code>ihm-demo</code> et <code>ihm-recette</code>


Installer node 18 avec la commande <code>nvm install 18 &amp;&amp; nvm use 18</code>
Dans les paramètres IntelliJ: Editor &gt; Code Style &gt; Java &gt; Scheme &gt; Import Scheme &gt; IntelliJ IDEA code style XML et sélectionner le code style téléchargé plus tôt


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.)


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.)
Comme alternative, on peut utiliser la commande suivante pour effectuer la copie :  cp -r vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations/* vitam_repo/.idea/runConfigurations/
 
Si le dossier cible '''n'existe pas''', créez-le avant la copie :
 
mkdir -p vitam_repo/.idea/runConfigurations
 
cp -r vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations/* vitam_repo/.idea/runConfigurations/
 
Si vous n’avez pas les permissions pour écrire dans le répertoire cible, ajoutez <code>sudo: sudo cp -r vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations/* vitam_repo/.idea/runConfigurations/</code>
 
Vérification après copie:  ls -l vitam_repo/.idea/runConfigurations/


Relancer Intellij IDEA.
Relancer Intellij IDEA.


Editer le fichier <code>/etc/hosts</code> (ou équivalent) et y ajouter les enregistrements suivants:
Editer le fichier <code>/etc/hosts</code> (ou équivalent) et y ajouter les enregistrements suivants:
  # Vitam
  # Vitam
  127.0.0.1    access-external.service.consul
  127.0.0.1    access-external.service.consul
Ligne 65 : Ligne 87 :
  127.0.0.1    workspace.service.consul
  127.0.0.1    workspace.service.consul


= Création de l’arborescence /vitam =
== 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 Core a besoin d’avoir un dossier stockant des données dans la racine de l’ordinateur. Voici l’arborescence nécessaire :
Ligne 84 : Ligne 106 :
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.)
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 />
On peut créer un lien symbolique en utilisant la commande suisvante: ln -s vitam-itests/data /vitam/data/ihm-recette/test-data/data
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>.
 
Pour vérifier que le lien symbolique a été crée taper la commande ls -l /vitam/data/ihm-recette/test-data/data
 
Créer un lien symbolique <code>/vitam/conf</code> qui pointe vers <code>vitam_repo/vitam-conf-dev/conf</code>: ln -s vitam_repo/vitam-conf-dev/conf/ /vitam/conf<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/environments/files/elasticsearch-mappings/</code>.


Aller dans <code>/vitam/conf/worker</code> et s’assurer que <code>plugins.json</code> est bien un lien vers <code>deployment/ansible-vitam/roles/vitam/files/worker/plugins.json</code>
Aller dans <code>/vitam/conf/worker</code> et s’assurer 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>.
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>


= Compilation =
== Compilation ==


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


<code>mvn clean install -D-skipTests -P-vitam</code>
<code>mvn clean install -DskipTests -P-vitam</code>
 


La procédure peut prendre environ 10 à 20 minutes.<span id="compilation-des-cots"></span>
La procédure peut prendre environ 10 à 20 minutes.<span id="compilation-des-cots"></span>
== Compilation des COTS ==
== Compilation des COTS ==


Ligne 103 : Ligne 132 :


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>
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>
= Lancement =
 
== Lancement ==


Dans IntelliJ, lancer la configuration multiRun Vitam, qui doit normalement éxecuter les 13 services le composant.
Dans IntelliJ, lancer la configuration multiRun Vitam, qui doit normalement éxecuter les 13 services le composant.
= Initialisation des données =
 
== 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.
Lancer le script <code>init_data_vitam.sh</code> depuis <code>vitam-conf-dev/scripts</code>. Celui-ci doit s’exécuter sans erreurs.


Dans IntelliJ, exécuter la configuration nommée <code>Cucumber init</code>. Celle-ci doit s'exécuter sans erreurs.
Dans IntelliJ, exécuter la configuration nommée <code>Cucumber init</code>. Celle-ci doit s'exécuter sans erreurs.
= Procédure d'installation de Vitam-UI =
== Récupération du code et mise en place de l’environnement de travail ==
Cloner le projet: https://github.com/ProgrammeVitam/vitam-ui.git
Changer les droits si besoin <code>sudo chown -R $USER vitam-ui/</code>
Builder le projet avec maven et le profil vitam (profil spécial pour les développeurs):
<code>mvn clean install -Pvitam</code>
Ajouter dans votre fichier /etc/hosts la ligne:
# Vitam-UI
127.0.0.1 dev.vitamui.com
== Génération des certificats (optionel) ==
cd deployment
./pki/scripts/generate_ca_dev.sh true && ./pki/scripts/generate_certs_dev.sh environments/hosts.local true && ./generate_stores_dev.sh
Autoriser les certificats CA suivants dans votre navigateur:
* dev-deployment/environments/certs/server/ca/ca-intermediate.crt
* dev-deployment/environments/certs/server/ca/ca-root.crt
Avec Chrome: chrome://settings/certificates -> Authorities -> Import
Avec Firefox: about:preferences#privacy -> Certificates -> Show Certificates -> Authorities -> Import
== Initialisation des données mongo ==
Lancer le script ./tools/docker/mongo/restart_dev.sh
== Configurer Vitam-UI pour utiliser Vitam Core sur le serveur int ==
Créer un répertoire /vitam/conf/vitam-ui et ajouter [https://assistance.programmevitam.fr/plugins/docman/download/156/1 les fichiers zippés ici]:
* access-external-client.conf
* collect-external-client.conf
* ingest-external-client.conf
* external.p12
* cacerts
== Installer les dépendances Angular ==
Build de la librairie vitamui-library
<code>cd vitam-ui/ui-frontend/ npm run build:vitamui-library</code>
Installation des dépendances
<code>cd vitam-ui/ui-frontend/ npm install</code>
== Lancer Vitam-UI en local ==
Lancer les runners suivants:
* security
* IAM
* CAS
* archive-search
* API gateway
* Angular: portal
* Angular identity
* Angular: archive-search
== Vérifier que Vitam-UI fonctionne ==
Lancer le portail: https://dev.vitamui.com:4200/
Connectez-vous avec le compte: admin@change-it.fr / password
Naviguer dans l'application
= Création des MR / PR =
Vous trouverez [https://mediawiki.dev.programmevitam.fr/index.php/Cr%C3%A9ation_d%27une_MR_/_PR ici] comment créer une MR / PR (règles de nommage, etc.):

Dernière version du 19 mars 2025 à 11:23

Accès aux différents sites[modifier | modifier le wikicode]

- Messagerie Outlook

- Tuleap

- Slack

- Teams

- Jenkins

- GitLab de Vitam Core

- GitHub de Vitam UI

- GitHub de Vitam-itests

- Webinaires

Prérequis[modifier | modifier le wikicode]

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

Logiciels:

  • Java 17 JDK
  • IntelliJ IDEA 24 (Ultimate recommandé) avec:
    • Plugin multirun
    • Code style pour Java: VitamStyle_Spotless.xml à ajouter dans les paramètres de IntelliJ: Editor > Code Style > Java > Scheme > Import Scheme > IntelliJ IDEA code style XML
  • Maven 3.9.X
  • Docker (utiliser Rancher Desktop pour Mac)
  • nvm: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
  • ansible
  • node 18 avec la commande nvm install 18 && nvm use 18

Matériels:

  • Mémoire vive: 16GiB
  • Stockage: 20GiB

Procédure d’installation de Vitam Core[modifier | modifier le wikicode]

Un script d'installation est disponible. Pour la procédure: Installation avec script (à réparer)

Récupération du code et mise en place de l’environnement de travail[modifier | modifier le wikicode]

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

Dans les paramètres IntelliJ: Editor > Code Style > Java > 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.)

Comme alternative, on peut utiliser la commande suivante pour effectuer la copie : cp -r vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations/* vitam_repo/.idea/runConfigurations/

Si le dossier cible n'existe pas, créez-le avant la copie :

mkdir -p vitam_repo/.idea/runConfigurations

cp -r vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations/* vitam_repo/.idea/runConfigurations/

Si vous n’avez pas les permissions pour écrire dans le répertoire cible, ajoutez sudo: sudo cp -r vitam_repo/vitam-conf-dev/intellig-conf/runConfigurations/* vitam_repo/.idea/runConfigurations/

Vérification après copie: ls -l vitam_repo/.idea/runConfigurations/

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[modifier | modifier le wikicode]

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
│   └── storage
├── 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.)

On peut créer un lien symbolique en utilisant la commande suisvante: ln -s vitam-itests/data /vitam/data/ihm-recette/test-data/data

Pour vérifier que le lien symbolique a été crée taper la commande ls -l /vitam/data/ihm-recette/test-data/data

Créer un lien symbolique /vitam/conf qui pointe vers vitam_repo/vitam-conf-dev/conf: ln -s vitam_repo/vitam-conf-dev/conf/ /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/environments/files/elasticsearch-mappings/.

Aller dans /vitam/conf/worker et s’assurer 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[modifier | modifier le wikicode]

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

mvn clean install -DskipTests -P-vitam


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

Compilation des COTS[modifier | modifier le wikicode]

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[modifier | modifier le wikicode]

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

Initialisation des données[modifier | modifier le wikicode]

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

Dans IntelliJ, exécuter la configuration nommée Cucumber init. Celle-ci doit s'exécuter sans erreurs.

Procédure d'installation de Vitam-UI[modifier | modifier le wikicode]

Récupération du code et mise en place de l’environnement de travail[modifier | modifier le wikicode]

Cloner le projet: https://github.com/ProgrammeVitam/vitam-ui.git

Changer les droits si besoin sudo chown -R $USER vitam-ui/

Builder le projet avec maven et le profil vitam (profil spécial pour les développeurs): mvn clean install -Pvitam

Ajouter dans votre fichier /etc/hosts la ligne:

# Vitam-UI
127.0.0.1 dev.vitamui.com

Génération des certificats (optionel)[modifier | modifier le wikicode]

cd deployment 
./pki/scripts/generate_ca_dev.sh true && ./pki/scripts/generate_certs_dev.sh environments/hosts.local true && ./generate_stores_dev.sh

Autoriser les certificats CA suivants dans votre navigateur:

  • dev-deployment/environments/certs/server/ca/ca-intermediate.crt
  • dev-deployment/environments/certs/server/ca/ca-root.crt

Avec Chrome: chrome://settings/certificates -> Authorities -> Import

Avec Firefox: about:preferences#privacy -> Certificates -> Show Certificates -> Authorities -> Import

Initialisation des données mongo[modifier | modifier le wikicode]

Lancer le script ./tools/docker/mongo/restart_dev.sh

Configurer Vitam-UI pour utiliser Vitam Core sur le serveur int[modifier | modifier le wikicode]

Créer un répertoire /vitam/conf/vitam-ui et ajouter les fichiers zippés ici:

  • access-external-client.conf
  • collect-external-client.conf
  • ingest-external-client.conf
  • external.p12
  • cacerts

Installer les dépendances Angular[modifier | modifier le wikicode]

Build de la librairie vitamui-library

cd vitam-ui/ui-frontend/ npm run build:vitamui-library

Installation des dépendances

cd vitam-ui/ui-frontend/ npm install

Lancer Vitam-UI en local[modifier | modifier le wikicode]

Lancer les runners suivants:

  • security
  • IAM
  • CAS
  • archive-search
  • API gateway
  • Angular: portal
  • Angular identity
  • Angular: archive-search

Vérifier que Vitam-UI fonctionne[modifier | modifier le wikicode]

Lancer le portail: https://dev.vitamui.com:4200/

Connectez-vous avec le compte: admin@change-it.fr / password

Naviguer dans l'application

Création des MR / PR[modifier | modifier le wikicode]

Vous trouverez ici comment créer une MR / PR (règles de nommage, etc.):