Fonctions de génération avancées
Le Outil HCL Commerce Build fournit de nombreuses fonctionnalités de génération avancées permettant de prendre en charge des configurations complexes. Utilisez ces fonctionnalités pour améliorer votre processus de génération.
- Extraction du code source par mise à jour incrémentielle
- Exclusion des ressources Web statiques des modules Web des packages de déploiement
- Exclusion des ressources EAR des packages de déploiement
- Utilitaire d'encodage de fichiers de propriétés autonome
- Prise en charge de plusieurs types de génération
- Notifications par e-mail du statut de génération
- Journalisation et traçage supplémentaires
- Options de débogage pour EJBDeploy
Extraction du code source par mise à jour incrémentielle
Le Outil HCL Commerce Build fournit une option permettant d'extraire le code source par mise à jour incrémentielle au lieu d'une réservation complète. Cette option permet un temps d'extraction de code source plus rapide, surtout lorsque la quantité de changements entre les niveaux de génération est faible. Pour activer le mode de mise à jour pour l'extraction du code source, procédez comme suit :
- Ouvrez WCB_installdir/build.properties avec un éditeur de texte et définissez les propriétés suivantes :
- Paramétrez la propriété
extract.update.modesurtrue, de sorte que le processus d'extraction du code source ne supprime pas le répertoire source, mais le mette à jour. - Paramétrez le
source.dirsur un chemin d'accès statique. Le chemin d'accès par défaut${basedir}/source/${build.label}n'est pas statique carbuild.labelpeut modifier chaque génération. Un chemin statique peut être, par exemple,${basedir}/source. Si la fonctionnalité prise en charge de plusieurs type de génération est utilisée, elle peut être définie, par exemple,${basedir}/source/${build.type}, de sorte que chaque type de génération dispose de son propre répertoire source statique indépendant pour les mises à jour incrémentielles.
- Paramétrez la propriété
- Configurerez le script Ant d'extraction source avec l'un des exemples de script Ant pour divers SCM qui ont été mis à jour pour prendre en charge la mise à jour incrémentielle.
Lorsque vous utilisez cette fonctionnalité, toutes les opérations qui modifient le code source doivent être effectuées dans le répertoire de travail au lieu du répertoire source si vous personnalisez le processus de génération. Cette pratique garantit que les mises à jour incrémentielles du répertoire source peuvent être effectuées avec précision.
Exclusion des ressources Web statiques des modules Web des packages de déploiement
Le Outil HCL Commerce Build fournit un moyen d'exclure les ressources Web statiques de modules Web des packages de déploiement. Ceci est utile pour réduire l'utilisation du processus de génération et de déploiement de contenu statique, tel que les fichiers d'image et les fichiers HTML, qui sont rarement modifiés. Pour chaque module Web qui nécessite l'exclusion des ressources Web statiques, procédez comme suit :
- Si l'exclusion est obtenue en incluant un sous-ensemble de fichiers, créez un nouveau fichier appelé web-content-includes.txt à la racine du module Web, puis ajoutez les modèles d'inclusion, par rapport à la racine du répertoire de contenu Web du module Web, au fichier.
- Si l'exclusion est obtenue en excluant un sous-ensemble de fichiers, créez un nouveau fichier appelé web-content-excludes.txt à la racine du module Web, puis ajoutez les modèles d'exclusion, par rapport à la racine du répertoire de contenu Web du module Web, au fichier.
- Enregistrez les nouveaux fichiers dans le référentiel pour permettre leur utilisation par le processus de génération.
Le processus de génération détecte l'existence de ces fichiers et les utilise pour exclure les contenus Web statiques des modules Web. L'une des conséquences de l'utilisation de cette fonctionnalité est que le package de déploiement pourrait ne pas être en mesure de configurer un nouvel environnement puisque toutes les ressources ne sont pas incluses. Assurez-vous que les utilisateurs des packages de déploiement sont au courant de cette limitation.
Aurora du module Stores doivent être exclues des packages de déploiement. Pour utiliser cette fonctionnalité, vous pouvez créer un fichier d'exclusion workspace/Stores/web-content-excludes.txt dans le référentiel avec le contenu suivant :Aurora/images/**Exclusion des ressources EAR des packages de déploiement
Le Outil HCL Commerce Build fournit un moyen d'exclure les ressources EAR des packages de déploiement. Cette option est utile pour exclure les ressources EAR qui ne sont pas modifiées par votre personnalisation, et les modules Java EE avec des liaisons spécifiques à l'environnement de développement qui provoque des problèmes de configuration et de démarrage d'applications s'ils ont été déployés dans un autre environnement cible. Effectuez les étapes suivantes pour utiliser cette fonctionnalité :
- Si l'exclusion est obtenue en incluant un sous-ensemble de fichiers, créez un nouveau fichier appelé ear-dir-includes.txt à la racine du projet
WC, puis ajoutez les modèles d'inclusion au fichier. - Si l'exclusion est obtenue en excluant un sous-ensemble de fichiers, créez un nouveau fichier appelé ear-dir-excludes.txt à la racine du projet
WC, puis ajoutez les modèles d'exclusion au fichier. - Enregistrez les nouveaux fichiers dans le référentiel pour permettre leur utilisation par le processus de génération.
Le processus de génération détecte l'existence de ces fichiers et les utilise pour exclure les ressources EAR. L'une des conséquences de l'utilisation de cette fonctionnalité est que le package de déploiement pourrait ne pas être en mesure de configurer un nouvel environnement puisque toutes les ressources ne sont pas incluses. Assurez-vous que les utilisateurs des packages de déploiement sont au courant de cette limitation.
Prenons l'exemple dans lequel tous les fichiers JAR à la racine du projet WC doivent être exclus des packages de déploiement. Pour utiliser cette fonctionnalité, vous pouvez créer un fichier d'exclusion workspace/WC/ear-dir-excludes.txt dans le référentiel avec le contenu suivant :
*.jarUtilitaire d'encodage de fichiers de propriétés autonome
Pour plus de commodité, un utilitaire d'encodage de fichiers de propriétés autonome est inclus dans le Outil HCL Commerce Build. Une fois le script setenv configuré lorsque vous configurez les paramètres de génération, effectuez les étapes suivantes pour utiliser l'utilitaire :
- Remplacez le répertoire par WCB_installdir.
- Exécutez l'instruction suivante, où fileest le fichier de propriétés à coder :
wcbd-encode-properties.bat -Dfile=file

wcbd-encode-properties -Dfile=file
Prise en charge de plusieurs types de génération
Le Outil HCL Commerce Build prend en charge plusieurs configurations de génération en fonction du type de génération. Pour utiliser cette fonctionnalité, procédez aux étapes ci-dessous pour configurer et exécuter le processus de génération :
- Lorsque vous configurez les paramètres de génération, au lieu de créer WCB_installdir/build.properties et WCB_installdir/build.private.properties, créez les fichiers en tant que WCB_installdir/build-build-type.properties et WCB_installdir/build-build-type.private.properties, où build-type est un identificateur pour le type de génération.
- Lorsque vous exécutez le processus de génération, spécifiez l'option suivante lorsque vous appelez la commande wcbd-ant.bat ou wcbd-ant :
-Dbuild.type=build-type
L'identificateur de type de génération est ajouté au nom du répertoire de journaux et au nom de fichier du package de déploiement. Une nouvelle propriété build.type est également définie dans le fichier wcbd-build-info.properties généré et ajoutée aux packages de déploiement.
Notifications par e-mail du statut de génération
Le processus de génération peut être configuré pour envoyer des notifications par e-mail suite à l'aboutissement ou à l'échec. Concernant les notifications d'échec, le fichier journal de génération archivé est joint pour des raisons pratiques. Suivez les étapes ci-dessous pour activer cette fonctionnalité dans les paramètres de génération :
- Ouvrez WCB_installdir/build.properties avec un éditeur de texte et définissez les propriétés dans la section "Propriétés de notification par e-mail". Pour plus d'informations, consultez les commentaires inclus dans le fichier.
- Si le serveur SMTP nécessite une authentification, ouvrez WCB_installdir/build.private.properties avec un éditeur de texte et définissez les propriétés suivantes :
mail.usermail.password
Journalisation et traçage supplémentaires
Ant fournit à la fois une option verbose et une option de débogage pour offrir un traçage supplémentaire utile à la détermination des problèmes. Pour activer le mode verbose, fournissez l'option -v ou -verbose lorsque vous appelez l'instruction wcbd-ant.bat ou wcbd-ant pour exécuter le processus de génération. De même, pour activer le mode débogage, fournissez l'option -d ou -debug lorsque vous appelez l'instruction wcbd-ant.bat ou wcbd-ant pour exécuter le processus de génération
Outil HCL Commerce Build fournit un enregistreur personnalisé qui capture les données de performance du processus de génération. L'enregistreur donne l'heure de début et de fin, et le temps écoulé pour chaque cible exécutée, à la console. Voici un exemple de section des données de performance produites par l'enregistreur pour la cible d'extraction dans le processus de génération :
[Wed, 21 Jul 2010 10:56:54 -0400] wcbd-build > extract
extract:
[echoNL] Extracting source code with C:\IBM\WCDE_ENT90\wcbd/extract-local.xml.
[delete] Deleting directory C:\IBM\WCDE_ENT90\wcbd\source\empty
[mkdir] Created dir: C:\IBM\WCDE_ENT90\wcbd\source\empty
[Wed, 21 Jul 2010 10:56:54 -0400] extract-local > all
all:
[delete] Deleting directory C:\IBM\WCDE_ENT90\wcbd\source\empty
[mkdir] Created dir: C:\IBM\WCDE_ENT90\wcbd\source\empty
[copy] Copying 448 files to C:\IBM\WCDE_ENT90\wcbd\source\empty
[copy] Copied 191 empty directories to 5 empty directories under C:\IBM\WCDE_ENT90\wcbd\source\empty
[Wed, 21 Jul 2010 10:56:55 -0400] extract-local < all (1 second)
[Wed, 21 Jul 2010 10:56:55 -0400] wcbd-build < extract (1 second) Pour utiliser l'enregistreur, fournissez les options suivantes lorsque vous appelez l'instruction wcbd-ant.bat ou wcbd-ant pour exécuter le processus de génération :
-logger com.ibm.commerce.wcbd.ant.logger.PerformanceLogger> log-file 2>&1Options de débogage pour EJBDeploy
| Property name | Utilisation |
|---|---|
ejbdeploy.codegen |
Définissez cette propriété sur true pour conserver la génération des fichiers source Java par EJBDeploy. |
ejbdeploy.keep.generated |
Définissez cette propriété sur true pour conserver le répertoire de travail après la fin d'EJBDeploy. Le répertoire de travail est généralement ${working.compile.dir}/${type}/${module.name} |
ejbdeploy.quiet |
Définissez cette propriété sur false pour désactiver le mode silencieux d'EJBDeploy afin que les informations de journalisation détaillées s'affichent. |
ejbdeploy.no.validate |
Définissez cette propriété sur false pour afficher les messages de validation à partir d'EJBDeploy. |
ejbdeploy.trace |
Définissez cette propriété sur true pour activer le traçage interne pour EJBDeploy. |
ejbdeploy.jvm.max.memory |
Définissez cette propriété sur une valeur supérieure à la valeur par défaut de 256 Mo si EJBDeploy est à court de mémoire. |
Si l'instruction échoue dans le processus de génération, ouvrez WCB_installdir/build.properties avec un éditeur de texte pour définir ces propriétés, puis exécutez à nouveau le processus de génération.