doc/release_steps.txt
changeset 5419 f54e261e92ed
parent 5411 2e293c541a03
child 5425 7b6a845c956f
--- a/doc/release_steps.txt	Wed Oct 14 10:24:55 2009 -0700
+++ b/doc/release_steps.txt	Wed Oct 14 11:20:49 2009 -0700
@@ -1,10 +1,11 @@
 Steps in doing an ns-3 release
 
-1. check out a clean ns-3-dev somewhere
+1. check out a clean ns-3-dev somewhere using ns-3-allinone (you will need it)
    - hg clone http://code.nsnam.org/ns-3-allinone
    - ./download.py
    - ./build.py
    - confirm that the release builds cleanly.
+   - cd ns-3-dev
    - ensure that tests pass (./test.py)
    - ensure no regressions (./waf --regression)
 2. prepare the source files
@@ -13,19 +14,23 @@
    - DO NOT change VERSION at this time
    - confirm that Doxygen builds cleanly and without warnings
      (./waf doxygen), and check in any necessary changes 
-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)
+3. build an ns-3-allinone distribution
+   - change back into the allinone directory
+   - ./dist.py
+   - this will create an ns-allinone-dev.tar.bz2 tarball
+4. test dev tarball on release platforms 
+   - ./test.py 
+   - ./waf --regression
+   - other scripts you can think of
 5. once you are happy with the tarball, tag ns-3-dev and ns-3-dev-ref-traces
+   - cd into ns-3-dev
    - hg tag "ns-3.x"
    - hg push 
-   - cd into regression/ns-3-dev-ref-traces
+   - cd into ns-3-dev-ref-traces
    - hg tag "ns-3.x"
    - hg push 
 6. clone the tagged ns-3-dev and place it on the repository
-   - ssh code.nsnam.org; sudo tcsh; su code;
+   - ssh code.nsnam.org; sudo bash; su code;
    - cp -r /home/code/repos/ns-3-dev /home/code/repos/ns-3.1x
    - cd /home/code/repos/ns-3.x/.hg and edit the hgrc appropriately:
      "description = ns-3.x release
@@ -59,9 +64,8 @@
    - ./waf --valgrind --regression (for valgrind version)
    - There should be no regression errors at this time
 10. Create final tarballs
-   - cd ..
+   - cd into ns-3-allinone level
    - ./dist.py
-   - ./waf configure; ./waf dist
    - this will create an ns-allinone-3.x.tar.bz2 tarball
 11. upload "ns-allinone-3.x.tar.bz2" to the /var/www/html/releases/ directory on 
    the www.nsnam.org server
@@ -74,23 +78,25 @@
    - sudo chmod 644 ns-allinone-3.x.tar.bz2
 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)
-   - update index.html
-   - add link to news.html
-   - update getting_started.html
-   - update documents.html
+   - update references to releases in html_src 
+     (consider "grep 'ns-3\.' *.html" for a new release)
+     (consider "grep 'RCx' *.html" for a new RC)
+   - update references to releases in scripts/
+
    - update roadmap on wiki
    - commit and push changes
+14. update the server
    - build and update HTML directory on the server
-     -- ssh www.nsnam.org; sudo tcsh; su nsnam;
+     -- ssh www.nsnam.org; sudo bash; su nsnam;
      -- run ~/bin/update-html
    - build and update Doxygen directory on the server
      -- edit ~/bin/update-doxygen-release file and change RELEASE variable 
         to the right version number 
      -- run ~/bin/update-doxygen-release
-14. Final checks
+15. 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
    - test and verify until you're confident the release is solid.
-15. announce to ns-developers, with summary of release notes
+16. announce to ns-developers, with summary of release notes