Sommaire | Précédent | Suivant
Pour rappel dans Coulisse 2 : ajouter le RGAA 3 2016 : comment faire ?
nous vous proposions 2 méthodologies et nous en avons choisie une des 2
pour la série coulisse et aussi pour la mise en place du RGAA 3.2016 dans Asqatasun.
Créer un nouveau référentiel et importer l’existant à partir du RGAA 3.0
- Produire un .csv du nouveau référentiel à partir du site officiel
- Générer un nouveau référentiel à partir du .csv via le plugin maven dédié.
- Ajouter le nouveau référentiel au projet, à la webapp, au runner et au plugin Jenkins.
- importer les tests identiques
…
Sauter des étapes pour mieux préparer la suite
Dans ce 3ème opus de la série coulisse, nous vous proposons de sauter les 2 premières étapes et de travailler en amont sur l’ajout du référentiel à la webapp, au runner et au plugin Jenkins.
La raison principale de cet exercice d’équilibriste (intégrer un sous-projet qui n’existe pas encore) est que cette étape est commune aux 2 méthodologies (copier le RGAA 3.0 ou repartir d’un référentiel vide).
La 2ème raison est plutôt pour le “fun” : quand nous rajouterons le sous-projet du référentiel, il sera quasi utilisable dans Asqatasun…
processus
- Ajouter le référentiel au projet
- Ajouter le référentiel à la webapp
- Ajouter le référentiel au runner
- Ajouter le référentiel au plugin Jenkins.
1. Ajouter le référentiel au projet
processus
Il s’agit de rajouter le nouveau référentiel afin qu’il soit compilé
par maven
avec tout le projet Asqatasun.
Après ces modifications, la compilation d’Asqatasun n’est plus possible, car le sous-projet rules-rgaa3.2016
n’existe pas encore. Dès que le nouveau référentiel sera rajouté, comme sous-projet, tout rentrera dans l’ordre.
fichiers à modifier
modifications
Les modifications sont sur le dépôt git dans 1 seul commit.
Pour le fichier rules/pom.xml
, vous devez rajouter une ligne :
<module>rules-rgaa3.2016</module>
Pour le fichier pom.xml
, vous devez rajouter la dépendance au nouveau référentiel
afin qu’il soit compilé par maven avec tout le projet Asqatasun.
<dependency> <groupId>${asqatasunGroupId}</groupId> <artifactId>asqatasun-rules-rgaa3.2016</artifactId> <version>${asqatasunVersion}</version> <scope>runtime</scope> </dependency>
2. Ajouter le référentiel à la webapp
processus
Les modifications à effectuer sont :
- l’ajout du nouveau référentiel comme dépendance à la webapp
- l’ajout du fichier SQL du référentiel dans le
tar.gz
d’Asqatasun - la modification du script d’installation d’Asqatasun pour exécuter ce fichier SQL
Quand le nouveau référentiel sera ajouté comme sous-projet, la webapp nécessitera quelques modifications complémentaires pour permettre d’utiliser le RGAA 3.2016.
fichiers à modifier
- web-app/asqatasun-web-app/pom.xml
- web-app/asqatasun-web-app/src/main/resources/descriptor.xml
- web-app/tgol-resources/src/main/resources/installation/install.sh
modifications
Les modifications sont sur le dépôt git dans 1 seul commit.
Pour le fichier pom.xml
de la webapp, vous devez rajouter la dépendance au nouveau référentiel :
<dependency> <groupId>${asqatasunGroupId}</groupId> <artifactId>asqatasun-rules-rgaa3.2016</artifactId> <scope>runtime</scope> </dependency>
Pour le fichier descriptor.xml
, qui décrit la construction du tar.gz
utilisé à l’installation d’Asqatasun, vous devez rajouter le fichier SQL du nouveau référentiel pour qu’il soit inclue dans le tar.gz
à la compilation d’Asqatasun.
<fileSet> <directory>${basedir}/../../rules/rules-rgaa3.2016/src/main/resources/sql</directory> <includes> <include>rgaa3.2016-insert.sql</include> </includes> <fileMode>664</fileMode> <outputDirectory>/install/rules/sql</outputDirectory> </fileSet>
Pour le fichier install.sh
, qui est le script d’installation d’Asqatasun, vous devez rajouter 1 ligne à la fonction create_tables()
pour permettre le chargement du nouveau référentiel en base de données à l’installation d’Asqatasun.
my_sql_insert rgaa3.2016-insert.sql
3. Ajouter le référentiel au runner
processus
Le runner
est un outil pour lancer des audits en ligne de commande. Il est principalement utilisé comme interface entre le plugin Jenkins et Asqatasun.
Les modifications à effectuer sont :
- l’ajout du nouveau référentiel comme dépendance au sous-projet runner
- l’ajout du fichier SQL du référentiel dans le
tar.gz
du runner - la modification de la classe java du runner pour inclure ce nouveau référentiel
Quand le nouveau référentiel sera ajouté, le runner
sera directement utilisable, contrairement à la webapp qui nécessite quelques modifications complémentaires.
fichiers à modifier
- runner/asqatasun-runner/pom.xml
- runner/asqatasun-runner/src/main/resources/descriptor.xml
- runner/asqatasun-runner/src/main/java/(…)/runner/Asqatasun.java
modifications
Les modifications sont sur le dépôt git dans 2 commits :
Pour le fichier pom.xml
du runner
, vous devez rajouter la dépendance au nouveau référentiel :
<dependency> <groupId>${asqatasunGroupId}</groupId> <artifactId>asqatasun-rules-rgaa3.2016</artifactId> <scope>runtime</scope> </dependency>
Pour le fichier descriptor.xml
, qui décrit la construction du tar.gz
utilisé à l’installation du runner, vous devez rajouter le fichier SQL du nouveau référentiel pour qu’il soit inclue dans le tar.gz
du runner à la compilation.
<fileSet> <directory>${basedir}/../../rules/rules-rgaa3.2016/src/main/resources/sql</directory> <includes> <include>rgaa3.2016-insert.sql</include> </includes> <fileMode>664</fileMode> <outputDirectory>/install/rules/sql</outputDirectory> </fileSet>
Pour le fichier Asqatasun.java
du sous-projet runner
,
vous pouvez voir les modifications dans le commit dédié.
4. Ajouter le référentiel au plugin Jenkins
processus
Le plugin Jenkins utilise le runner pour lancer les audits.
Si les modifications du runner
sont déjà implantées, le plugin sera opérationnel pour le nouveau RGAA 3 2016 quand ce nouveau référentiel sera ajouté à Asqatasun.
fichiers à modifier
- src/main/java/jenkins/(…)/AsqatasunRunnerBuilder.java
- src/main/resources/jenkins/(…)/AsqatasunRunnerBuilder/config.properties
- src/main/resources/jenkins/(…)/AsqatasunRunnerBuilder/config_en.properties
- src/main/resources/jenkins/(…)/AsqatasunRunnerBuilder/config_fr.properties
modifications
Les modifications sont sur le dépôt git du plugin Jenkins dans 1 seul commit.
Pour le fichier AsqatasunRunnerBuilder.java
, il suffit de rajouter 3 lignes à méthode doFillRefAndLevelItems()
pour permettre au plugin Jenkins de proposer le nouveau référentiel.
new Option("Rgaa3.2016 : A", "Rgaa32016;Bz"), new Option("Rgaa3.2016 : AA", "Rgaa32016;Ar"), new Option("Rgaa3.2016 : AAA", "Rgaa32016;Or"),
Les modifications dans les fichiers config*.properties
(fichiers des traductions)
se résume en 3 lignes à ajouter :
Rgaa32016;LEVEL_1=Rgaa 3.2016 : A Rgaa32016;LEVEL_2=Rgaa 3.2016 : AA Rgaa32016;LEVEL_3=Rgaa 3.2016 : AAA
La cuisine vous est ouverte…
Cette série Coulisse est l’occasion de rendre public le processus d’ajout d’un référentiel « officiel » à Asqatasun à la fois pour le documenter et pour le rendre accessible à tous.
Vos retours, questions, remarques et contributions
sont les bienvenus et même fortement recommandés.
À venir…
- Coulisse 4) Produire le .csv d’import du nouveau référentiel RGAA 3.2016
- Coulisse 5) Générer le référentiel à partir du .csv via le plugin maven