| 1 | = MapServer Release Packaging !HowTo = |
| 2 | |
| 3 | 1. Make sure the source builds and works locally |
| 4 | |
| 5 | 2. Test with the buildbots at http://buildbot.osgeo.org:8504/ |
| 6 | |
| 7 | 3. Edit mapserver.h and HISTORY.TXT to update version info |
| 8 | |
| 9 | Note that in HISTORY.TXT we remove the "Current Version (SVN trunk)" header and replace it with a version header, with the release number followed by the release date inside round brackets, e.g. |
| 10 | |
| 11 | {{{ |
| 12 | Version 5.0.0 (2007-09-17) |
| 13 | -------------------------- |
| 14 | }}} |
| 15 | |
| 16 | ... then *after* the tag is created we come back and reinsert the "Current Version (SVN trunk)" above the release header in preparation for more history. |
| 17 | |
| 18 | 4. Create release tag, e.g. |
| 19 | |
| 20 | Look in http://svn.osgeo.org/mapserver/tags/ to see how we usually name the tags, here are a few examples: |
| 21 | {{{ |
| 22 | rel-5-0-0-beta1 |
| 23 | rel-5-0-0-beta2 |
| 24 | ... |
| 25 | rel-5-0-0-beta6 |
| 26 | rel-5-0-0-rc1 |
| 27 | rel-5-0-0-rc2 |
| 28 | rel-5-0-0 |
| 29 | rel-5-0-1 |
| 30 | rel-5-0-2 |
| 31 | rel-5-0-3 |
| 32 | rel-5-2-0-beta1 |
| 33 | ... |
| 34 | }}} |
| 35 | |
| 36 | If working from trunk: |
| 37 | |
| 38 | {{{ |
| 39 | $ svn mkdir -m "Creating rel-5-0-0 release tag" https://svn.osgeo.org/mapserver/tags/rel-5-0-0/ |
| 40 | $ svn copy -m "Tagging source as rel-5-0-0" \ |
| 41 | https://svn.osgeo.org/mapserver/trunk/mapserver/ \ |
| 42 | https://svn.osgeo.org/mapserver/tags/rel-5-0-0/mapserver/ |
| 43 | $ svn copy -m "Tagging msautotest as rel-5-0-0" \ |
| 44 | https://svn.osgeo.org/mapserver/trunk/msautotest/ \ |
| 45 | https://svn.osgeo.org/mapserver/tags/rel-5-0-0/msautotest/ |
| 46 | }}} |
| 47 | |
| 48 | If working from a branch: |
| 49 | |
| 50 | {{{ |
| 51 | $ svn mkdir -m "Creating rel-5-0-3 release tag" \ |
| 52 | https://svn.osgeo.org/mapserver/tags/rel-5-0-3/ |
| 53 | $ svn copy -m "Tagging source as rel-5-0-3" \ |
| 54 | https://svn.osgeo.org/mapserver/branches/branch-5-0/mapserver/ \ |
| 55 | https://svn.osgeo.org/mapserver/tags/rel-5-0-3/mapserver/ |
| 56 | $ svn copy -m "Tagging msautotest as rel-5-0-3" \ |
| 57 | https://svn.osgeo.org/mapserver/branches/branch-5-0/msautotest/ \ |
| 58 | https://svn.osgeo.org/mapserver/tags/rel-5-0-3/msautotest/ |
| 59 | }}} |
| 60 | |
| 61 | 5. Prepare source package on upload.osgeo.org server (this server is used to package the releases, it NFS mounts the download directory): |
| 62 | |
| 63 | {{{ |
| 64 | $ ssh upload.osgeo.org |
| 65 | $ cd /osgeo/mapserver/ |
| 66 | $ ./build_package.sh 5.0.3 https://svn.osgeo.org/mapserver/tags/rel-5-0-3/mapserver |
| 67 | $ mv mapserver-5.0.3.tar.gz /osgeo/download/mapserver/ |
| 68 | }}} |
| 69 | |
| 70 | 6. Update download area on website, one of: |
| 71 | http://mapserver.gis.umn.edu/download/current |
| 72 | or |
| 73 | http://mapserver.gis.umn.edu/download/beta |
| 74 | |
| 75 | Make sure to move the link to the top of the list of packages so it is easy for users to find. |
| 76 | |
| 77 | 7. Prepare and send announcement to mapserver-users and mapserver-dev, also include mapserver-announce for official releases (but not for betas). |
| 78 | |
| 79 | Make sure announcement includes a summary of changes since last release and link to source package download at a minimum. |
| 80 | |
| 81 | 8. When to create branches? |
| 82 | |
| 83 | Branches are created as late as possible in the release cycle, ideally after the final release (i.e. after all betas and RCs are done). |
| 84 | For the list of existing branches, see https://svn.osgeo.org/mapserver/branches/ |
| 85 | |
| 86 | Here are a few examples of branch names: |
| 87 | {{{ |
| 88 | branch-4-8 |
| 89 | branch-4-10 |
| 90 | branch-5-0 |
| 91 | branch-5-2 |
| 92 | ... |
| 93 | }}} |
| 94 | |
| 95 | To create a branch, use: |
| 96 | {{{ |
| 97 | $ svn mkdir -m "Creating branch-5-2 directory" \ |
| 98 | https://svn.osgeo.org/mapserver/branches/branch-5-2/ |
| 99 | $ svn copy -m "Branching source to branch-5-2" \ |
| 100 | https://svn.osgeo.org/mapserver/trunk/mapserver/ \ |
| 101 | https://svn.osgeo.org/mapserver/branches/branch-5-2/mapserver/ |
| 102 | $ svn copy -m "Branching msautotest to branch-5-2" \ |
| 103 | https://svn.osgeo.org/mapserver/trunk/msautotest/ \ |
| 104 | https://svn.osgeo.org/mapserver/branches/branch-5-2/msautotest/ |
| 105 | }}} |