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 :
gra_anonymisation_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’arborescencefr/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).