User Tools

  • Logged in as: anonymous (anonymous)
  • Log Out

Site Tools


mantisbt:release_process

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
mantisbt:release_process [2015/03/17 01:38] – [Notifications] update announcement details vboctormantisbt:release_process [2019/07/15 11:39] – [Bugtracker] make wrap box wider and add bold chars dregad
Line 41: Line 41:
    * optional features (e.g., graphs)    * optional features (e.g., graphs)
  
-The test process for Mantis in the Debian distro can be found at http://svn.debian.org/wsvn/collab-maint/ext-maint/mantis/trunk/debian/TestingNewRelease?op=file&rev=0&sc=0 .+For reference, you may also read the [[http://anonscm.debian.org/viewvc/collab-maint/ext-maint/mantis/trunk/debian/TestingNewRelease?view=log|test plan for new Mantis releases in Debian]].
  
  
Line 80: Line 80:
     * If needed, make any additional changes manually     * If needed, make any additional changes manually
   * Update the version number in core/constant_inc.php.   * Update the version number in core/constant_inc.php.
-  * Update doc/RELEASE to include the release notes. (for 1.2.x releases - not applicable to 1.3.x+) 
   * Commit the changes.   * Commit the changes.
  
Line 152: Line 151:
   * Update Versions   * Update Versions
     - Go to the //Manage Projects page// for the //mantisbt// project     - Go to the //Manage Projects page// for the //mantisbt// project
-    - Update the version being released (//1.M.x//): +    - Update the version being released (''1.M.x''): 
-      * Rename it to //1.M.N// +      * Rename it to ''1.M.N'' 
-      * Update the "Date Orderfield to the actual release date +      * Update the //Date Order// field to the actual release date 
-      * Copy-paste the text from the release notes into the "Descriptionfield, update as appropriate +      * Copy-paste the text from the release notes into the //Description// field, update as appropriate 
-      * Tick the "Releasedbox +      * Tick the //Released// box 
-    - Create a new //1.M.x// version +    - Create a new ''1.M.x'' version 
-      * Set the "Date Orderfield to a future date +      * Set the //Date Order// field to a future date <WRAP important 90%> 
-      * Make sure the "Releasedbox is not ticked+The [[mantisbt:plugins:sourceintegration]] relies on this date to automatically set the //Fixed in version// field when processing commits referencing issues for resolution (i.e. ''Fixes #xxx'').  
 + 
 +For this to work properly, it is important that the **version targeted by the //master// branch always has the most recent date**. Adjust it if necessary (e.g. when cutting a patch release). 
 +</WRAP> 
 +      * Make sure the //Released// box is not ticked 
  
   * Update issues   * Update issues
     - Go to the //View Issues page//     - Go to the //View Issues page//
     - Close all resolved issues that are fixed in the version being released     - Close all resolved issues that are fixed in the version being released
-      * Set a new filter: //Status// = resolved, //Fixed in Version// = 1.M.N +      * Set a new filter: //Status// = resolved, //Fixed in Version// = ''1.M.N''
       * Review listed issues, update them as needed (in particular, check that //Resolution// = fixed)       * Review listed issues, update them as needed (in particular, check that //Resolution// = fixed)
       * Tick the //Select all// checkbox       * Tick the //Select all// checkbox
Line 170: Line 173:
       * Click the //Close Issues// button       * Click the //Close Issues// button
       * Repeat until the filter is empty       * Repeat until the filter is empty
-    - Carry open issues still targeted to 1.M.N over to the new 1.M.x version +    - Carry open issues still targeted to ''1.M.N'' over to the new ''1.M.x'' version 
-      * Set a new filter: //Hide Status// = closed (And Above), //Target Version// = 1.M.N +      * Set a new filter: //Hide Status// = closed (And Above), //Target Version// = ''1.M.N'' 
       * Tick the //Select all// checkbox       * Tick the //Select all// checkbox
       * Select //Update Target Version// and click OK       * Select //Update Target Version// and click OK
-      * Select //1.M.x// from the list and click the //Update Target Version// button+      * Select ''1.M.x'' from the list and click the //Update Target Version// button
       * Repeat until the filter is empty       * Repeat until the filter is empty
  
Line 183: Line 186:
     * Edit main website's config file ''/srv/www/main/config_inc.php''     * Edit main website's config file ''/srv/www/main/config_inc.php''
     * Update ''$g_latest_version_stable'' or ''$g_latest_version_dev'' as appropriate, to match the version being released     * Update ''$g_latest_version_stable'' or ''$g_latest_version_dev'' as appropriate, to match the version being released
 +
 +==== Nightly builds ====
 +
 +When releasing a new //major// (X+1.0.0) or //minor// (X.Y+1.0) release, the nightly builds script must be updated so that the files are generated for the appropriate branches.
 +
 +  * Edit the script ''/srv/mantisbt-tools/nightly-builds.sh''
 +  * Update the //branches// variable to specify the names of all the repository branches for which a nightly build is required
 +
 +To make the change permanent, the file should be committed to the //mantisbt/mantisbt-tools// repository.
 +
 +If desired, the script may be executed manually at this point. Note that it normally does not produce any output; check the log file at ''/var/log/nightly-builds.log'' for errors.
 +
 +<code>$ sudo /srv/mantisbt-tools/nightly-builds.sh</code>
  
  
Line 207: Line 223:
 === Manual process === === Manual process ===
  
-Also refer to MantisBT Administration Guide [[http://www.mantisbt.org/docs/master-1.2.x/en/administration_guide/admin.install.upgrade.html|upgrade section]].+Also refer to MantisBT Administration Guide [[http://www.mantisbt.org/docs/master-1.3.x/en-US/Admin_Guide/html-desktop/#admin.install.upgrade|upgrade section]].
  
 **Upgrade Official Bug Tracker Instance** **Upgrade Official Bug Tracker Instance**
Line 214: Line 230:
   * Update the code from git <code>   * Update the code from git <code>
 $ cd /srv/www/bugs/ $ cd /srv/www/bugs/
-$ git checkout master-1.2.x+$ git checkout master-1.3.x
 $ git pull --rebase $ git pull --rebase
 $ git checkout bugs $ git checkout bugs
-$ git rebase master-1.2.x+$ git rebase master-1.3.x
 </code> </code>
   * Upgrade the database if needed (admin/admin_upgrade.php).   * Upgrade the database if needed (admin/admin_upgrade.php).
Line 231: Line 247:
   * Upload the release to [[http://sourceforge.net/projects/mantisbt/files/|SourceForge]] via the File Manager web interface   * Upload the release to [[http://sourceforge.net/projects/mantisbt/files/|SourceForge]] via the File Manager web interface
   * Release through the SF.net mechanism.     * Release through the SF.net mechanism.  
-    * The release name should be "1.2.x" (e.g. 1.2.17).  +    * The release name should be "1.3.x" (e.g. 1.3.3).  
     * Put the release in the appropriate package based on whether it is a stable or a development release.       * Put the release in the appropriate package based on whether it is a stable or a development release.  
     * Release candidates, alphas and betas are "development" releases.     * Release candidates, alphas and betas are "development" releases.
Line 245: Line 261:
   * Update mailing list based on official bug tracker users since users can now signup to our bugtracker to get such announcements.   * Update mailing list based on official bug tracker users since users can now signup to our bugtracker to get such announcements.
   * Use sendgrid to send out the announcement email.   * Use sendgrid to send out the announcement email.
 +
 +===== Prepare for next release =====
 +
 +==== Bump the version number ====
 +
 +The MantisBT version constant must be increase to reflect the current state of the development branch.
 +
 +This ensures that people running Mantis from the GIT repository are not led to believe they are working with an official release, and allows the [[https://mantisbt.org/builds.php|Nightly builds]] to reference the proper version in the zip/tarball file name. 
 +
 +  * Edit ''core/constants_inc.php''
 +  * Update //MANTIS_VERSION// by incrementing the version number as appropriate:
 +    * Major version: **x+1**.0.0**-dev**
 +    * Minor version: x.**y+1**.0**-dev**
 +    * Patch version: x.y.**z+1-dev**
 +  * Commit and push the modified file
  
mantisbt/release_process.txt · Last modified: 2022/05/10 10:07 by dregad

Driven by DokuWiki