This page describes the Release Process for JEMS Installer.
For JEMS Web Installer look at JEMSWebInstaller
1. Dev
Update installer version numbers in version.properties.
Build installer by running ant under jems-installer dir.
Update the jbossauto-install.xml according to JEMSInstaller. Dev is supposed to do this prior to tagging so that QA doesn't need to do it.
Commit changes
Tag code base:
copy -rHEAD https://svn.jboss.org/repos/installer/jems-installer/trunk https://svn.jboss.org/repos/installer/jems-installer/tags/JEMSInstaller_1_2_0_BETA2 copy -rHEAD https://svn.jboss.org/repos/installer/izpack-listeners/trunk https://svn.jboss.org/repos/installer/izpack-listeners/tags/JEMSInstaller_1_2_0_BETA2 copy -rHEAD https://svn.jboss.org/repos/installer/izpack-installer/trunk https://svn.jboss.org/repos/installer/izpack-installer/tags/JEMSInstaller_1_2_0_BETA2
2. QA
Make sure everything according to the QAPreReleaseChecklist is completed.
Checkout installer project by tag, for example,
https://svn.jboss.org/repos/installer/jems-installer/tags/JEMSInstaller_1_2_0_BETA2
Make sure intaller version numbers are up-to-date in version.properties.
Build installer
For the 1.2.x version just run ant
For the 1.3.x version run ant installer jbpm-installer jbossrules-installer
For the 1.3.x version (media kit release):
Upload the jars to the ftp.jboss.com/jboss-jems-installer/
Notify RH release engineering team (via Andy Miller)
RH release engineering will provide a link to media kit ISO image.
Test all installer's profiles in GUI mode (make sure that server starts up with no errors). In case of 1.3.x release test using ISO image.
Test all installer's profiles in headless mode (make sure that server starts up with no errors).
jBPM and Rules installers require installGroup default. i.e. java -jar jbpm-3.1.2-installer.jar -installGroup default installpath=c:\test
Wish: Test datasource configuration for most popular databases (oracle, mysql, postgresql, mssql)
Compile the release notes
Select the appropriate version
In the filter view click edit
Change matching resolution to done
Update the view according to the new filter
In the issue navigator tab click on "Release Notes" for the current view
Copy the current release notes
upload the .jar, .MD5 and .SHA-256 to sourceforge
ncftp upload.sf.net
cd incoming
mput .
Create a new jnlp file
SSH to shell.sourceforge.net
cd /home/groups/j/jb/jboss/htdocs/jnlp
Copy an existing jnlp file and change the name to reflect the new release
Edit the file, changing any references to old version numbers
Save the file, then verify that the file gets published and is working correctly
Get the jar signed (This step might be obsolete. Should use rpm-sign going forward)
Email Scott and Eric and ask them to sign the jar, provide the link as well
Jar Signing Instructions
execute the command: jarsigner -keystore KeystoreName xxx.jar KeyEntry_friendly_name
"xxx.jar" being the jar file you would like to sign.
"keyentry_name" being the name you assigned to the key entry (alias).
You will be prompted to enter the keystore password.
NOTE: use -J"-Xmx256m" if you get OOM errors
Example:
$ jarsigner -J"-Xmx256m" -keystore codesign.jboss.com.keystore <file.jar> jboss-code-sign
To look at the keystore (to get the friendly name, etc.):
keytool -list -keystore KeystoreName -v
You will be prompted to enter the keystore password.
To verify:
jarsigner -verify -certs Xxx.jar
"xxx.jar" being the jar file that you just signed.
Instructions for JBoss code signing...
download the files from sourceforge.net
sign the jar (see above)
generate the md5 and sha-256 digests using the build.xml file
ant sha
ant md5
Upload signed JAR
$ ncftpput upload.sf.net /incoming file.jar
Edit the file release again in sourceforge by going under admin->file release->Edit Release with new signed jars.
Notify the docs team about the release.
Send a description of the release, a link the jnlp file, and a link to the changelog
Announce the release
Email jboss-dev and make an announcment in the forums.
Copy the src dist from sourceforge to /opt in the qa lab.
Upload JEMS Installer to SourceForge, along with the respective MD5 sums and verify the files are picked up by the mirrors
Update installer CMS with info and links to the new release (https://cms.labs.jboss.com/prod/forge/portal-content/default/members/jemsinstaller)
Add a new <file> element to the https://cms.labs.jboss.com/prod/forge/portal-content/default/members/jemsinstaller/project.xml
Add news entry in the https://cms.labs.jboss.com/prod/forge/portal-content/default/members/jemsinstaller/freezone/projectDescription.html
Update app server CMS with the link to the latest installer (https://cms.labs.jboss.com/prod/forge/portal-content/default/members/jbossas)
Update the Web Install link on jboss.org with the link to the latest jnlp file
Legacy (Pre-4.0.4.GA) Installer Build Instructions
login to a QA Lab box
issue command 'vncserver'
this will start a vnc server on a given port (look for :1 or :2)
this translates to port 5901 or port 5902
start a new qa session and forward the appropriate port
start the vnc client and load localhost:port
at this point you should be greeted with a remote X desktop
go to your release/version-num/jboss/build/install directory
ant install-izpack
this will install izpack to your local QA lab dir
it will also kick off the installer installation
hit next on the installer screen until you make it to the end of the wizard
change your compiler to java 1.5, build modules aspects, ejb3x, ejb3
in the build/install directory execute command: ant -Dizpack.home=/path to izpack installation
this will create the the installer jar
test the installer jar with both a 1.4 and 1.5 jdk (IMPORTANT)
java -jar jboss-4.0.x-installer.jar
test the command line configurations as well
java -jar output/jboss-4.0.4.GA-installer
.jar -installGroup ejb3-clustering installpath=/tmp/jboss-4.0.4.GA
Create a new jnlp file
SSH to shell.sourceforge.net
cd /home/groups/j/jb/jboss/htdocs/jnlp
Copy an existing jnlp file and change the name to reflect the new release
Edit the file, changing any references to old version numbers
Save the file, then verify that the file gets published and is working correctly
test jnlp by going to http://jboss.sourceforge.net/jnlp/jboss-4.0.4.GA-installer.jnlp replace the installer.jnlp file with correct name
Get the jar signed
Email Scott and Eric and ask them to sign the jar, provide the link as well
Comments