doc/release_steps.txt
author Tom Henderson <tomh@tomh.org>
Tue, 09 Jul 2013 06:09:38 -0700
changeset 9911 90def6afa747
parent 9211 e5cb7d8ec47c
child 10188 f2177f4b2cb1
permissions -rw-r--r--
update release_steps for website
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
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     3
We typically post release candidates for testing at the following URL:
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     4
https://www.nsnam.org/release/ns-allinone-3.X.rcX.tar.bz2
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     5
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     6
This overview covers the following release stages:
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     7
1) new feature additions and bug fixing
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     8
2) preparing release candidates for testing
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
     9
3) making the actual release
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    10
4) maintaining the release
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    11
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    12
1) new feature additions and bug fixing
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    13
---------------------------------------
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    14
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    15
During the software development phase, it is important for the release
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    16
manager to try to maintain the following files with updated information:
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    17
- AUTHORS
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    18
- RELEASE_NOTES
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    19
- CHANGES.html
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    20
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    21
otherwise, this becomes painful to edit (and things are forgotten)
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    22
when the release is imminent.
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    23
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    24
2) preparing release candidates for testing
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    25
-------------------------------------------
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    26
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    27
This step presumes that you have a reasonably solid ns-3-dev that you
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    28
and/or the buildbots have been testing
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    29
   - building static, optimized, and debug versions
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    30
   - try Python visualizer (not tested by buildbots)
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    31
      -- ./waf --pyrun src/flow-monitor/examples/wifi-olsr-flowmon.py --vis
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    32
   - ensure that tests pass (./test.py -g) and make sure that the buildbots
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    33
     are reporting blue based on the tip of the repository
9211
e5cb7d8ec47c update release steps documentation
Tom Henderson <tomh@tomh.org>
parents: 9200
diff changeset
    34
   - revise and check in AUTHORS, RELEASE_NOTES, and CHANGES.html
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    35
   - required versions for related libraries (nsc, netanim, pybindgen)
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    36
     are correct
6586
8ddf25211f89 Final nits for 3.9 release
Tom Henderson <tomh@tomh.org>
parents: 6287
diff changeset
    37
   - confirm that Doxygen builds cleanly (./waf doxygen), 
9200
445bf62eb5a8 documentation nits on release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 8842
diff changeset
    38
   - confirm all documents build:  './waf docs' and check outputs
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    39
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    40
Check out a clean ns-3-dev somewhere using ns-3-allinone 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    41
   - hg clone http://code.nsnam.org/ns-3-allinone
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    42
   - ./download.py
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    43
   - cd ns-3-dev
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    44
   - edit VERSION such as "ns-3.14.rc1" (DO NOT commit this change to ns-3-dev)
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    45
   - cd ..
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    46
   - ./dist.py
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    47
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    48
This should yield a compressed tarfile, such as:  ns-allinone-3.14.rc1.tar.bz2 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    49
Test this, and when satisfied, upload it to
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    50
www.nsnam.org:/var/www/html/releases/ (with apache:apache file ownership)
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    51
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    52
Announce it to ns-developers as:
9200
445bf62eb5a8 documentation nits on release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 8842
diff changeset
    53
https://www.nsnam.org/release/ns-allinone-3.14.rc1.tar.bz2
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    54
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    55
Iterate the above as needed during the release testing phase.
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    56
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    57
Note, in the past we have added mercurial tags to ns-3-dev to denote
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    58
release candidates, but lately we have not been bothering with this.
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    59
If you would like to tag a release candidate, follow these steps
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    60
     -- hg tag "ns-3.X.rcX" (for the appropriate version numbers)
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    61
     -- hg push ssh://code@code.nsnam.org/repos/ns-3-dev
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    62
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    63
3) making the release
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    64
---------------------
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    65
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    66
Follow similar steps for creating the release candidate tarballs, except
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    67
we will work off of a release repository.
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    68
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    69
At this point, you are ready for final packaging and repository/site work
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    70
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    71
tagging ns-3-dev and creating ns-3.X repositories
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    72
-------------------------------------------------
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    73
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    74
We'll refer to the release number as "X" or "x" below.  The steps here 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    75
involve tagging ns-3-dev, copying over ns-3-dev to ns-3.X on code.nsnam.org, 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    76
cloning it locally, making changes from "3-dev" to "3.X" in various places, 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    77
and checking in those changes to the new ns-3.X repository.
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    78
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    79
1. once you are happy with the most recent release candidate tarball and
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    80
do not plan to further touch ns-3-dev, tag ns-3-dev
5419
f54e261e92ed tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5411
diff changeset
    81
   - cd into ns-3-dev
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    82
     -- hg tag "ns-3.x"
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    83
     -- hg push ssh://code@code.nsnam.org//home/code/repos/ns-3-dev
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    84
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    85
2. copy the tagged ns-3-dev and place it on the repository
5419
f54e261e92ed tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5411
diff changeset
    86
   - ssh code.nsnam.org; sudo bash; su code;
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    87
     -- cp -r /home/code/repos/ns-3-dev /home/code/repos/ns-3.x
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    88
     -- cd /home/code/repos/ns-3.x/.hg and edit the hgrc appropriately:
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    89
       [paths]
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    90
       default = /home/code/repos/ns-3.x
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    91
       [web]
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    92
       description = ns-3.x release
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    93
       name = ns-3.x
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
    94
       contact = <ns-developers@isi.edu>
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    95
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    96
3. check out a clean version of the new release (ns-3.x) 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    97
   to a scratch directory on your local machine 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
    98
   - hg clone http://code.nsnam.org/ns-3.x
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
    99
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
   100
5. Update the VERSION for this new release, in the ns-3.x directory (i.e.
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
   101
   NOT in ns-3-dev)
3288
8a4b9d15ff04 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 3280
diff changeset
   102
   - change the string 3-dev in the VERSION file to the real version 
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
   103
     (e.g. 3.14)  This must agree with the version name you chose in the clone.
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
   104
   - change the version and release string for the documentation in 
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
   105
     doc/manual/source, doc/tutorial/source, doc/tutorial-pt/source, 
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
   106
     and doc/models/source conf.py files
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
   107
     This should hopefully be updated in the future to simply pull from the
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
   108
     VERSION file.
8841
892d5a23630a update release steps
Tom Henderson <tomh@tomh.org>
parents: 7869
diff changeset
   109
   - hg commit -m "update VERSION to ns-3.x"
5425
7b6a845c956f release steps tweaks
Craig Dowell <craigdo@ee.washington.edu>
parents: 5419
diff changeset
   110
   - hg push ssh://code@code.nsnam.org//home/code/repos/ns-3.x
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   111
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   112
creating the distribution tarball
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   113
---------------------------------
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   114
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   115
1. Create final tarballs
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   116
    You need to work with a clean ns-3-allinone-3.x directory
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   117
   - hg clone http://code.nsnam.org/ns-3-allinone
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   118
   - cd ns-3-allinone
6624
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6586
diff changeset
   119
   - ./download.py -n ns-3.x
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   120
   - ./dist.py (notice we did not build here)
5411
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   121
   - this will create an ns-allinone-3.x.tar.bz2 tarball
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   122
   - sanity check this tarball just to make sure everything went ok
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   123
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   124
2. upload "ns-allinone-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
   125
   the www.nsnam.org server
5411
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   126
   - scp ns-allinone-3.x.tar.bz2 www.nsnam.org:~
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   127
   - ssh www.nsnam.org
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   128
   - sudo cp ns-allinone-3.x.tar.bz2 /var/www/html/releases
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   129
   - cd !$
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   130
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   131
3. give it 644 file permissions, and user/group = apache if it is not already
5411
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   132
   - sudo chown apache:apache ns-allinone-3.x.tar.bz2
2e293c541a03 tweak release steps
Craig Dowell <craigdo@ee.washington.edu>
parents: 5410
diff changeset
   133
   - sudo chmod 644 ns-allinone-3.x.tar.bz2
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   134
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   135
4. if this is a final release (not RC)
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
   136
   - delete RC releases from /var/www/html/releases
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   137
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   138
preparing the documentation
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   139
----------------------------
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   140
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   141
1. If final release, build release documentation
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
   142
   - sudo bash; su nsnam; cd /home/nsnam/bin 
9211
e5cb7d8ec47c update release steps documentation
Tom Henderson <tomh@tomh.org>
parents: 9200
diff changeset
   143
   ./update-docs -r http://code.nsnam.org/ns-3.x -R
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   144
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   145
2. Check if these new files are available on the website
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   146
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   147
preparing the Wordpress-based main website
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   148
------------------------------------------
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   149
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   150
1. create a new ns-3.x page which should be visible from
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   151
http://www.nsnam.org/ns-3.x
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   152
- New Features
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   153
- Download
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   154
- Bugs Fixed
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   155
- Documentation
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   156
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   157
2. Repoint http://www.nsnam.org/releases/latest to the new page
7869
91484be8f2e9 update doxygen-release
Tom Henderson <tomh@tomh.org>
parents: 7474
diff changeset
   158
   Repoint /var/www/html/doxygen-release to the new release doxygen.
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   159
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   160
3. Update the Older Releases page to create an entry for the previous
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   161
release (there are two such pages, one under Releases and one under
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   162
Documentation)
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   163
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   164
4. The main page http://www.nsnam.org should point to
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   165
ns-3.x in the "Download" and "Documentation" boxes
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   166
9911
90def6afa747 update release_steps for website
Tom Henderson <tomh@tomh.org>
parents: 9211
diff changeset
   167
5. The releases page http://www.nsnam.org must be updated (including
90def6afa747 update release_steps for website
Tom Henderson <tomh@tomh.org>
parents: 9211
diff changeset
   168
source tarball link)
90def6afa747 update release_steps for website
Tom Henderson <tomh@tomh.org>
parents: 9211
diff changeset
   169
90def6afa747 update release_steps for website
Tom Henderson <tomh@tomh.org>
parents: 9211
diff changeset
   170
6. Create a blog entry to announce release 
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   171
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   172
ns-3 wiki edits
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   173
---------------
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   174
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   175
1. Create ns-3.(X+1) wiki page if not done already.
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   176
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   177
2. edit front page and Roadmap
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   178
7474
ea33e42de414 add note about updating Bugzilla
Tom Henderson <tomh@tomh.org>
parents: 7473
diff changeset
   179
Bugzilla
ea33e42de414 add note about updating Bugzilla
Tom Henderson <tomh@tomh.org>
parents: 7473
diff changeset
   180
--------
ea33e42de414 add note about updating Bugzilla
Tom Henderson <tomh@tomh.org>
parents: 7473
diff changeset
   181
ea33e42de414 add note about updating Bugzilla
Tom Henderson <tomh@tomh.org>
parents: 7473
diff changeset
   182
1. Add a product version "ns-3.x" to the available versions.
ea33e42de414 add note about updating Bugzilla
Tom Henderson <tomh@tomh.org>
parents: 7473
diff changeset
   183
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   184
Announcing
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   185
----------
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   186
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   187
1. Final checks
7289
f74bc8bee060 update release steps
Josh Pelkey <jpelkey@gatech.edu>
parents: 7024
diff changeset
   188
   - check manual, tutorial, model, and doxygen documentation links
6624
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6586
diff changeset
   189
   - download tarball from web, build and run tests for as many
3289
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
   190
     targets as you can
6624
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6586
diff changeset
   191
   - download release from mercurial, build and run tests for as
3289
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
   192
     many targets as you can
bd7baccf47a3 tweaks after actually doing it
Craig Dowell <craigdo@ee.washington.edu>
parents: 3288
diff changeset
   193
   - test and verify until you're confident the release is solid.
7473
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   194
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   195
2. announce to ns-developers and ns-3-users, with summary of release notes
ef9866e968ab update release_steps.txt
Tom Henderson <tomh@tomh.org>
parents: 7289
diff changeset
   196
8842
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   197
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   198
4) maintaining the release
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   199
--------------------------
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   200
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   201
First, create skeletal sections in CHANGES.html and RELEASE_NOTES to
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   202
start collecting inputs for the ns-3.(x+1) release.
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   203
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   204
The project may decide to make incremental, bug-fix releases from
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   205
time to time, with a minor version number (e.g. ns-3.7.1).  To do
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   206
this, changesets may be cherry-picked from ns-3-dev and added to
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   207
ns-3.x repository.  Do not move over changesets that pertain to 
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   208
adding new features, but documentation fixes and bug fixes are good 
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   209
changesets to make available in a minor release.  The same steps
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   210
above for making a release are generally followed, although one
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   211
does not need to create a separate repository, but instead just tags
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   212
the existing ns-3-dev and ns-3.x repositories with a "ns-3.x.1" type
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   213
of tag.
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   214
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   215
Also, on the main website, make sure that "latest release" points to
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   216
the right page.  See how it was handled for ns-3.12 (which made
c3657c6fd33d update release steps again
Tom Henderson <tomh@tomh.org>
parents: 8841
diff changeset
   217
a minor release): https://www.nsnam.org/ns-3.12/