--- 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