Releases and Patching: Difference between revisions

From OpenPetra Wiki
Jump to navigation Jump to search
Line 7: Line 7:


=== Things todo for a SourceForge release ===
=== Things todo for a SourceForge release ===
* download the latest language files from Launchpad: <code>nant translation</code>, commit to i18n
* update translations from and to bazaar:
** add new language
** download the latest language files from Launchpad: <code>nant translation</code>
*** in csharp\ICT\Petra\Client\MSysMan\Gui\MaintainLanguageCulture.ManualCode.cs, cmbLanguage.SetDataSourceStringList
** generate the latest translation template : <code>nant buildTranslationTemplate</code>
*** in setup\petra0300\standalone\standalone.iss, add dll
** commit to bazaar
*** in i18n\i18n.build, add language at task downloadTranslations
* add new language
** in csharp\ICT\Petra\Client\MSysMan\Gui\MaintainLanguageCulture.ManualCode.cs, cmbLanguage.SetDataSourceStringList
** in setup\petra0300\standalone\standalone.iss, add dll
** in i18n\i18n.build, add language at task downloadTranslations
* Release Notes: the permalink does not work for Sourceforge Mantis
* Release Notes: the permalink does not work for Sourceforge Mantis
** In Firefox (Chrome is bad with external links), go to https://sourceforge.net/apps/mantisbt/openpetraorg/view_all_bug_page.php, filter: fixed in version 0.0.2.0, hide none (includes closed and resolved bugs)
** In Firefox (Chrome is bad with external links), go to https://sourceforge.net/apps/mantisbt/openpetraorg/view_all_bug_page.php, filter: fixed in version 0.0.2.0, hide none (includes closed and resolved bugs)

Revision as of 07:52, 22 December 2011

Releases

The deliverables are:

  • the tar.gz files (server-debian-postgresql, server-debian-centos, client) which could be the base for manual installs, and for RPMS
  • the standalone installer for Windows
  • the remote client installer for Windows (not published on Sourceforge, since it would be bound to an IP address)
    • a special tar.gz file that is used as a base for building the patches (see below)

Things todo for a SourceForge release

  • update translations from and to bazaar:
    • download the latest language files from Launchpad: nant translation
    • generate the latest translation template : nant buildTranslationTemplate
    • commit to bazaar
  • add new language
    • in csharp\ICT\Petra\Client\MSysMan\Gui\MaintainLanguageCulture.ManualCode.cs, cmbLanguage.SetDataSourceStringList
    • in setup\petra0300\standalone\standalone.iss, add dll
    • in i18n\i18n.build, add language at task downloadTranslations
  • Release Notes: the permalink does not work for Sourceforge Mantis
  • Update Release notes in bzr, setup/petra0300/releasenotes
  • add new patch sql file to db/patches
  • Tag bzr
  • push the trunk working tree to Sourceforge Bazaar: bzr push bzr+ssh://pokorra@openpetraorg.bzr.sourceforge.net/bzrroot/openpetraorg/trunk --no-strict
  • On a windows machine: run nant buildWindowsStandalone -D:ReleaseID=0.0.2.0
  • On a linux machine: run nant buildLinuxSourceforgeRelease -D:ReleaseID=0.0.2.0. bzr update, bzr revert. (on openpetrabuild: /home/timop/bzr)
  • test installer on Windows and Linux
  • Upload to SF: username@frs.sourceforge.net:/home/pfs/project/o/op/openpetraorg/openpetraorg
    • link the release notes
  • Post Release Notes on website, twitter
  • Update Mantis Tracker:
    • add next release to all projects

Patches

patching the database

Standalone:

  • standalone is always delivered with SQLite database
  • we don't have patch installers yet. a full installer will update the program files, and add sql files for patching the database (setup\petra0300\standalone\patches). We cannot write to the user's directory, since the installer must be run as admin.
  • on the next startup of OpenPetra Standalone by the user, csharp\ICT\Petra\Server\app\Main\ServerManager.cs EstablishDBConnection() will check for the database version, and UpdateSQLiteDatabase() will update the sqlite database
  • this will also run "UPDATE s_system_defaults SET s_default_value_c = '{0}' WHERE s_default_code_c = 'CurrentDatabaseVersion';"