doc/release_steps.txt
author Tom Henderson <tomh@tomh.org>
Wed, 08 Apr 2009 16:07:34 -0700
changeset 4373 e493e80274bd
parent 3683 05797303259b
child 4534 2680abc768f2
permissions -rw-r--r--
implementation and plumbing of Ipv4InterfaceAddress class
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
776
34d5715456b3 release_steps.txt document
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     1
Steps in doing an ns-3 release
34d5715456b3 release_steps.txt document
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     2
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
     3
1. check out a clean ns-3-dev somewhere
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
     4
2. prepare the source files
776
34d5715456b3 release_steps.txt document
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     5
   - revise and check in AUTHORS, if needed
34d5715456b3 release_steps.txt document
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     6
   - revise and check in RELEASE_NOTES
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
     7
   - DO NOT change VERSION at this time
1797
7cd3c92af131 Add Doxygen cleanup as a release step
Tom Henderson <tomh@tomh.org>
parents: 1789
diff changeset
     8
   - confirm that Doxygen builds cleanly and without warnings
3194
79dba133b5f8 update RELEASE_NOTES and a few other files
Tom Henderson <tomh@tomh.org>
parents: 2892
diff changeset
     9
     (./waf check; ./waf --doxygen), and check in any necessary changes 
3278
3abce59c8bf8 fill in some blanks
Craig Dowell <craigdo@ee.washington.edu>
parents: 3194
diff changeset
    10
   - ensure no regressions (./waf --regression)
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    11
3. ./waf configure; ./waf dist
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    12
   - this will create an ns-3-dev.tar.bz2 tarball
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    13
   - this will also create a ns-3-dev-ref-traces.tar.bz2 tarball
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    14
4. test dev tarball on release platforms (waf check and maybe some other 
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    15
   scripts)
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    16
5. once you are happy with the tarball, tag ns-3-dev and ns-3-dev-ref-traces
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    17
   - hg tag "ns-3.x"
1789
39a56c382884 more detail in release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1286
diff changeset
    18
   - hg push 
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    19
   - cd into regression/ns-3-dev-ref-traces
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    20
   - hg tag "ns-3.x"
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    21
   - hg push 
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    22
6. clone the tagged ns-3-dev and place it on the repository
2343
85959d329c8c a few tweaks to the release steps document
Tom Henderson <tomh@tomh.org>
parents: 2194
diff changeset
    23
   - ssh code.nsnam.org; sudo tcsh; su code;
3280
25fbf06f9a56 plug more holes in release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3278
diff changeset
    24
   - cp -r /home/code/repos/ns-3-dev /home/code/repos/ns-3.1x
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    25
   - cd /home/code/repos/ns-3.x/.hg and edit the hgrc appropriately:
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    26
     "description = ns-3.x release
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    27
      name = ns-3.x"
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    28
   - clone the ns-3-dev-ref-traces and place it on the repository as above
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    29
     but use the name ns-3.x-ref-traces and edit the hgrc appropriately
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    30
7. check out a clean version of the new release (ns-3.x) somewhere
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    31
8. Update the VERSION for this new release
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    32
   - change the string 3-dev in the VERSION file to the real version 
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    33
     (e.g. 3.2)  This must agree with the version name you chose in the clone
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    34
     for the regression tests to work.
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    35
   - hg commit
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    36
   - hg push
3289
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    37
9. Run the regression tests on the new release (debug and optimized)
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    38
   - ./waf -d debug configure
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    39
   - ./waf
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    40
   - ./waf --regression
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    41
   - ./waf --valgrind --regression (for valgrind version)
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    42
   - ./waf -d optimized configure
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    43
   - ./waf
2891
aeca90b95bf5 nits for 3.0.12 release
Tom Henderson <tomh@tomh.org>
parents: 2865
diff changeset
    44
   - ./waf --regression
aeca90b95bf5 nits for 3.0.12 release
Tom Henderson <tomh@tomh.org>
parents: 2865
diff changeset
    45
   - ./waf --valgrind --regression (for valgrind version)
3194
79dba133b5f8 update RELEASE_NOTES and a few other files
Tom Henderson <tomh@tomh.org>
parents: 2892
diff changeset
    46
   - There should be no regression errors at this time
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    47
10. Create final tarballs
3289
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    48
   - ./waf configure; ./waf dist
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    49
   - this will create an ns-3.x.tar.bz2 tarball
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    50
   - this will also create a ns-3.x-ref-traces.tar.bz2 tarball
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    51
11. upload "ns-3.x.tar.bz2" to the /var/www/html/releases/ directory on 
1789
39a56c382884 more detail in release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1286
diff changeset
    52
   the www.nsnam.org server
2343
85959d329c8c a few tweaks to the release steps document
Tom Henderson <tomh@tomh.org>
parents: 2194
diff changeset
    53
   - give it 644 file permissions, and user/group = apache
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    54
12. upload "ns-3.x-ref-traces.tar.bz2" to the /var/www/html/releases/ 
2865
d40eb18a4da0 Point regression tests to final locations, update release steps, bug 158
Craig Dowell <craigdo@ee.washington.edu>
parents: 2343
diff changeset
    55
   directory on the www.nsnam.org server
d40eb18a4da0 Point regression tests to final locations, update release steps, bug 158
Craig Dowell <craigdo@ee.washington.edu>
parents: 2343
diff changeset
    56
   - give it 644 file permissions, and user/group = apache
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    57
13. update web pages on www.nsnam.org (source is in the www/ module)
3278
3abce59c8bf8 fill in some blanks
Craig Dowell <craigdo@ee.washington.edu>
parents: 3194
diff changeset
    58
   - clone the source repo (hg clone http://code.nsnam.org/www)
3683
05797303259b release_steps.txt nits
Craig Dowell <craigdo@ee.washington.edu>
parents: 3358
diff changeset
    59
   - update index.html
776
34d5715456b3 release_steps.txt document
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    60
   - add link to news.html
1789
39a56c382884 more detail in release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1286
diff changeset
    61
   - update getting_started.html
39a56c382884 more detail in release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1286
diff changeset
    62
   - update documents.html
39a56c382884 more detail in release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1286
diff changeset
    63
   - update roadmap on wiki
3278
3abce59c8bf8 fill in some blanks
Craig Dowell <craigdo@ee.washington.edu>
parents: 3194
diff changeset
    64
   - commit and push changes
3abce59c8bf8 fill in some blanks
Craig Dowell <craigdo@ee.washington.edu>
parents: 3194
diff changeset
    65
   - build and update HTML directory on the server
3abce59c8bf8 fill in some blanks
Craig Dowell <craigdo@ee.washington.edu>
parents: 3194
diff changeset
    66
     -- ssh www.nsnam.org; sudo tcsh; su nsnam;
3abce59c8bf8 fill in some blanks
Craig Dowell <craigdo@ee.washington.edu>
parents: 3194
diff changeset
    67
     -- run ~/bin/update-html
776
34d5715456b3 release_steps.txt document
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    68
   - build and update Doxygen directory on the server
2194
25bad6958d13 update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1797
diff changeset
    69
     -- edit ~/bin/update-doxygen-release file and change RELEASE variable 
25bad6958d13 update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1797
diff changeset
    70
        to the right version number 
25bad6958d13 update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 1797
diff changeset
    71
     -- run ~/bin/update-doxygen-release
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    72
14. Final checks
3289
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    73
   - download tarball from web, build and run regression tests for as many
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    74
     targets as you can
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    75
   - download release from mercurial, build and run regression tests for as
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    76
     many targets as you can
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
    77
   - test and verify until you're confident the release is solid.
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
    78
15. announce to ns-developers, with summary of release notes