From NeoWiki
Revision as of 18:36, 25 June 2012 by ( |
contribs)
This page is an attempt to document all of the tasks required to release NeoOffice 3.3 Beta. This page is by no means comprehensive, but hopefully as we work through the release process, we will leave behind enough details to make future releases simpler and less error prone.
Here is what the colors mean:
Builds
Task | Date Completed | Assigned | Status |
Rebuild all custom NeoOffice code using the existing NeoOffice 3.3 Beta development builds. Perform a confirming checkout of the HEAD branch and set the build to build with a new version and the NeoOffice trademarked product name.
This includes the following steps:
- Do a cvs update -Ad to ensure that you have the latest code in your workspace, verify that none of the files are marked as updated, patched, modified, or have conflicts, and verify that the latest code actually builds through the installer.
- Copy custom.neo.mk file to custom.mk so that the clean checkout will build with the trademarked product names.
-
In makefile, change the following macros to the respective values:
PRODUCT_VERSION_BASE=3.3
PRODUCT_VERSION=$(PRODUCT_VERSION_BASE) Beta
PRODUCT_DIR_VERSION=$(PRODUCT_VERSION_BASE)_Beta
PREVIOUS_PRODUCT_VERSION=$(PRODUCT_VERSION)
PRODUCT_PATCH_VERSION=Patch 0
PRODUCT_DIR_PATCH_VERSION=Patch-0
NEO_TAG:=NeoOffice-3_3_Beta
-
In makefile, reset the patch installer to include the minimum number of files by removing all files added to the build.patch_package_shared make target after the NeoOffice-3_2_1 tag and changing the following macros to the respective values:
PRODUCT_COMPONENT_PATCH_MODULES=
- Delete all build.neo_* files so that all custom NeoOffice code will be rebuilt.
- Commit makefile changes and invoke make all to rebuild all applicable code and installers.
|
06/21/12 | pluby | Done |
Tag the code in the HEAD branch with the NeoOffice-3_3_Beta tag using the following steps:
- Do a cvs update -Ad to ensure that you have the latest code in your workspace, verify that none of the files are marked as updated, patched, modified, or have conflicts, and verify that the latest code actually builds through the installer.
- Tag all files in your workspace by invoking cvs tag NeoOffice-3_3_Beta.
- If there are any build errors, fix and commit them, retag the changed files by invoking cvs tag -F NeoOffice-3_3_Beta, and repeating the step.
|
06/21/12 | pluby | Done |
Create signed releasable NeoOffice 3.3 build for Intel.
Note: the following steps are overkill, but they ensure that all recent changes to the NeoOffice custom code has been built:
- Do a cvs diff -rNeoOffice-3_3_Beta and verify that there are no differences for any of the files. If any differences appear, the previous task (tagging of the workspace) has not been done properly and it needs to done properly before you can proceed with this task.
- Do a cvs update -Ad and verify that none of the files are marked as updated, patched, modified, or have conflicts. If any such markings appear, the previous task (tagging of the workspace) has not been done properly and it needs to done properly before you can proceed with this task.
- Delete all build.neo_* files. This will force the installer to rebuild all of the NeoOffice custom code without causing any of the OpenOffice.org or ooo-build code to be rebuilt.
- Invoke cp certs.neo.mk certs.mk ; make all to create the releasable installer and language packs. Note that by creating the certs.mk file, signing of the installer and the application will be enabled and this will cause the build to fail when building the installer. This is normal because the code must be built on Mac OS X 10.5 and the codesign and productsign tools are only available on Mac OS X 10.6 or higher. At this point, reboot into Mac OS X 10.6 and invoke make all to finish the building of signed installers.
|
06/21/12 | pluby | Done |
Create backup copy of releasable Intel binaries and upload them to staging server.
The following steps are the steps that I used to create my backup copy:
- Create an empty NeoOffice-3.3_Beta directory outside of the workspace
- Copy all 31 install/*.dmg files from your releasable build into the empty NeoOffice-3.3_Beta directory and chmod 444 *.dmg in that directory
Put the NeoOffice-3.3_Beta folder in a new empty directory and create a CD master NeoOffice-3.3_Beta.cdr file of the new directory using the following command:
hdiutil create -srcfolder /path/to/new/directory \
-format UDTO -ov -o /path/to/output/NeoOffice-3.3_Beta.cdr
|
| pluby | |
Verify that the releasable installer and one or more language packs install and run on Intel for the following Mac OS X versions:
- 10.5.8
- 10.6.8
- 10.7.4
- 10.8 Developer Preview 4
|
06/21/12 | pluby | Done |
Mirrors
NeoOffice's rsync server is hosted on rsync.neooffice.org. Downloads of the current release are restricted to paying users but the previous version is requires no payment to download. Our volunteer mirrors obtain the previous version's binaries by nightly runs of the following command on their mirrors:
rsync --archive --delete rsync://rsync.neooffice.org/neojavadownloads/ \
/path/to/NeoOffice/mirror/directory
Task | Date Completed | Assigned | Status |
Upload the 31 NeoOffice NeoOffice-3.3_Beta-*.dmg main installer and language pack files to the www-primary.neooffice.org server's /neojava/downloads/donordownloads directory using the following steps:
- Upload the files to your home directory on the server using the sftp command
- Use the md5 command to verify that the MD5 checksums of the source file and the uploaded file are the same
- Move the file from your home directory to the server's /neojava/downloads/donordownloads directory
- Invoke bin/setpermissions.sh so that the files will be readable by all mirrors' webservers
|
06/21/2012 | pluby | Done |
Website
Task | Date Completed | Assigned | Status |
Tag the www.neooffice.org website to avoid modifying production web pages while we modify the web pages in the test website by logging into the www.neooffice.org server, cd to the its webroot directory, and set the tag by invoking the following commands: bin/cvsplusperms.sh tag pre_NeoOffice-3_3_Beta ; bin/cvsplusperms.sh update -rpre_NeoOffice-3_3_Beta -d ; sudo chmod ug+x bin/*.sh ; bin/cvsplusperms.sh update -d
|
06/18/2012 | pluby | Done |
Update all NeoOffice and version names, file URLs, and patch version names in all of the files in the www-test-primary.neooffice.org server's neojava directory.
Note: I used the following steps to do this:
|
06/25/2012 | pluby | Done |
Update the 31 NeoOffice 3.3 Beta main installer and language pack file sizes and set the patch file size to 0 in the /neojava/includes/globals/newfilesizes.php file and if the changes look correct, invoke the following command to commit your changes: bin/cvsplusperms.sh commit |
06/22/2012 | pluby | Done |
Prepare the NeoOffice_3.3_Beta.html press release file, save it in the /press_releases directory using the following naming format, bin/cvsplusperms.sh add the file, and invoke the following command to commit the new file: bin/cvsplusperms.sh commit |
06/24/2012 | pluby | Done |
Verify that patch checking works properly by doing the following steps in a NeoOffice 3.3 Beta installation:
- Test as NeoOffice 2.2.6 Patch 5 by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice 3.1.2 is available:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%202.2.6&patch=Patch%205&os=${_OS}&arch=${_ARCH}
- Test as NeoOffice 3.0.2 Patch 6 by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice 3.1.2 is available:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%203.0.2&patch=Patch%206&os=${_OS}&arch=${_ARCH}
- Test as NeoOffice 3.1.2 Patch 9 by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice is up to date:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%203.1.2&patch=Patch%209&os=${_OS}&arch=${_ARCH}
- Test as NeoOffice 3.2 Patch 5 by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice 3.2.1 is available:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%203.2&patch=Patch%205&os=${_OS}&arch=${_ARCH}
- Test as NeoOffice 3.2.1 Beta by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice 3.2.1 is available:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%203.2.1%20Beta&patch=Patch%200&os=${_OS}&arch=${_ARCH}
- Test as NeoOffice 3.2.1 Patch 6 by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice is up to date:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%203.2.1&patch=Patch%206&os=${_OS}&arch=${_ARCH}
- Test as NeoOffice 3.3 Beta by opening the installation's Contents/MacOS/versionrc file, changing the UpdateURL line to the following, restarting NeoOffice, and selecting the Help :: Check for Updates menu. The dialog that appears should say that NeoOffice is up to date:
UpdateURL=http://www-test.neooffice.org/neojava/patchcheck.php?product=NeoOffice%203.3%20Beta&patch=Patch%200&os=${_OS}&arch=${_ARCH}&osversion=<OSVERSION>
|
06/22/2012 | pluby | Done |
Release
Generally, we try to time the release when it is early morning of the release date in New Zealand which is the most populous country closest to the international date line. So for this release, 26 June 2012 translates to the early afternoon on 25 June 2012 in California.
Task | Date Completed | Assigned | Status |
Verify that all mirrors listed for the NeoOffice 3.3 Beta main installer and language pack links work in the www-test-primary.neooffice.org website's download pages. If any do not work, comment them out in the /neojava/includes/mirrors.php file and invoke the following command: bin/cvsplusperms.sh commit |
06/22/2012 | pluby | Done |
Make the NeoOffice 3.3 Beta binaries downloadable from the www.neooffice.org website's download pages by updating the www.neooffice.org website's pages to match what is in the www-test.neooffice.org website's pages. Login into the www.neooffice.org server, cd to the its webroot directory, and invoke the following command: bin/cvsplusperms.sh update -Ad |
| pluby | |
Make NeoOffice 3.3 Beta the current version in the NeoWiki using the following steps:
|
| pluby | |
Add the NeoOffice 3.3 Beta MD5 checksums to the NeoOffice MD5 checksums page. |
06/22/2012 | pluby | Done |
Add "3.3 Beta" version in Bugzilla. |
06/22/2012 | pluby | Done |
Close any bugs with a status of "Assigned", "Reopened", or "Resolved" and resolution of "Fixed" by setting the following field values:
- Set "Status" field to "Closed"
- Set "Resolution" field to "Fixed"
- Set "Target Version" field to "3.3 Beta"
- Set "Closed in Version" field to "3.3 Beta"
|
06/22/2012 | pluby | Done |
Set the minimum payment level for the NeoOffice Beta Support forum to the same amount as the NeoOffice Support forum, remove the Beta date range in the description, and update the list of versions listed in the description for the NeoOffice Support forum. |
| pluby | |
Post the press release as an article on the Trinity news page. Note: be sure to change the language field from "English" to "All" in when submitting the article so that all Trinity users will see the article. |
| pluby | |
Post a release announcement to this Trinity forum topic and this Trinity forum topic so that the news is included in the RSS feed. |
| pluby | |
Synchronize the payments database to PayPal's database to ensure that none of the users' transactions are missing and to pick up any e-mail address changes made by users during the last year using the following steps:
|
06/20/2012 | pluby | Done |