« ONBOARDING » : différence entre les versions
Aucun résumé des modifications |
|||
| (5 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 143 : | 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 | = 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 156 : | Ligne 156 : | ||
Ajouter dans votre fichier /etc/hosts la ligne: | Ajouter dans votre fichier /etc/hosts la ligne: | ||
# Vitam- | # Vitam-UI | ||
127.0.0.1 dev.vitamui.com | 127.0.0.1 dev.vitamui.com | ||
== Génération des certificats == | == Génération des certificats (optionel) == | ||
cd deployment | cd deployment | ||
| Ligne 174 : | Ligne 174 : | ||
Lancer le script ./tools/docker/mongo/restart_dev.sh | 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 == | == Installer les dépendances Angular == | ||
| Ligne 185 : | Ligne 194 : | ||
<code>cd vitam-ui/ui-frontend/ npm install</code> | <code>cd vitam-ui/ui-frontend/ npm install</code> | ||
== Lancer | == Lancer Vitam-UI en local == | ||
Lancer les runners suivants: | Lancer les runners suivants: | ||
| Ligne 197 : | Ligne 206 : | ||
* Angular: archive-search | * Angular: archive-search | ||
== Vérifier que | == Vérifier que Vitam-UI fonctionne == | ||
Lancer le portail: https://dev.vitamui.com:4200/ | Lancer le portail: https://dev.vitamui.com:4200/ | ||
| Ligne 204 : | Ligne 213 : | ||
Naviguer dans l'application | 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]
- Tuleap
- Slack
- Teams
- Jenkins
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
- installer pipx: https://pipx.pypa.io/stable/
- puis installer ansible
pipx install --include-deps 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.):