doc/release_steps.txt
author Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
Thu, 17 Apr 2008 15:40:25 -0700
changeset 2971 75780f899be3
parent 2892 b17f2928291e
child 3194 79dba133b5f8
permissions -rw-r--r--
output the initial value of the attributes

Steps in doing an ns-3 release

0. check out a clean ns-3-dev somewhere
1. prepare the source files
   - revise and check in AUTHORS, if needed
   - revise and check in RELEASE_NOTES
   - update and check in VERSION to the latest release number
   - confirm that Doxygen builds cleanly and without warnings
     (./waf --doxygen), and check in any necessary changes 
2. ./waf configure; ./waf dist
   - this will create a ns-3.0.x.tar.bz2 tarball
   - this will also create a ns-3.0.x-ref-traces.tar.bz2 tarball
3. test tarball on release platforms (waf check and maybe some other scripts)
4. once you are happy with the tarball, tag ns-3-dev with "release ns-3.0.X"
   - hg tag "release ns-3.0.x"
   - hg push 
5. clone the tagged ns-3-dev and place it on the repository
   - ssh code.nsnam.org; sudo tcsh; su code;
   - cp -r /home/code/repos/ns-3-dev /home/code/repos/ns-3.0.x
   - cd /home/code/repos/ns-3.0.x/.hg and edit the hgrc appropriately:
     "description = ns-3.0.x release
      name = ns-3.0.x"
6. Run the regression tests on the new release and update the reference traces
   - ./waf --regression
   - ./waf --valgrind --regression (for valgrind version)
   - There should be no regressions at this time
   - tag ns-3-dev-ref-traces with "release ns-3.0.X"
     hg tag "release ns-3.0.x"
     hg push
   - clone the ns-3-dev-ref-traces and place it on the repository as in step
     5 but use the name ns-3.0.x-ref-traces
7. Create a reference traces tarball
   - again, run "./waf dist" 
8. upload "ns-3.0.x.tar.bz2" to the /var/www/html/releases/ directory on 
   the www.nsnam.org server
   - give it 644 file permissions, and user/group = apache
9. upload "ns-3.0.x-ref-traces.tar.bz2" to the /var/www/html/releases/ 
   directory on the www.nsnam.org server
   - give it 644 file permissions, and user/group = apache
10. update web pages on www.nsnam.org (source is in the www/ module)
   - add link to news.html
   - update getting_started.html
   - update documents.html
   - update roadmap on wiki
   - build and update Doxygen directory on the server
     -- ssh www.nsnam.org; sudo tcsh; su nsnam;
     -- edit ~/bin/update-doxygen-release file and change RELEASE variable 
        to the right version number 
     -- run ~/bin/update-doxygen-release
11. announce to ns-developers, with summary of release notes