Pages enfant
  • a) Architecture tâches ANT (esup 4)

Vous regardez une version antérieure (v. /wiki/pages/viewpage.action?pageId=257949796) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 20) afficher la version suivante »

Description sommaire

Les tâches en gras sont les tâches principales. Les tâches en gris sont des tâches secondaires.

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 :

  1. Fait appel à la tâche "deploy-ear"
  2. Fait appel à la tâche "initdb"

initdb

Supprime toutes les tables et prépare la base de données du portail :

  1. Fait appel à la tâche "db"
  2. Fait appel à la tâche "db-hibernate"
  3. Fait appel à la tâche "db-import"

db-update

Met à jour une base de données existante pour passer à la version supérieure :

  1. Fait appel à la tâche "db-hibernate-update"

db

Charge certaines tables et données :

  1. Charge le fichier des tables "/properties/db/tables.xml"
  2. Charge le fichier des données "/properties/db/data.xml"
  3. À l'aide des deux fichiers précédemment chargés, créé un script de création de tables en faisant appel à la méthode "db" de la classe "portalShellBuildHelper" du package
  4. Fait appel à la tâche "up-shell" avec comme paramètre le script précédemment créé
db-hibernate

Supprime et créé les tables gérées par Hibernate :

  1. Fait appel à la tâche "db-hibernate-portal"
  2. Fait appel à la tâche "db-hibernate-raw-events"
  3. Fait appel à la tâche "db-hibernate-aggr-events"
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 :

  1. Fait appel à la tâche "db-hibernate-portal-update"
  2. Fait appel à la tâche "db-hibernate-raw-events-update"
  3. Fait appel à la tâche "db-hibernate-aggr-events-update"
db-hibernate-portal

Supprime et créé les tables gérées par Hibernate pour le portail :

  1. Créé un script de suppression de tables en faisant appel à la méthode "hibernateDrop" de la classe "portalShellBuildHelper" du package
  2. Complète le script avec la création de tables en faisant appel à la méthode "hibernateCreate" de la classe "portalShellBuildHelper" du package
  3. Fait appel à la tâche "up-shell" avec comme paramètre le script précédemment créé
db-hibernate-raw-events

Supprime et créé les tables gérées par Hibernate  pour le stockage des évènements bruts du portail :

  1. Fait appel à la tâche "db-hibernate-portal" avec comme paramètre "databaseQualifier" la valeur "RawEventsDb"
db-hibernate-aggr-events

Supprime et créé les tables gérées par Hibernate  pour le stockage des évènements élaborés du portail :

  1. Fait appel à la tâche "db-hibernate-portal" avec comme paramètre "databaseQualifier" la valeur "AggrEventsDb"
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 :

  1. Créé un script de modification de base en faisant appel à la méthode "hibernateUpdate" de la classe "portalShellBuildHelper" du package
  2. Fait appel à la tâche "up-shell" avec comme paramètre le script précédemment créé
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 :

  1. Fait appel à la tâche "db-hibernate-portal-update" avec comme paramètre "databaseQualifier" la valeur "RawEventsDb"
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 :

  1. Fait appel à la tâche "db-hibernate-portal-update" avec comme paramètre "databaseQualifier" la valeur "AggrEventsDb"

db-import

Importe le contenu de fichier XML par défaut dans la base de données :

  1. Fait appel à la tâche "db-import-required"
  2. Si la variable "noDefaultData" n'est pas valuée, fait appel à la tâche "db-import-default"
  3. Si la variable "noQuickstartData" n'est pas valuée, fait appel à la tâche "db-import-quickstart"
db-import-required

Importe en base de données les entités requises :

  1. Fait appel à la tâche "data-import" avec comme répertoire des données le répertoire "uportal-war/src/main/data/required_entities"
db-import-default

Importe en base de données les entités par défaut :

  1. Fait appel à la tâche "data-import" avec comme répertoire des données le répertoire "uportal-war/src/main/data/default_entities"
db-import-quickstart

Importe en base de données les entités de "démarrage rapide" :

  1. Fait appel à la tâche "data-import" avec comme répertoire des données le répertoire "uportal-war/src/main/data/quickstart_entities"

deployPortletApp

Déploie la portlet dont le .war est précisé en paramètre :

  1. Assemble la portlet à l'aide de la tâche "AssembleTask" de pluto
  2. Fait appel à la tâche "fastWarDeploy" avec comme paramètre la portlet

deploy-ear

Déploie le portail, les librairies et les portlets dans le conteneur de servlet :

  1. Si demandé (cleanShared à true), fait appel à la tâche "clean-shared"
  2. Ajoute "uportal-ant-tasks/pom.xml" à la liste des dépendances maven
  3. Créé le répertoire "shared/lib" à la racine de tomcat
  4. Déploie l'ear dans tomcat (à l'aide de la tâche précédemment chargée dans uportal-ant-tasks)

clean-shared

Supprime le contenu du répertoire "shared/lib" de tomcat (supprime les librairies partagées) :

  1. Purge le répertoire concerné

deploy-war

Déploie la webapp uPortal dans le conteneur de servlet :

  1. Fait appel à la tâche "fastWarDeploy" avec comme paramètre le war de uPortal

fastWarDeploy

Déploie le .war en paramètre dans le conteneur de servlet :

  1. Si spécifié (removeExisting à true), supprime le .war existant
  2. Copie le .war dans le conteneur de servlet (extractWars à false) ou extrait le .war à côté des autres webapp (extractWars à true).

Note : Techniquement le traitement est différent sous Windows et sous Centos.

data-export

Exporte des données vers un fichier XML :

  1. Créé un script de sélection de données en faisant appel à la méthode "dataExport" de la classe "portalShellBuildHelper" du package
  2. Fait appel à la tâche "up-shell" avec comme paramètre le script précédemment créé

data-import

Importe en base de données le ou les fichier(s) XML en paramètre :

  1. Créé un script d'insertion en base en faisant appel à la méthode "dataImport" de la classe "portalShellBuildHelper" du package
  2. Fait appel à la tâche "up-shell" avec comme paramètre le script précédemment créé

data-delete

Supprime les données spécifiées (Type et Id en paramètre) :

  1. Créé un script de suppression de la base en faisant appel à la méthode "dataDelete" de la classe "portalShellBuildHelper" du package
  2. Fait appel à la tâche "up-shell" avec comme paramètre le script précédemment créé

up-shell

Exécute le script en paramètre :

  1. Exécute la classe "PortalShell" et donne le script en paramètre (délègue l'exécution du script)

Description détaillée

Brique

Utilisation

Description

Fichier "/properties/db/tables.xml"db Exemple de fichier : tables.xml
Fichier "/properties/db/data.xml"dbExemple de fichier : data.xml
Classe "portalShellBuildHelper"

db / db-hibernate-portal
db-hibernate-portal-update
data-export / data-import
data-delete

Classe utilitaire d'exécution de scripts :

Lien vers l'API :
http://developer.jasig.org/projects/uportal/4.0.6/apidocs/org/jasig/portal/shell/PortalShellBuildHelper.html

Cernunnos est également utilisé pour réaliser les imports / exports de la base de données :
https://wiki.jasig.org/display/UPM30/Cernunnos+Overview
http://code.google.com/p/cernunnos/

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 plutodeployPortletApp

Tâche ant assimilant le packaging et le déploiement à celui de maven :

The Pluto Ant Tasks have been created to assist those not using maven with the assembly, deployment, and publishing of Maven

Lien vers le projet Apache : Pluto

Tâches "uportal-ant-tasks"

deploy-ear

Tâche spécifique à Tomcat pour faciliter le déploiement :

Lien vers la documentation de l'API : TomcatEarDeployerTask

Maven

deploy-ear / deploy-war
deployPortletApp / fastWarDeploy

Maven permet la gestion et l'automatisation du déploiement d'uPortal :

http://fr.wikipedia.org/wiki/Apache_Maven

Portlet 

Composant que l'utilisateur peut afficher où il veut dans la vue personnalisée de son portail :

http://fr.wikipedia.org/wiki/Portlet

  • Aucune étiquette