tweak release steps
authorCraig Dowell <craigdo@ee.washington.edu>
Wed, 18 Jun 2008 11:04:07 -0700
changeset 3288 8a4b9d15ff04
parent 3287 da71d4c1859f
child 3289 bd7baccf47a3
tweak release steps
doc/release_steps.txt
--- a/doc/release_steps.txt	Wed Jun 18 10:39:30 2008 -0700
+++ b/doc/release_steps.txt	Wed Jun 18 11:04:07 2008 -0700
@@ -1,46 +1,52 @@
 Steps in doing an ns-3 release
 
-0. check out a clean ns-3-dev somewhere
-1. prepare the source files
+1. check out a clean ns-3-dev somewhere
+2. 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
+   - DO NOT change VERSION at this time
    - confirm that Doxygen builds cleanly and without warnings
      (./waf check; ./waf --doxygen), and check in any necessary changes 
    - ensure no regressions (./waf --regression)
-   - update the wscript in ns-3-dev to point REGRESSION_TRACES_TAR_NAME and
-     REGRESSION_TRACES_DIR_NAME to the correct places.
-2. ./waf configure; ./waf dist
-   - this will create a ns-3.1x.tar.bz2 tarball
-   - this will also create a ns-3.1x-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"
+3. ./waf configure; ./waf dist
+   - this will create an ns-3-dev.tar.bz2 tarball
+   - this will also create a ns-3-dev-ref-traces.tar.bz2 tarball
+4. test dev tarball on release platforms (waf check and maybe some other 
+   scripts)
+5. once you are happy with the tarball, tag ns-3-dev and ns-3-dev-ref-traces
    - hg tag "release ns-3.1x"
    - hg push 
-5. clone the tagged ns-3-dev and place it on the repository
+   - cd into regression/ns-3-dev-ref-traces
+   - hg tag "release ns-3.1x"
+   - hg push 
+6. 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.1x
    - cd /home/code/repos/ns-3.1x/.hg and edit the hgrc appropriately:
      "description = ns-3.1x release
       name = ns-3.1x"
-6. Run the regression tests on the new release and update the reference traces
+   - clone the ns-3-dev-ref-traces and place it on the repository as above
+     but use the name ns-3.1x-ref-traces
+7. check out a clean version of the new release (ns-3.1x) somewhere
+8. Update the VERSION for this new release
+   - change the string 3-dev in the VERSION file to the real version 
+     (e.g. 3.1)  This must agree with the version name you chose in the clone
+     for the regression tests to work.
+   - hg commit
+   - hg push
+9. Run the regression tests on the new release
    - ./waf --regression
    - ./waf --valgrind --regression (for valgrind version)
    - There should be no regression errors at this time
-   - tag ns-3-dev-ref-traces with "release ns-3.1X"
-     hg tag "release ns-3.1x"
-     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.1x-ref-traces
-7. Create a reference traces tarball
-   - again, run "./waf dist" 
-8. upload "ns-3.1x.tar.bz2" to the /var/www/html/releases/ directory on 
+10. Create final tarballs
+   - run "./waf dist" 
+11. upload "ns-3.1x.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.1x-ref-traces.tar.bz2" to the /var/www/html/releases/ 
+12. upload "ns-3.1x-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)
+13. update web pages on www.nsnam.org (source is in the www/ module)
    - clone the source repo (hg clone http://code.nsnam.org/www)
    - add link to news.html
    - update getting_started.html
@@ -54,4 +60,9 @@
      -- 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
+14. Final checks
+    - download tarball from web, build and run regression tests for as many
+      targets as you can
+    - download release from mercurial, build and run regression tests for as
+      many targets as you can
+15. announce to ns-developers, with summary of release notes