Code source wiki de Accueil Hypercerts

Version 14.1 par Matthieu Manginot le 22/07/2020 - 15:48

Masquer les derniers auteurs
dufour18 4.1 1 Vous cherchez à délivrer aux étudiants de votre université des attestations de réussite dématérialisées ? Hypercerts vous permettera de générer et envoyer des attestations officielles, numériques, et infalsifiable.
Benjamin Seclier 1.1 2
dufour18 4.1 3 Ces dernières pourront être envoyées par mail, déposées dans le nuage, et même être certifiées authentiques et intègres grâce à une blockchain dédiée.
Benjamin Seclier 1.1 4
dufour18 4.1 5 Une fois l'application connectée à Apogée et au LDAP, les gestionnaires de composantes pourront demander la génération et l'envoi des attestations de réussite en un clic.
6
dufour18 3.1 7 {{info}}
Matthieu Manginot 9.1 8 La version 1.0.x est une beta. Bien que le cœur de l'application soit fonctionnel, les dépôts de documents dans les coffres digisposte et la certification cryptographique sont en cours de dévelopement actif.
dufour18 3.1 9 {{/info}}
Benjamin Seclier 1.1 10
Matthieu Manginot 7.1 11 == Prérequis ==
dufour18 3.1 12
dufour18 5.1 13 Hypercerts est une application Java qui se connecte à Apogée et au LDAP. Elle requiert l'utilisation d'une base MariaDB pour son fonctionnement interne. Elle se déploie sur des serveurs comme une application SpringBoot classique. Le WAR pourra être pris en charge par un tomcat et servir les utilisateur•ices via l'URL configuré.
dufour18 3.1 14
dufour18 2.1 15 |=(((
dufour18 3.1 16 Technologie
dufour18 2.1 17 )))|=(((
dufour18 3.1 18 Version
dufour18 2.1 19 )))
20 |(((
dufour18 3.1 21 JDK
dufour18 2.1 22 )))|(((
dufour18 3.1 23 11+
dufour18 2.1 24 )))
dufour18 3.1 25 |(% colspan="1" %)(((
26 SpringBoot
27 )))|(% colspan="1" %)(((
28 2.3
29 )))
30 |(% colspan="1" %)(((
31 Vaadin (Frontend)
32 )))|(% colspan="1" %)(((
33 14
34 )))
dufour18 2.1 35 |(((
dufour18 3.1 36 Tomcat
dufour18 2.1 37 )))|(((
dufour18 3.1 38 9+
39 )))
40 |(% colspan="1" %)(((
41 MariaDB
42 )))|(% colspan="1" %)(((
43 14+
44 )))
45 |(% colspan="1" %)(((
46 Maven
47 )))|(% colspan="1" %)(((
48 3.6+
49 )))
50 |(% colspan="1" %)(((
51 Connection Apogée
52 )))|(% colspan="1" %)(((
dufour18 2.1 53 \\
54 )))
dufour18 3.1 55 |(% colspan="1" %)(((
56 Connection Apogée via WS
57 )))|(% colspan="1" %)(((
dufour18 2.1 58 \\
dufour18 3.1 59 )))
60 |(% colspan="1" %)(((
61 Connection LDAP
62 )))|(% colspan="1" %)(((
dufour18 2.1 63 \\
64 )))
dufour18 3.1 65 |(% colspan="1" %)(((
66 Docker (optionnel)
67 )))|(% colspan="1" %)(((
68 docker-compose 3
69 )))
Benjamin Seclier 1.1 70
dufour18 4.1 71 == Téléchargement des sources ==
72
73 Provisoirement, les sources de l'application peuvent être téléchargées à [[cet endroit>>url:http://download-sig.univ-lorraine.fr/home/download-sig/public/hypercerts||shape="rect"]].
74
dufour18 2.1 75 == Personalisation d'Hypercerts ==
76
Matthieu Manginot 12.1 77 === Configuration l'application ===
dufour18 4.1 78
Matthieu Manginot 10.1 79 Créer et compléter un fichier **application.yaml** à la racine du projet sur le modèle de **application-sample.yaml**
80
Matthieu Manginot 12.1 81 (% style="color: rgb(0,51,102);" %)__Pour empêcher l'envoi de mails de test en réel, il est conseillé :__
Matthieu Manginot 11.1 82
83 * d'utiliser un mail catcher ([[https:~~/~~/mailcatcher.me/>>url:https://mailcatcher.me/||shape="rect"]]) en remplacement de votre smtp
84 * ou de configurer l'application pour intercepter tout les mails applicatifs avec ces valeurs :
85 ** **app.production** à false
86 ** **spring.mail.intercept.active** à true
87 ** et **spring.mail.intercept.mails** contenant une ou plusieurs adresses de réception des mails
88
Matthieu Manginot 12.1 89 === Configurer et lancer le projet dans Eclipse ===
90
91 * Importer le projet Maven dans eclipse.
92 * Démarrer l'application en faisant un clic droit sur {{code language="none"}}fr.univlorraine.hypercerts.Application.java{{/code}} et en choisissant 'Run As / Java Application'.
93
Matthieu Manginot 14.1 94 === Customisation des services ===
95
96 Plusieurs services sont customisables en fonction de votre environnement
97
Matthieu Manginot 12.1 98 === Tâches Maven ===
99
100 * Lancer l'application (hors d'un IDE) :
101
102 {{code language="bash" theme="Eclipse"}}
103 mvn spring-boot:run
104 {{/code}}
105
106 * Lancer les tests :
107
108 {{code language="bash" theme="Eclipse"}}
109 mvn verify
110 {{/code}}
111
112 * Créer le package pour production :
113
114 {{code language="bash" theme="Eclipse"}}
115 mvn clean package -Pproduction
116 {{/code}}
117
Matthieu Manginot 13.1 118 === Makefile ===
119
120 Un Makefile est également disponible. A la racine, utilisez `make help` pour obtenir les commandes disponibles.
121
Matthieu Manginot 14.1 122 == Tests unitaires ==
dufour18 4.1 123
Matthieu Manginot 13.1 124 Pour s'assurez que les résultats d'admission de vos étudiants soient bien correct, et afin d'éviter les faux positifs (donc envoyer une attestation de réussite à un•e étudiant•e non reçu•e aux examens), vous pouvez ajouter vos jeux de données
dufour18 4.1 125
Matthieu Manginot 14.1 126 {{status colour="Red" title="FONCTIONNEMENT A PRECISER"/}}
127
dufour18 5.1 128 == Mise en service de l'application ==
dufour18 2.1 129
dufour18 4.1 130 \\
131
Benjamin Seclier 1.1 132 {{section}}
133 {{column width="60%"}}
134 {{recently-updated/}}
135 {{/column}}
136
dufour18 2.1 137 {{column width="5%"}}
138 \\
139 {{/column}}
Benjamin Seclier 1.1 140
141 {{column width="35%"}}
142 ====== Navigate space ======
143
144 {{locationSearch reference="WebHome"/}}
145
146 {{pagetree/}}
147 {{/column}}
148 {{/section}}