Jan 11, 2018 4:14:42 PM seb leridon avatar

Documentation spécifique Mairie de Paris

GRA : Batch d'import du fichier HRAccess dans la base Identity store

-----

Présentation

Ce script permet d'importer dans les tables du plugin "identity store" les données issues du fichier d'export XML des données d'HRAccess.

Le batch utilise un fichier de mapping mapping.properties situé dans le dossier src/main/resources. Ce fichier permet de faire le lien entre un attribut HR Access et un attribut d’identité.

Ressources

Le batch d’import HR Access est disponible sous SVN à l’URL suivante : https://dev.lutece.paris.fr/svn/lutece/portal/trunk/batches/batch-gra-identity.

Execution

Le script est situé dans src/bin. (Attention, en environnement de recette interne ou externe, le fichier doit être anonymisé, voir : Anonymisation du fichier HRAccess )

./batch_gra_identity.sh

Ce script a besoin d’une variable d’environnement PRODUCTS_HOME qui pointe vers le dossier du batch. Le dossier pointé par PRODUCTS_HOME doit contenir l’arborescence suivante :

  • logs : contient les logs du batch
  • lib : contient le JAR du composant batch-gra-identity
  • lib-ext : contient les dépendances du composant batch-gra-identity
  • conf : contient les surcharges de configuration

Configuration :

  • Pour surcharger la configuration globale, mettre le nouveau fichier batch-gra-identity.properties à la racine de ce dossier (notamment le chemin vers la base de données)
  • Pour surcharger le fichier de mapping, mettre le nouveau fichier mapping.properties à la racine de ce dossier.
  • pour surcharger le schéma XML, mettre le nouveau fichier schema.xsd dans l'arborescence fr/paris/lutece/batches/gra/identity/

Voici un exemple d’arborescence :

-- conf/
-- batch-gra-identity.properties
-- mapping.properties
-- fr/
-- paris/
-- lutece/
-- batches/
-- gra/
-- identity/
-- schema.xsd
-- lib/
-- batch-gra-identity-1.0.0-SNAPSHOT.jar
-- lib-ext/
-- activation-1.1.jar
-- aopalliance-1.0.jar
-- ...
-- logs/

Il faut jouer le script SQL create_db.sql situé dans le dossier src/sql afin de créer les tables temporaires nécessaires au traitement dans la base de données contenant les tables d’IdentityStore.

Remarque : attention au type du champ id_attribute qui doit correspondre dans les deux tables "batch_GRA_identity_attribute" et "identity_store_attribute" (ainsi que le moteur de transaction MyIsam ou InnoDb)