|
| Home > Apache Geronimo Project Management > Documentation > Geronimo Release Process > Geronimo 2.1.5 Release Tips |
<parent> <groupId>org.apache.geronimo.genesis</groupId> <artifactId>genesis-java5-flava</artifactId> <version>2.0</version> </parent>
<settings> ... <servers> <!-- To publish a snapshot of some part of Maven --> <server> <id>apache.snapshots.https</id> <username> <!-- YOUR APACHE LDAP USERNAME --> </username> <password> <!-- YOUR APACHE LDAP PASSWORD --> </password> </server> <!-- To publish a website of some part of Maven --> <server> <id>apache.website</id> <username> <!-- YOUR APACHE LDAP USERNAME --> </username> <filePermissions>664</filePermissions> <directoryPermissions>775</directoryPermissions> </server> <!-- To stage a release of some part of Maven --> <server> <id>apache.releases.https</id> <username> <!-- YOUR APACHE LDAP USERNAME --> </username> <password> <!-- YOUR APACHE LDAP PASSWORD --> </password> </server> <!-- To stage a website of some part of Maven --> <server> <id>stagingSite</id> <!-- must match hard-coded repository identifier in site:stage-deploy --> <username> <!-- YOUR APACHE LDAP USERNAME --> </username> <filePermissions>664</filePermissions> <directoryPermissions>775</directoryPermissions> </server> ... </servers> </settings>
<settings> ... <profiles> <profile> <id>apache-release</id> <properties> <gpg.passphrase> <!-- YOUR KEY PASSPHRASE --> </gpg.passphrase> </properties> </profile> </profiles> ... </settings>
reference:
http://maven.apache.org/developers/release/apache-release.html
http://maven.apache.org/developers/release/pmc-gpg-keys.html
By default, maven-release-plugin will use the default profile to search all the pom.xml files and auto-update the version numbers. But integration tests are often run from non-pom packaging projects, so We also need include them during the release plugin running. Hence we create a new "all-subprojects" profile:
<profile>
<id>all-subprojects</id>
<modules>
<module>repository</module>
<module>buildsupport</module>
<module>testsupport</module>
<module>framework</module>
<module>plugins</module>
<module>assemblies</module>
<module>testsuite</module>
</modules>
</profile>
<profile>
<id>all-subprojects</id>
<modules>
<module>geronimo-gbean-deployer/src/it/j2ee-system-it1</module>
<module>geronimo-gbean-deployer/src/it/j2ee-system-it2</module>
<module>geronimo-gbean-deployer/src/it/metadatageneration-it3</module>
<module>geronimo-gbean-deployer/src/it/metadatageneration-it4</module>
</modules>
</profile>
btw, I refactored the names of above 4 itest to make them the same with 2.2, i.e.
mvn release:prepare -DdryRun=true -Pall-subprojects -Papache-release -Dtest=false
In above command -Dtest=false seems not take effect?? So, currently I add following in root pom's all-subprojects profile.
<properties> <maven.test.skip>true</maven.test.skip> </properties>
and use the following command:
mvn release:prepare -DdryRun=true -Pall-subprojects
Because there are a lot of sub-projects that not need to be released, such as integration tests and testsuites, we need filter them out when do maven deploy:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>ianal-maven-plugin</artifactId>
<configuration>
<!-- Don't bother checking legal file here, we never publish them. -->
<skip>true</skip>
</configuration>
</plugin>
<!--
HACK: Copy XmlBeans generated schemas.
-->
<plugin>
<groupId>org.apache.geronimo.buildsupport</groupId>
<artifactId>buildsupport-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>copy-xmlbeans-schemas</goal>
</goals>
</execution>
</executions>
</plugin>
|
|
Privacy Policy - Copyright © 2003-2011, The Apache Software Foundation, Licensed under ASL 2.0. |