Le but de cette page est de décrire le package afin de mieux en maitriser son fonctionnement. Deux niveaux de documentation sont rédigés ci-dessous :
- Description des commandes ANT du package et de leurs objectifs
- Détails sur les briques techniques utilisées
Description sommaire
- Les tâches en gras sont les tâches principales. Les tâches en gris sont des tâches secondaires ;
Dans les schémas, les numéros représentent l'ordre d'appel.
Tâche ANT | Description sommaire |
---|---|
initportal | Exécute toutes les tâches nécessaires au déploiement du portail et prépare la base de données du portail :
|
initdb | Supprime toutes les tables et prépare la base de données du portail :
|
db-update | Met à jour une base de données existante pour passer à la version supérieure :
|
db | Charge certaines tables et données :
|
db-hibernate | Supprime et créé les tables gérées par Hibernate :
|
db-hibernate-update | Effectue les modifications de la base de données (dans le cas des montées de version du portail) pour le portail et les schémas d'évènements :
|
db-hibernate-portal | Supprime et créé les tables gérées par Hibernate pour le portail :
|
db-hibernate-raw-events | Supprime et créé les tables gérées par Hibernate pour le stockage des évènements bruts (à usage statistique) du portail :
|
db-hibernate-aggr-events | Supprime et créé les tables gérées par Hibernate pour le stockage des évènements agrégés (à usage statistique) du portail :
|
db-hibernate-portal-update | Effectue les changements demandés (sur la base de données du portail - lors des montées de version) pour le schéma du portail :
|
db-hibernate-raw-events-update | Effectue les modifications de la base de données (dans le cas des montées de version du portail) pour le stockage des évènements bruts du portail :
|
db-hibernate-aggr-events-update | Effectue les modifications de la base de données (dans le cas des montées de version du portail) pour le stockage des évènements élaborés du portail :
|
db-import | Importe le contenu de fichier XML par défaut dans la base de données :
En fonction de la tâche, les fichiers d'un repertoire uportal-war/src/main/data/***_entities (cf. ci-dessous) seront importées en base de données. Ces répertoires contiennent des données qui seront importées en base lors de l'import. Ces données correspondent à des fichiers XML contenant les valeurs par défaut à entrer dans la base et nécessaires au bon démarrage d'uPortal 4. Pour plus d'informations sur le fonctionnement de Cernunnos : |
db-import-required | Importe en base de données les entités requises :
|
db-import-default | Importe en base de données les entités par défaut :
|
db-import-quickstart | Importe en base de données les entités de "démarrage rapide" :
|
deployPortletApp | Déploie le portlet (dans le conteneur de servlet) dont le .war est précisé en paramètre :
|
deploy-ear | Déploie le portail, les librairies et les portlets dans le conteneur de servlet :
Plus d'informations ici. |
clean-shared | Supprime le contenu du répertoire "shared/lib" de tomcat (supprime les librairies partagées) :
|
deploy-war | Déploie la webapp uPortal dans le conteneur de servlet :
|
fastWarDeploy | Déploie le .war en paramètre dans le conteneur de servlet :
Note : Techniquement le traitement est différent sous Windows et sous Centos. |
data-export | Exporte toutes les données vers un fichier XML :
Exemple : ant data-export -dir=some/export/directory |
data-import | Importe en base de données le ou les fichier(s) XML en paramètre :
Exemple 1 : ant data-import -Ddir=some/directory |
data-delete | Supprime les données spécifiées (Type et Id en paramètre) :
Exemple : ant data-delete -Dtype=MATABLE -Dsysid=MONIDTECHNIQUE |
up-shell | Exécute le script en paramètre :
|
Description détaillée
Brique | Utilisation | Description |
---|---|---|
Fichier "/properties/db/tables.xml" Fichier "/properties/db/data.xml" | db | Fichiers de définition des tables / données du portail. Data-import n'a pas été utilisé car les deux fichiers sont intimement liés, l'un concerne la structure des tables et ne peut donc pas être utilisé par data-import. De plus, DBLoader a été choisi pour effectuer cette tâche (DBLoader prend en entrée un fichier de structure et un fichier de données). Exemple de fichier : tables.xml, data.xml Lien vers la documentation des properties uPortal : https://wiki.jasig.org/display/UPM/Properties |
Classe "portalShellBuildHelper" | db / db-hibernate-portal | Classe utilitaire d'exécution de scripts : Lien vers l'API : Cernunnos est également utilisé pour réaliser les imports / exports de la base de données : |
Répertoire "uportal-war/src/main/data/required_entities" | db-import-required | Répertoire contenant les données des entités obligatoires : Exemple de répertoire : required_entities |
Répertoire "uportal-war/src/main/data/default_entities" | db-import-default | Répertoire contenant les données des entités par défaut : Exemple de répertoire : default_entities |
Répertoire "uportal-war/src/main/data/quickstart_entities" | db-import-quickstart | Répertoire contenant les données d'exemples d'entités pour un démarrage rapide : Exemple de répertoire : quickstart_entities |
Tâche "AssembleTask" de pluto | deployPortletApp | Tâche ant assimilant le packaging et le déploiement à celui de maven : Lien vers le projet Apache : Pluto |
Tâches "uportal-ant-tasks" | deploy-ear | Tâche spécifique à Tomcat pour faciliter le déploiement de l'EAR dans tomcat: Lien vers la documentation de l'API : TomcatEarDeployerTask |
Maven | deploy-ear / deploy-war | Maven permet la gestion et l'automatisation du déploiement d'uPortal : |
Portlet | Composant que l'utilisateur peut afficher où il veut dans la vue personnalisée de son portail : |