Téléchargement des produits


Version anglaise


 


Ce gabarit est un modèle de projet Gradle pour la construction d'une application Java Serveur sous la forme d'un fichier d'archivage au format ZIP. Cette construction impose que les objets Adélia faisant partie de cette application soient regroupés sous la forme d'artéfacts produits par un projet Adélia build.

De manière générale, les artéfacts inclus seront de type JavaServer (cf. Tableau 1 Le Build Adélia par domaines) et produits indépendamment par un build par domaines ou par composants.

L'archive produite est un fichier au format ZIP contenant l'ensemble des objets issus de la configuration de l'application.

Création d'un projet Adélia Java Server build

La création du projet s'obtient en décompressant le fichier %ADELIWS%\Build\templates\adelia java server application.zip : le répertoire 'adelia java server application' obtenu peut être déplacé et renommé à volonté.


Le poste de construction de l'application Java Serveur et le poste de build Adélia peuvent être deux postes différents.

↑ Haut de page

Configuration d'un projet Adélia Java Server build

Après avoir créé un projet, il est nécessaire de le configurer avant de pouvoir l'exécuter.


La configuration et l'initialisation d'un projet de build se basent sur les paramètres renseignés dans le fichier gradle.properties, à savoir :

Paramètres généraux

adeliaVersion (obligatoire)

Chaîne alphanumérique représentant le numéro de version du template Adélia utilisé pour packager l'application.


version (obligatoire)

Chaîne alphanumérique représentant le numéro de version de l'artéfact de l'application (ZIP). On distingue plusieurs types de version :

    • Les versions release (ou finales) représentant les versions officielles de l'application (ex : 1.0.0),

    • Les versions snapshot (ou instantanées) représentant les versions en cours de développement de l'application (ex : 1.0.1-SNAPSHOT),

    • Les versions pré-release (ou release-candidate) représentant les versions candidates à être les versions finales (ex : 1.0.1-RC01).


group (obligatoire)

Chaîne alphanumérique représentant l'identifiant du groupe ou de l'organisation à l'origine du projet.

La valeur suit les mêmes règles de nommage que les packages Java (ex : com.hardis), et le nom du top package du projet est généralement choisi comme valeur.


serverAppName (optionnel)

Chaîne alphanumérique représentant le nom du fichier ZIP produit.

Par défaut, ce fichier a pour nom <nom du répertoire du projet>-<valeur du paramètre version>.zip.

Si ce paramètre est renseigné, le fichier aura pour nom <valeur du paramètre serverAppName>-<valeur du paramètre version>.zip.


↑ Haut de page

Paramètres des gestionnaires de référentiels

L'utilisation des référentiels d'artéfacts lors de l'exécution d'un build Adélia Java Server se fait lors des phases suivantes :

  • Dans la phase de création du fichier d'installation (ZIP), le build utilise un référentiel pour télécharger (référentiel de download) les artéfacts nécessaires à la construction de l'artéfact de l'installeur. Ces artéfacts sont :

    • l'artéfact Hardis nécessaire à l'exécution du template de build,

    • vos propres artéfacts d'objets Adélia composant votre application : ceux-ci sont issus de l'exécution d'un projet Adélia build.

  • Dans la phase finale de stockage de l'artéfact construit, il est possible de définir un référentiel pour transférer (référentiel d'upload) cet artéfact versionné.
    En fonction du type de version (release ou snapshot), il est possible de définir le référentiel associé.


downloadArtifactsReleaseRepo (obligatoire)

URL d'accès au référentiel de download des artéfacts dépendants nécessaires au build. Ce référentiel doit permettre d'accéder :

    • aux artéfacts du référentiel Hardis,

    • à vos propres artéfacts d'objets Adélia composant votre application. Ces artéfacts sont ceux en version release si vous buildez votre application en version release.

Par défaut, et uniquement à titre d'exemple, la valeur de ce paramètre est l'URL du référentiel fourni par Hardis.


A la place, dans votre Nexus, il faut créer votre propre référentiel privé pour qu'il soit un regroupement du référentiel Hardis et de votre référentiel privé en version release. En fonction de votre propre configuration du Nexus utilisé pour vos projets Adélia build, il s'agit soit du référentiel créé par défaut par Nexus et nommé "Releases", soit un autre référentiel "hosted repository" ayant une "Repository policy" à Release et créée par vos soins.


Pour cela, après connexion à votre Nexus, à partir de la vue "Repositories", il faut ajouter un nouveau référentiel défini comme groupe des référentiels décrits plus haut :

    • Ouvrez la fenêtre de définition d'un référentiel via la commande "Add repository group",

    • A partir de la section "Available Repositories", ajoutez, dans la section "Ordered Group Repositories", le référentiel privé qui est proxy du référentiel Hardis ainsi que le référentiel privé hosted qui sert de stockage à vos artéfacts en version release.

Pour finir, remplacez la valeur du paramètre downloadArtifcatsReleaseRepo par l'URL "Repository Path" du référentiel de groupe nouvellement créé.


downloadArtifactsReleaseRepo.username / downloadArtifactsReleaseRepo.password (optionnels)

Définit le profil utilisateur et le mot de passe utilisés pour la connexion au référentiel de download.


Par défaut, et à titre d'exemple, ces identifiants sont ceux du référentiel de download Hardis, mais il faut les remplacer par ceux de votre propre référentiel privé de groupe (cf. downloadArtifactsReleaseRepo ci-dessus).


Puisque l'on accède à ce référentiel en lecture seule, Nexus autorise une connexion anonyme : dans ce cas, laissez les champs "username" et "password" non renseignés.


downloadArtifactsSnapshotRepo (optionnel)

URL d'accès au référentiel de download des artéfacts dépendants nécessaires au build. Ce référentiel doit permettre d'accéder à vos propres artéfacts d'objets Adélia composant votre application. Ces artéfacts sont ceux en version snapshot si vous construisez votre application en version snapshot.

Attention, les artéfacts du référentiel Hardis ne sont disponibles qu'en version release (aucune version snapshot disponible).


Dans votre Nexus, il faut créer votre propre référentiel privé pour qu'il soit un regroupement du référentiel Hardis et de votre référentiel privé en version snapshot. En fonction de votre propre configuration du Nexus utilisé pour vos projets Adélia build, il s'agit soit du référentiel créé par défaut par Nexus et nommé "Snapshots", soit un autre référentiel "hosted repository" ayant une "Repository policy" à Snapshot et créé par vos soins.


Pour cela, après connexion à votre Nexus, à partir de la vue "Repositories", il faut ajouter un nouveau référentiel défini comme groupe des référentiels décrits plus haut :

    • Ouvrez la fenêtre de définition d'un référentiel via la commande "Add repository group",

    • A partir de la section "Available Repositories", ajoutez, dans la section "Ordered Group Repositories", le référentiel privé qui est proxy du référentiel Hardis ainsi que le référentiel privé hosted qui sert de stockage à vos artéfacts en version snapshot.

Pour finir, remplacez la valeur du paramètre downloadArtifcatsSnapshotRepo par l'URL "Repository Path" du référentiel de groupe nouvellement créé.


downloadArtifactsSnapshotRepo.username / downloadArtifactsSnapshotRepo.password (optionnels)

Définit le profil utilisateur et le mot de passe utilisés pour la connexion au référentiel de download. Ce profil doit permettre d'accéder à votre propre référentiel privé de groupe (cf. downloadArtifactsSnapshotRepo ci-dessus).


Puisque l'on accède à ce référentiel en lecture seule, Nexus autorise une connexion anonyme : dans ce cas, laissez les champs "username" et "password" non renseignés.


uploadArchivesReleaseRepo (optionnel)

URL d'accès au référentiel d'upload utilisé pour le stockage de l'artéfact ZIP construit avec une version release.

Ce référentiel permettra de mettre à disposition les artéfacts en version finale.


uploadArchivesReleaseRepo.username / uploadArchivesReleaseRepo.password (optionnels)

Définit le profil utilisateur et le mot de passe utilisés pour la connexion au référentiel d'upload des artéfacts en version release.


uploadArchivesSnapshotRepo (optionnel)

URL d'accès au référentiel d'upload utilisé pour le stockage de l'artéfact ZIP construit avec une version snapshot.

Ce référentiel permettra de mettre à disposition les artéfacts en cours de développement.


uploadArchivesReleaseRepo.username / uploadArchivesReleaseRepo.password (optionnels)

Définit le profil utilisateur et le mot de passe utilisés pour la connexion au référentiel d'upload des artéfacts en version snapshot.


↑ Haut de page

Configuration des composants de l'application Adélia Java Serveur à builder

Ces composants sont les artéfacts d'objets Adélia issus de l'exécution d'un projet Adélia build.

Il est nécessaire de les déclarer dans le projet Adélia Java Server build pour qu'ils soient ajoutés dans l'installeur produit.


Pour cela :

  • ouvrez le fichier build.gradle avec un éditeur texte, puis;

  • dans la section "dependencies" (Declare your artifacts needed to build the Windows application here), déclarez vos artéfacts.

Artéfacts de type JavaServer

Ces artéfacts doivent être déclarés en insérant l'instruction suivante :

javaServer group: '<nom du groupe de l'artéfact>', name : '<nom du fichier de l'artéfact sans la version>', version: '<numéro de version de l'artéfact>'


Exemple de déclaration d'artéfact issu d'un build par domaine :

Pour l'artéfact de type JavaServer dont le nom de fichier est myapp-app_area_1_javaserver-1.1.0-SNAPSHOT.jar, il faut saisir runtime group: 'my.company', name : 'myapp-app_area_1_javaserver', version: '1.1.0-SNAPSHOT'.

La valeur de group est celle du paramètre "group" dans le fichier gradle.properties du projet Adélia build ayant construit l'artéfact.


Exemple de déclaration d'artéfact issu d'un build par composant :

Pour l'artéfact de type JavaServer dont le nom de fichier est prefix_compo_1_javaserver-1.1.0-SNAPSHOT.jar, il faut saisir runtime group: 'my.company', name : 'prefix_compo_1_javaserver', version: '1.1.0-SNAPSHOT'.

La valeur de group est celle du paramètre "groupId" du composant dont est issu l'artéfact.


Le contenu des artéfacts déclarés comme ci-dessus est ajouté à l'application comme suit : Les fichiers JAR sont copiés à la racine de l'archive ZIP.

Autres artéfacts

Il est possible d'ajouter d'autres artéfacts (au format ZIP ou JAR) à l'application comme par exemple un artéfact type JavaServer contenant les fichiers sources .JAVA des programmes ou un autre contenant des ressources fichiers nécessaires au fonctionnement de l'application et construit par un outils tiers (Gradle, Maven ou autre). Dans ce cas, il est possible, en guise d'exemple, de les déclarer en insérant l'instruction suivante :

othersResourcesConf group: '<nom du groupe de l'artéfact>', name : '<nom du fichier de l'artéfact sans la version>', version: '<numéro de version de l'artéfact>'

othersResourcesConf group: '<nom du groupe de l'artéfact>', name : '<nom du fichier de l'artéfact sans la version>', version: '<numéro de version de l'artéfact>', classifier: 'sources'


La configuration 'othersResourcesConf' devra au préalable être déclarée dans la closure 'configurations' (déclaration à décommenter). L'insertion du contenu de l'artéfact dans l'application se fera dans la closure 'contentZipAppSpec' : il est possible d'ajouter ce contenu soit à la racine de l'application soit dans un sous-répertoire (code à décommenter).


↑ Haut de page

Fichiers de paramétrage de l'application Adélia Java Serveur à builder

Suivant l'architecture de votre application, il est possible que certains fichiers de configuration Adélia soient nécessaires à l'exécution de celle-ci, comme par exemple le fichier apiva.properties. Pour ajouter ces fichiers à l'application, utilisez la directive de copie Gradle 'from' pour copier ces fichiers dans le répertoire d'installation de l'application (un exemple commenté est donné dans le template de construction build.gradle fournit).

Exécution d'un projet Adélia Java Server build

Liste des tâches Gradle du build Adélia Java Server

clean

Tâche permettant de supprimer les objets créés lors de l'exécution des tâches de constructions msi et zipApp (le sous-répertoire build est supprimé).


zipApp

Lance la construction du fichier d'archivage de l'application au format ZIP. Le fichier produit se trouve dans le sous-répertoire 'build\distributions'. Son nom est le résultat de la concaténation des propriétés serverAppName et version.

Ce fichier regroupe :

  • le contenu des artefacts dépendants du projet (artéfacts définis dans les configurations javaServer, otherResourcesConf),
  • les fichiers de configurations ajoutés (apiva.properties, etc.).

Aucune dépendance aux artéfacts du runtime Java Hardis ne sera copié dans le fichier construit. On impose que le runtime Adélia Java (ainsi que le démon middleware) sont préalablement installés sur la machine "serveur" ou sera déployé cette archive ZIP.


uploadArchives

Cette tâche permet de transférer l'artéfact construit (par appel de la tâche zipApp) dans le référentiel d'upload.

Il est nécessaire de renseigner la clé uploadArchivesReleaseRepo ou uploadArchivesSnapshotRepo en fonction du type de version de l'artéfact.


install

Cette tâche permet de transférer l'artéfact construit (par appel de la tache zipApp) dans le référentiel local à la machine de construction du build (référentiel local dans répertoire %USERPROFILE%\.m2 ).


↑ Haut de page


  • Aucune étiquette