r1457 - in trunk: . mavenpom4redmine mavenpomdoc/src/site/apt/mavenpom4redmine
Author: tchemit Date: 2013-08-07 18:46:18 +0200 (Wed, 07 Aug 2013) New Revision: 1457 Url: http://nuiton.org/projects/mavenpom/repository/revisions/1457 Log: fixes #2814: Updates jetty-m-p to 8.1.12.v20130726 refs #2812: Updates helper-m-p to 2.1 refs #2813: Updates jredmine-m-p to 1.6 refs #2801: Simplify release process (improve it and doc) Modified: trunk/mavenpom4redmine/pom.xml trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/properties.apt trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/release.apt trunk/pom.xml Modified: trunk/mavenpom4redmine/pom.xml =================================================================== --- trunk/mavenpom4redmine/pom.xml 2013-08-07 08:01:07 UTC (rev 1456) +++ trunk/mavenpom4redmine/pom.xml 2013-08-07 16:46:18 UTC (rev 1457) @@ -123,12 +123,14 @@ <redmine.safe>false</redmine.safe> <redmine.url>http://${platform}</redmine.url> <redmine.projectId>${projectId}</redmine.projectId> - <redmine.xmlPath>${maven.gen.dir}/changes/changes.xml</redmine.xmlPath> + <redmine.xmlPath> + ${maven.root.dir}/target/changes/changes.xml + </redmine.xmlPath> <redmine.collectedArtifacts> - target/collect-artifacts.txt + ${maven.root.dir}/target/collect-artifacts.txt </redmine.collectedArtifacts> <redmine.collectedAttachments> - target/collect-attachments.txt + ${maven.root.dir}/target/collect-attachments.txt </redmine.collectedAttachments> <redmine.deploymentUrl>${repository.home.url}</redmine.deploymentUrl> @@ -147,11 +149,14 @@ <!-- Post Release configuration (by default do not send - publish) --> - <skipReleasePublishAttachments>true</skipReleasePublishAttachments> - <skipReleaseUpdateVersion>true</skipReleaseUpdateVersion> - <skipReleaseSendEmail>true</skipReleaseSendEmail> - <skipReleasePublishNews>true</skipReleasePublishNews> - <skipReleaseNextVersion>true</skipReleaseNextVersion> + <skipPostRelease>true</skipPostRelease> + <skipReleasePublishAttachments> + ${skipPostRelease} + </skipReleasePublishAttachments> + <skipReleaseUpdateVersion>${skipPostRelease}</skipReleaseUpdateVersion> + <skipReleaseSendEmail>${skipPostRelease}</skipReleaseSendEmail> + <skipReleasePublishNews>${skipPostRelease}</skipReleasePublishNews> + <skipReleaseNextVersion>${skipPostRelease}</skipReleaseNextVersion> </properties> <!-- ************************************************************* --> @@ -249,9 +254,7 @@ </goals> <phase>verify</phase> <configuration> - <descriptionFile> - ${redmine.collectedArtifacts} - </descriptionFile> + <descriptionFile>${redmine.collectedArtifacts}</descriptionFile> <includeAttached>true</includeAttached> <includeSiteAttached>true</includeSiteAttached> </configuration> @@ -264,9 +267,7 @@ <phase>verify</phase> <configuration> <extraFiles>${redmine.releaseFiles}</extraFiles> - <descriptionFile> - ${redmine.collectedAttachments} - </descriptionFile> + <descriptionFile>${redmine.collectedAttachments}</descriptionFile> <includeAttached>false</includeAttached> </configuration> </execution> @@ -311,8 +312,10 @@ <!-- fails if redmine goals are not ok --> <redmine.safe>true</redmine.safe> - <dryRun>true</dryRun> - <redmine.dryRun>${dryRun}</redmine.dryRun> + <!-- no dry run for us (we trust the jredmine-m-p !) --> + <redmine.dryRun>false</redmine.dryRun> + + <releaseAnnouncementTitle>${session.topLevelProject.name} ${session.topLevelProject.version} released</releaseAnnouncementTitle> </properties> <build> @@ -356,7 +359,7 @@ <skipSendEmail>${skipReleaseSendEmail}</skipSendEmail> <emailTitle> - [ANN] - ${project.name} ${project.version} released + [ANN] - ${releaseAnnouncementTitle} </emailTitle> <emailContentFile> target/generated-sources/announcement/release-email-announcement.vm @@ -414,6 +417,12 @@ </goals> <phase>verify</phase> <configuration> + <skipGenerateEmailAnnouncement> + ${skipReleaseSendEmail} + </skipGenerateEmailAnnouncement> + <skipGenerateNewsAnnouncement> + ${skipReleasePublishNews} + </skipGenerateNewsAnnouncement> <anonymous>${publicProject}</anonymous> <urlDownload> ${redmine.url}/projects/${projectId}/files @@ -446,7 +455,7 @@ </newsContentFile> <newsSummary>${project.description}</newsSummary> <newsTitle> - ${project.name} ${project.version} released + ${releaseAnnouncementTitle} </newsTitle> </configuration> </execution> Modified: trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/properties.apt =================================================================== --- trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/properties.apt 2013-08-07 08:01:07 UTC (rev 1456) +++ trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/properties.apt 2013-08-07 16:46:18 UTC (rev 1457) @@ -39,8 +39,10 @@ Vue d'ensemble +* Propriétés de base + *----------------------------------------------+--------------------------------------------------------+ -| <<property>> | <<Default- value>> | +| <<property>> | <<Default value>> | *----------------------------------------------+--------------------------------------------------------+ | {{platform}} | <<nuiton.org>> | *----------------------------------------------+--------------------------------------------------------+ @@ -68,7 +70,29 @@ *----------------------------------------------+--------------------------------------------------------+ | {{redmine.libReleaseFiles}} | target/${project.artifactId}-${project.version}-deps.zip,target/${project.artifactId}-${project.version}-full.zip| *----------------------------------------------+--------------------------------------------------------+ +| {{releaseAnnouncementTitle}} | ${session.topLevelProject.name} ${session.topLevelProject.version} released| +*----------------------------------------------+--------------------------------------------------------+ +* Propriétés post-release (depuis la version 4.0) + +*----------------------------------------------+--------------------------------------------------------+ +| <<property>> | <<Default value>> | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipPostRelease}} | true | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipReleasePublishAttachments}} | true | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipReleaseUpdateVersion}} | true | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipReleaseSendEmail}} | true | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipReleasePublishNews}} | true | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipReleaseNextVersion}} | true | +*----------------------------------------------+--------------------------------------------------------+ +| {{skipPostRelease}} | true | +*----------------------------------------------+--------------------------------------------------------+ + Détails * {platform} @@ -81,11 +105,15 @@ forge.codelutin.com -------------------------------------------------------------------------------- + {{{Propriétés de base}[remonter]}} + * {publicProject} Pour savoir si un project est public. Si le projet est privé dans redmine, il faut alors mettre comme valeur <<false>>. + {{{Propriétés de base}[remonter]}} + * {redmine.url} L'url du serveur redmine. @@ -96,6 +124,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.serverId} L'id du serveur (dans votre <<settings.xml>>) pour se logguer sur redmine. @@ -116,6 +146,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.projectId} L'id du projet redmine. Par défaut, il s'agit de la propriété <<projectId>>. @@ -126,6 +158,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.xmlPath} Le chemin du fichier des 'issues' généré. @@ -139,6 +173,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.issueLinkTemplate} L'url des issues sur le serveur redmine. Le pattern <<%ISSUE%>> sera remplacé @@ -150,6 +186,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.versionLinkTemplate} L'url des version sur le serveur redmine. Le pattern <<%VERSION%>> sera @@ -161,6 +199,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.attachmentLinkTemplate} L'url des fichiers sur le serveur redmine. Le pattern <<%FILE%>> sera @@ -172,6 +212,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.collectedAttachments} Le fichier qui contient la liste des fichiers à envoyer sur redmine lors d'une @@ -187,6 +229,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.collectedArtifacts} Le fichier qui contient la liste des fichiers à deployer sur le dépôt maven. @@ -201,6 +245,8 @@ <Note:> en théorie, cette propriété ne doit pas être modifiée. + {{{Propriétés de base}[remonter]}} + * {redmine.releaseFiles} La liste des fichiers à envoyer sur redmine lors d'une nouvelle release @@ -211,6 +257,8 @@ Par défaut, vide (i.e rien à deployer sur redmine pour le module courant). + {{{Propriétés de base}[remonter]}} + * {redmine.libReleaseFiles} La définition des fichiers à ajouter à une release pour un module de type @@ -224,3 +272,92 @@ -------------------------------------------------------------------------------- <Note:> en théorie, cette propriété ne doit pas être modifiée. + + {{{Propriétés de base}[remonter]}} + +* {releaseAnnouncementTitle} + + Le titre de la news d'annonce. + + Par défaut : + +-------------------------------------------------------------------------------- +${session.topLevelProject.name} ${session.topLevelProject.version} released +-------------------------------------------------------------------------------- + + <Note:> Est aussi utilisé (préfixé par [ANN]) pour le titre du courriel + d'annonce. + + {{{Propriétés de base}[remonter]}} + +* {skipPostRelease} + + <Depuis la version 4.0)> Pour ne pas déclancher l'opération de post-release. + Par défault la valeur vaut <false>. + + A placer sur la valeur <true> sur le dernier module du projet. + + Cette propriété est aussi la valeur par défaut utilisée pour les propriétés suivantes : + +-------------------------------------------------------------------------------- + skipReleasePublishAttachments + skipReleaseUpdateVersion + skipReleaseSendEmail + skipReleasePublishNews + skipReleaseNextVersion +-------------------------------------------------------------------------------- + + {{{Propriétés post-release (depuis la version 4.0)}[remonter]}} + +* {skipReleasePublishAttachments} + + <Depuis la version 4.0)> Pour ne pas déclancher la publication des pièces-jointes sur le serveur redmine. + Par défault la valeur vaut <false>. + + A placer sur la valeur <true> sur le dernier module du projet (si on ne veut + pas utiliser la valeur de la proprié {{skipPostRelease}}). + + {{{Propriétés post-release (depuis la version 4.0)}[remonter]}} + +* {skipReleaseUpdateVersion} + + <Depuis la version 4.0)> Pour ne pas déclancher la mise à jour de la version sur le serveur redmine. + Par défault la valeur vaut <false>. + + A placer sur la valeur <true> sur le dernier module du projet (si on ne veut + pas utiliser la valeur de la proprié {{skipPostRelease}}). + + {{{Propriétés post-release (depuis la version 4.0)}[remonter]}} + +* {skipReleaseSendEmail} + + <Depuis la version 4.0)> Pour ne pas déclancher la génération et l'envoie + du courriel d'annonce sur la liste <<commits>> du projet. + Par défault la valeur vaut <false>. + + A placer sur la valeur <true> sur le dernier module du projet (si on ne veut + pas utiliser la valeur de la proprié {{skipPostRelease}}). + + {{{Propriétés post-release (depuis la version 4.0)}[remonter]}} + +* {skipReleasePublishNews} + + <Depuis la version 4.0)> Pour ne pas déclancher la génération et l'envoie + de la news d'annonce sur le serveur redmine. + Par défault la valeur vaut <false>. + + A placer sur la valeur <true> sur le dernier module du projet (si on ne veut + pas utiliser la valeur de la proprié {{skipPostRelease}}). + + {{{Propriétés post-release (depuis la version 4.0)}[remonter]}} + +* {skipReleaseNextVersion} + + <Depuis la version 4.0)> Pour ne pas déclancher la génération de la nouvelle + version sur le serveur redmine. + Par défault la valeur vaut <false>. + + A placer sur la valeur <true> sur le dernier module du projet (si on ne veut + pas utiliser la valeur de la proprié {{skipPostRelease}}). + + {{{Propriétés post-release (depuis la version 4.0)}[remonter]}} Modified: trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/release.apt =================================================================== --- trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/release.apt 2013-08-07 08:01:07 UTC (rev 1456) +++ trunk/mavenpomdoc/src/site/apt/mavenpom4redmine/release.apt 2013-08-07 16:46:18 UTC (rev 1457) @@ -35,7 +35,7 @@ Cette page décrit la méthode pour effectuer une release d'un projet héritant de <<mavenpom4redmine>>. -Nouveau processus de release (Version 4.0) +Nouveau processus de release (À partir de la version 4.0) Depuis la version 4.0, on a simplifié la procédure de release et il est désormais possible de n'utiliser que le plugin release sans avoir à @@ -57,11 +57,13 @@ [] A noter que dans ce nouveau mode de release, l'intervention humaine n'est - plus possible pendant le process de release, la news d'annonce sera - automatique publiée et un unique courriel sera envoyé désormais sur la liste - <<commits>> du projet; à votre charge ensuite d'envoyer le vrai courriel + plus possible, la news d'annonce sera automatique générée publiée et un unique + courriel sera envoyé désormais sur la liste <<commits>> du projet; à la charge + ensuite de l'humain qui déclanche la release d'envoyer le vrai courriel d'annonce de nouvelle release sur les listes adéquates (<<devel>>, <<users>>, - <<announce>>). + <<announce>>). C'est l'occasion de bien vérifier que tout est correct dans la + release (vérification du contenu des livrables, déployement dans les + environnements pré-prod, ...). Pour cela il alors placer sur le <<dernier>> module du build la configuration suivante : @@ -69,16 +71,28 @@ -------------------------------------------------------------------------------- <!-- Post Release configuration --> - <skipReleasePublishAttachments>false</skipReleasePublishAttachments> - <skipReleaseUpdateVersion>false</skipReleaseUpdateVersion> - <skipReleaseSendEmail>false</skipReleaseSendEmail> - <skipReleasePublishNews>false</skipReleasePublishNews> - <skipReleaseNextVersion>false</skipReleaseNextVersion> + <skipPostRelease>false</skipPostRelease> -------------------------------------------------------------------------------- + Il est aussi possible de définir d'agir de manière plus fine sur les actions + à mener pendant cette phase post-release, via les drapeaux : + + * {{properties.html#skipReleasePublishAttachments}} + + * {{properties.html#skipReleaseUpdateVersion}} + + * {{properties.html#skipReleaseSendEmail}} + + * {{properties.html#skipReleasePublishNews}} + + * {{properties.html#skipReleaseNextVersion}} + + [] + A noter aussi que le profile <<post-release-profile>> qui fait tout cela est ajouté dans la configuration du goal <release:perform> - (propriété <<releaseProfiles>>). + (via la propriété <<releaseProfiles>> du plugin). + Si vous avez changé cette configuration, il faudra alors aussi penser à rajouter ce nouveau profile dedans. @@ -94,7 +108,7 @@ mvn release:perform -------------------------------------------------------------------------------- -Ancien processus de release (Avant 4.0) +Ancien processus de release (Avant la version 4.0) * Etape 1 Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2013-08-07 08:01:07 UTC (rev 1456) +++ trunk/pom.xml 2013-08-07 16:46:18 UTC (rev 1457) @@ -245,6 +245,8 @@ <!-- where to generate sources --> <maven.gen.dir>${project.build.directory}/generated-sources</maven.gen.dir> + <maven.root.dir>${session.executionRootDirectory}</maven.root.dir> + <!-- le fichier de license du projet --> <maven.license.file>${project.basedir}/LICENSE.txt</maven.license.file> @@ -258,8 +260,8 @@ <antVersion>1.8.3</antVersion> <!-- our plugins --> - <helperPluginVersion>2.0</helperPluginVersion> - <jredminePluginVersion>1.5.1</jredminePluginVersion> + <helperPluginVersion>2.1-SNAPSHOT</helperPluginVersion> + <jredminePluginVersion>1.6-SNAPSHOT</jredminePluginVersion> <jrstPluginVersion>2.0.1</jrstPluginVersion> <!-- apache maven plugins version --> @@ -307,7 +309,7 @@ <!-- others plugins --> <androidPluginVersion>2.8.4</androidPluginVersion> - <jettyPluginVersion>8.1.11.v20130520</jettyPluginVersion> + <jettyPluginVersion>8.1.12.v20130726</jettyPluginVersion> <statScmPluginVersion>1.2.0</statScmPluginVersion> <!-- report plugins version --> @@ -423,6 +425,8 @@ <!-- release tag configuration --> <tagNameFormat>${projectId}-@{project.version}</tagNameFormat> + <projectReleaseName>${project.name}</projectReleaseName> + <!-- default signature configuration --> <signatureArtifactId>java16</signatureArtifactId> <signatureVersion>1.1</signatureVersion>
participants (1)
-
tchemit@users.nuiton.org