« ONBOARDING » : différence entre les versions

De Vitam
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
 
(15 versions intermédiaires par le même utilisateur non affichées)
Ligne 70 : Ligne 70 :


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:
<code># Vitam
 
# Vitam
  127.0.0.1    access-external.service.consul
  127.0.0.1    access-external.service.consul
  127.0.0.1    access-internal.service.consul
  127.0.0.1    access-internal.service.consul
Ligne 84 : Ligne 85 :
  127.0.0.1    security-internal.service.consul
  127.0.0.1    security-internal.service.consul
  127.0.0.1    storage.service.consul
  127.0.0.1    storage.service.consul
  127.0.0.1    workspace.service.consul</code>
  127.0.0.1    workspace.service.consul


== Création de l’arborescence /vitam ==
== Création de l’arborescence /vitam ==
Ligne 142 : Ligne 143 :
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 vitamui =  
= Procédure d'installation de Vitam-UI =  


== Récupération du code et mise en place de l’environnement de travail ==
== Récupération du code et mise en place de l’environnement de travail ==
Ligne 155 : Ligne 156 :
Ajouter dans votre fichier /etc/hosts la ligne:  
Ajouter dans votre fichier /etc/hosts la ligne:  


<code># Vitam-ui
# Vitam-UI
127.0.0.1 dev.vitamui.com</code>
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.):