@@ -35,10 +35,12 @@ and/or the buildbots have been testing
3535 - required versions for related libraries (nsc, netanim, pybindgen)
3636 are correct
3737 - confirm that Doxygen builds cleanly (./waf doxygen),
38+ - confirm that the new bake configurations for the release work correctly
3839 - confirm all documents build: './waf docs' and check outputs
3940
4041Check out a clean ns-3-dev somewhere using ns-3-allinone
41- - hg clone http://code.nsnam.org/ns-3-allinone
42+ - git clone https://gitlab.com/nsnam/ns-3-allinone.git
43+ - cd ns-3-allinone
4244 - ./download.py
4345 - cd ns-3-dev
4446 - edit VERSION such as "ns-3.14.rc1" (DO NOT commit this change to ns-3-dev)
@@ -55,10 +57,7 @@ https://www.nsnam.org/release/ns-allinone-3.14.rc1.tar.bz2
5557Iterate the above as needed during the release testing phase.
5658
5759Note, in the past we have added mercurial tags to ns-3-dev to denote
58- release candidates, but lately we have not been bothering with this.
59- If you would like to tag a release candidate, follow these steps
60- -- hg tag "ns-3.X.rcX" (for the appropriate version numbers)
61- -- hg push ssh://code@code.nsnam.org/repos/ns-3-dev
60+ release candidates, but lately we have not been tagging release candidates.
6261
63623) making the release
6463---------------------
@@ -68,55 +67,20 @@ we will work off of a release repository.
6867
6968At this point, you are ready for final packaging and repository/site work
7069
71- tagging ns-3-dev and creating ns-3.X repositories
72- -------------------------------------------------
73-
74- We'll refer to the release number as "X" or "x" below. The steps here
75- involve tagging ns-3-dev, copying over ns-3-dev to ns-3.X on code.nsnam.org,
76- cloning it locally, making changes from "3-dev" to "3.X" in various places,
77- and checking in those changes to the new ns-3.X repository.
78-
79- 1. once you are happy with the most recent release candidate tarball and
80- do not plan to further touch ns-3-dev, tag ns-3-dev
81- - cd into ns-3-dev
82- -- hg tag "ns-3.x"
83- -- hg push ssh://code@code.nsnam.org//home/code/repos/ns-3-dev
84-
85- 2. copy the tagged ns-3-dev and place it on the repository
86- - ssh code.nsnam.org; sudo bash; su code;
87- -- cp -r /home/code/repos/ns-3-dev /home/code/repos/ns-3.x
88- -- cd /home/code/repos/ns-3.x/.hg and edit the hgrc appropriately:
89- [paths]
90- default = /home/code/repos/ns-3.x
91- [web]
92- description = ns-3.x release
93- name = ns-3.x
94- contact = <ns-developers@isi.edu>
95-
96- 3. check out a clean version of the new release (ns-3.x)
97- to a scratch directory on your local machine
98- - hg clone http://code.nsnam.org/ns-3.x
99-
100- 5. Update the VERSION for this new release, in the ns-3.x directory (i.e.
101- NOT in ns-3-dev)
102- - change the string 3-dev in the VERSION file to the real version
103- (e.g. 3.14) This must agree with the version name you chose in the clone.
104- - change the version and release string for the documentation in
105- doc/manual/source, doc/tutorial/source, doc/tutorial-pt-br/source,
106- and doc/models/source conf.py files
107- This should hopefully be updated in the future to simply pull from the
108- VERSION file.
109- - hg commit -m "update VERSION to ns-3.x"
110- - hg push ssh://code@code.nsnam.org//home/code/repos/ns-3.x
70+ We'll refer to the release number as "X" or "x" below.
11171
11272creating the distribution tarball
11373---------------------------------
11474
115751. Create final tarballs
116- You need to work with a clean ns-3-allinone-3.x directory
117- - hg clone http://code.nsnam.org/ns-3-allinone
76+ You need to work with a clean ns-3-allinone-3.x directory, assuming that
77+ ns-3-dev is ready for inclusion as is, just with a modified VERSION file
78+ - git clone https://gitlab.com/nsnam/ns-3-allinone.git
11879 - cd ns-3-allinone
119- - ./download.py -n ns-3.x
80+ - ./download.py
81+ - cd ns-3-dev
82+ - edit VERSION to the proper '3.x' string (but do not commit this change)
83+ - cd ../
12084 - ./dist.py (notice we did not build here)
12185 - this will create an ns-allinone-3.x.tar.bz2 tarball
12286 - sanity check this tarball just to make sure everything went ok
@@ -138,6 +102,8 @@ creating the distribution tarball
138102preparing the documentation
139103----------------------------
140104
105+ Note: The below scripts currently presume mercurial and must be updated
106+
1411071. If final release, build release documentation
142108 - sudo bash; su nsnam; cd /home/nsnam/bin
143109 ./update-docs -r http://code.nsnam.org/ns-3.x -R
@@ -147,14 +113,11 @@ preparing the documentation
1471133. In ns-3-dev, edit the tutorial "Getting Started" page to
148114 update the release version numbers.
149115
150- preparing the Wordpress -based main website
151- ------------------------------------------
116+ preparing the Jekyll -based main website
117+ ---------------------------------------
152118
1531191. create a new ns-3.x page which should be visible from
154- http://www.nsnam.org/ns-3.x
155- - Download
156- - Documentation
157- - Authors
120+ https://www.nsnam.org/releases/ns-3-x.
158121
1591222. Repoint http://www.nsnam.org/releases/latest to the new page
160123 Repoint http://www.nsnam.org/documentation/latest to the new page
@@ -164,13 +127,12 @@ http://www.nsnam.org/ns-3.x
164127release (there are two such pages, one under Releases and one under
165128Documentation)
166129
167- 4. The main page http://www.nsnam.org should point to
168- ns-3.x in the "Download" and "Documentation" boxes
169-
170- 5. The releases page http://www.nsnam.org must be updated (including
171- source tarball link)
130+ 4. Create a blog entry to announce release
172131
173- 6. Create a blog entry to announce release
132+ patch for upgrade
133+ -----------------
134+ Prepare a patch for upgrading from ns-3.(x-1) to ns-3.x, and upload to
135+ the releases directory on the web server.
174136
175137ns-3 wiki edits
176138---------------
@@ -179,19 +141,14 @@ ns-3 wiki edits
179141
1801422. edit front page and Roadmap
181143
182- Bugzilla
183- --------
184-
185- 1. Add a product version "ns-3.x" to the available versions.
186-
187144Announcing
188145----------
189146
1901471. Final checks
191148 - check manual, tutorial, model, and doxygen documentation links
192149 - download tarball from web, build and run tests for as many
193150 targets as you can
194- - download release from mercurial, build and run tests for as
151+ - download release from GitLab.com and build and run tests for as
195152 many targets as you can
196153 - test and verify until you're confident the release is solid.
197154
0 commit comments