# Pages Documentation Geronimo Release Process Geronimo 2.1.5 Release Tips

Go to start of metadata

## Prerequisite

### 1. Use Genesis 2.0 as a parent pom

• genesis-java5-flava-2.0.pom
• genesis-default-flava-2.0.pom
• genesis-2.0.pom
• apache-6.pom

## Special changes for releasing the server 2.1.5

### 1. Add "all-subprojects" profile(Similar with what David Jencks did for 2.2)

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:

• /pom.xml
This profile is just the same as default profile.
• /framework/configs/pom.xml
The config modules are all included by default, but the 4 integration test are not. So if we want this 4 projects' pom can be updated by maven-release-profile, we need explicitly point out.
btw, I refactored the names of above 4 itest to make them the same with 2.2, i.e.
• j2ee-system -> j2ee-system-it1
• j2ee-system-2 -> j2ee-system-it2
• /plugins/pom.xml (and some others do not need to add "all-subprojects" profile)
Not all the pom.xml must have an "all-subprojects" in file. If there is no special projects as above, you can just leave the pom as is (take /plugins/pom.xml as example).
• /testsuite/pom.xml and its childern
A lot of efforts ware put on testsuite. When run with "all-subprojects" profile to do a release, we don't need really run and pass the tests. Remember the goal of this profile is just to find all the sub-projects' pom files so that release-plugin can auto update their versions.
• prepare the release
In above command -Dtest=false seems not take effect?? So, currently I add following in root pom's all-subprojects profile.
and use the following command:
• Check if all pom.xml files have a pom.xml.tag generated
Compare the quantity of the 2 files
• and if the versions in pom.xml.tag are updated correctly,
The only things that should be different between these files are the <version> and <scm> elements.
• and if there is no "SNAPSHOT" in pom.xml.tag files.
Just find in files..

### 2. Don't deploy the test artifacts to maven repo

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:

• /framework/configs/geronimo-gbean-deployer/src/it/j2ee-system-it1/pom.xml
• /framework/configs/geronimo-gbean-deployer/src/it/j2ee-system-it2/pom.xml
• /testsuite/pom.xml

### 3. Other changes

• Remove tools-maven-plugin and use the ianal-maven-plugin(defined in genesis-default-flava-2.0.pom) to verify-legal-files
• and also add following in testsuite/pom.xml
• Remove a bunch of maven plugins definition in server root pom
• Update xmlbeans-maven-plugin to 2.3.3 and remove all the following hacked codes:

## Release memo

### 1. NOTICE.txt files

• Check the "Year" of copyright in all NOTICE.txt file.
• Check the "Year" of copyright in plugins\welcome\geronimo-welcome\src\main\webapp\index.jsp

### 2. Before release, need manually update versions from 2.1.5-SNAPSHOT to 2.1.5

• Update the VERSION in README.txt / RELEASE_NOTES-2.1.5-SNAPSHOT.txt, and rename to RELEASE_NOTES-2.1.5.txt
• Update <version> properties in root pom.xml ?? (need update to <version>${version}</version>) • Update versions in "assemblies\geronimo-boilerplate-minimal\src\main\underlay\etcgsh-classworlds.conf" • Others • plugins\remote-deploy\geronimo-remote-deploy\src\main\webapp\WEB-INF\geronimo-web.xml • plugins\welcome\geronimo-welcome\src\main\webapp\WEB-INF\geronimo-web.xm • framework\modules\geronimo-plugin\src\test\resources\geronimo-plugins.xml • framework\configs\plugin\pom.xml - DownloadedPluginRepos • framework\configs\geronimo-gbean-deployer\src\it\j2ee-system-it1\src\test\resources\META-INF\geronimo-plugin.xml framework\configs\geronimo-gbean-deployer\src\it\j2ee-system-it1\src\test\resources\META-INF\plan.xml framework\configs\geronimo-gbean-deployer\src\it\metadatageneration-it3\src\test\resources\META-INF\geronimo-plugin.xml • testsuite/webservices-testsuite/jaxrpc-tests/jaxrpc-war/src/main/webapp/WEB-INF/geronimo-web.xml - jaxrpc-war • Not Applicable after 2.1.5: framework\modules\geronimo-upgrade\src\test\resources\gbean_1.xml framework\modules\geronimo-upgrade\src\test\resources\gbean_1_result.xml framework\configs\geronimo-gbean-deployer\src\it\j2ee-system-it2\src\test\resources\META-INF\geronimo-plugin.xml framework\configs\geronimo-gbean-deployer\src\it\j2ee-system-it2\src\test\resources\META-INF\plan.xml framework\configs\geronimo-gbean-deployer\src\it\metadatageneration-it4\src\test\resources\META-INF\geronimo-plugin.xml ### 3. After release, update versions to 2.1.6-SNAPSHOT • Update artifact-alias, add version 2.1.5 in artifact-alias after 2.1.5 release • /framework/configs/pom.xml • /plugins/client/pom.xml • /plugins/corba/client-corba-yoko/pom.xml • /plugins/pom.xml • Revert versions definition in README.txt / RELEASE_NOTES-2.1.5.txt, rename to RELEASE_NOTES-2.1.6-SNAPSHOT.txt, • Update <version> properties from${version} to 2.1.6-SNAPSHOT in root pom.xml so that can be built in mvn 2.0.10
• Update versions in "assemblies\geronimo-boilerplate-minimal\src\main\underlay\etcgsh-classworlds.conf"
• Others, same as in #2

### 5. Vote and Announce

• 1. Vote in mailing list, meanwhile wait TCK results
• 2. Promote stagine repo
• 3. Announce in mailing list
• 4. Post news in homepage
Labels
• No labels