Steps To Release HowTo
Historical Document: (for reference only) --Tony
Contents
- 1 Create stable branch
- 2 Prepare wiki release notes from svn log:
- 3 Edit the following source file lines to reflect new release version:
- 4 Create migration scripts to update version information in ad_system table:
- 5 Create the new Oracle seed:
- 6 Create new PostgreSQL seed:
- 7 Change and compile new Launch4j:
- 8 Generate complete model for new version:
- 9 Rename current-release
- 10 Create directory next-release
- 11 Copy release in /tags/adempierenew
- 12 create new release package on sf
- 13 compile the new version to make installer
- 14 test an installation with the installer
- 15 upload to sourceforge
- 16 edit english and spanish wikipedia pages
- 17 edit other languages wikipedia page
- 18 prepare a new AVA
- 19 Update Live Demo
- 20 Update Daily Build
- 21 Edit freshmeat
- 22 press release
- 23 change wiki
Create stable branch
Need to resolve all open priority 9 bugs.
Prepare wiki release notes from svn log:
- For example: http://www.adempiere.com/wiki/index.php/Release_320
- This is always done by Carlos Ruiz by a script in the terminal this way: svn log -r 7777:HEAD http://adempiere.svn.sourceforge.net/svnroot/adempiere/release
Edit the following source file lines to reflect new release version:
/base/src/org/compiere/Adempiere.java
static public final String MAIN_VERSION = "Release 3.4.0"; static public final String DATE_VERSION = "2008-02-29"; static public final String COPYRIGHT = "\u00A9 1999-2008 Adempiere \u00AE";
/launch/Adempiere.xml
<fileVersion>3.4.0</fileVersion> <txtFileVersion>Release 3.4.0</txtFileVersion> <fileDescription>Adempiere ERP & CRM 3.4.0</fileDescription> <productVersion>3.4.0</productVersion> <txtProductVersion>Release 3.4.0</txtProductVersion>
/serverRoot/src/web/adempiere.html
<td align="left" valign="middle"><font color="#ffffff" face="Arial, Helvetica, sans-serif" size="4"> Welcome to the Adempiere 3.4.0 Home Page!<br> </font></td>
/serverRoot/src/web/adempiere.jnlp
<jnlp spec = "1.5+" version = "3.4.0" <title>Adempiere Client 3.4.0 $$context</title> <menu submenu="Adempiere 3.4.0 $$context"/>
/utils/adempiereDirectTemplate.jnlp
<jnlp spec = "1.5+" version = "3.4.0" <title>Adempiere Client 3.4.0 @ADEMPIERE_APPS_SERVER@ Direct</title> <menu submenu="Adempiere 3.4.0 @ADEMPIERE_APPS_SERVER@ Direct"/>
/utils_dev/build.properties
env.ADEMPIERE_VERSION_FILE=340
Create migration scripts to update version information in ad_system table:
AD_SYSTEM table migration script for Oracle
For example:
/release/migration/331b-release/340_update_ad_system_ver.sql
UPDATE AD_SYSTEM SET releaseno = '340', VERSION = '2008-02-29' WHERE ad_system_id = 0 AND ad_client_id = 0; COMMIT ;
AD_SYSTEM table migration script for Postgresql
For example:
/release/migration/331b-release/340_update_ad_system_ver.sql
UPDATE AD_SYSTEM SET releaseno = '340', VERSION = '2008-02-29' WHERE ad_system_id = 0 AND ad_client_id = 0; COMMIT ;
Create the new Oracle seed:
- RUN_ImportReference
- This will upload a fresh 'current' seed into the reference schema
- Apply all migration scripts
- The scripts need to be applied to reference schema
If you are using the build.xml script to apply the migration scripts then, Edit oracle.properties and change the sqlplus connection string as follows: oracle.connect.param=reference/reference
- Apply the scripts in /migration/processes_post_migration/
- add missing translations, sync term, check seq
- Delete the ID's >= 1,000,000 from the database <== need to investigate further
- RUN_ExportReference
- This script currently only exists for the linux platforms. (Need to create a windows version)
- This script exports the reference schema to Adempiere.dmp file
- and jar's the Adempiere.dmp and Adempiere.log into Adempiere.jar
- (original notes suggest using an Oracle 9i client to create a 9i compatible dmp file)
- upload oracle seed into release/data/seed/Adempiere.jar
Create new PostgreSQL seed:
- Download oracle seed
- Create the corresponding ddlutils
- Create the new seed (schema/user adempiere)
- Export with pg_dump to Adempiere_pg.dmp
- Jar the Adempiere_pg.dmp into Adempiere_pg.jar
- Upload postgres seed
- upload postgresql seed into release/data/seed/
- NOTE: This could be done in other way, like the oracle seed
- Look for instructions in Migration/DDLUtils
Change and compile new Launch4j:
1. Install launch4j 3.x from http://launch4j.sourceforge.net/
2. Open Adempiere.xml from launch4j and start the build process
3. A new Adempiere.exe file will be written into the Release folder.
Generate complete model for new version:
(be careful not to include customizations)
Rename current-release
(i.e. 331b-release) to current-next (i.e. 331b-340)
Create directory next-release
(i.e. 340-release)
Copy release in /tags/adempierenew
i.e. tags/adempiere330 (svn branch/tag)
create new release package on sf
compile the new version to make installer
/utils_dev/RUN_build
test an installation with the installer
* Test the install
* Test the webstore
* Test the client
upload to sourceforge
(all, including MD5)
/adempiere/install/Adempiere_340.tar.gz
/adempiere/install/Adempiere_340.tar.gz.MD5
/adempiere/install/Adempiere_340.zip
/adempiere/install/Adempiere_340.zip.MD5
edit english and spanish wikipedia pages
Comparison of accounting software (if stable)
Adempiere J2EE, JBoss October 12, 2006 23:46 3.2.0 May 1, 2007 5 - Production / Stable Oracle, PostgreSQL +10: English, Spanish, Français, ...
edit other languages wikipedia page
prepare a new AVA
Refer to: Howto_Create_AVA
Upload to SF: [1]
Update Live Demo
Update Daily Build
Direct script to the new release scripts directory
Edit the file /coredata/adempiere_src/run_nightlybuild.sh
Change the line
./build.sh [current] [next] < enterkeyinput.txt 1>build.log 2>&1 example ./build.sh 354a 355a < enterkeyinput.txt 1>build.log 2>&1
Edit freshmeat
Advise Sempre of new release. (Currently administered by sempre)
http://freshmeat.net/projects/adempiere
press release
Advise Ramiro of new release. (Normally Ramiro prepares it as PR) http://sourceforge.net/forum/forum.php?forum_id=719716]