Merge lp:~frankban/juju-gui/release-process-fixes into lp:juju-gui/experimental

Proposed by Francesco Banconi
Status: Merged
Merged at revision: 297
Proposed branch: lp:~frankban/juju-gui/release-process-fixes
Merge into: lp:juju-gui/experimental
Diff against target: 148 lines (+36/-25)
1 file modified
docs/process.rst (+36/-25)
To merge this branch: bzr merge lp:~frankban/juju-gui/release-process-fixes
Reviewer Review Type Date Requested Status
Juju GUI Hackers Pending
Review via email: mp+141738@code.launchpad.net

Description of the change

Fix release process documentation

And other minor changes, like text formatting fixes
and trailing spaces removal.

https://codereview.appspot.com/7039049/

To post a comment you must log in.
Revision history for this message
Francesco Banconi (frankban) wrote :
Download full text (8.4 KiB)

Reviewers: mp+141738_code.launchpad.net,

Message:
Please take a look.

Description:
Fix release process documentation

And other minor changes, like text formatting fixes
and trailing spaces removal.

https://code.launchpad.net/~frankban/juju-gui/release-process-fixes/+merge/141738

(do not edit description out of merge proposal)

Please review this at https://codereview.appspot.com/7039049/

Affected files:
   A [revision details]
   M docs/process.rst

Index: [revision details]
=== added file '[revision details]'
--- [revision details] 2012-01-01 00:00:00 +0000
+++ [revision details] 2012-01-01 00:00:00 +0000
@@ -0,0 +1,2 @@
+Old revision:
<email address hidden>
+New revision:
<email address hidden>

Index: docs/process.rst
=== modified file 'docs/process.rst'
--- docs/process.rst 2012-12-21 02:16:06 +0000
+++ docs/process.rst 2013-01-03 11:45:17 +0000
@@ -106,8 +106,8 @@
  =====================================

  - Get a clean branch of the trunk:: ``bzr branch lp:juju-gui``.
-- If you are using a pre-existing branch, make sure it is up-to-date::
``bzr
- pull``.
+- If you are using a pre-existing branch, make sure it is up-to-date::
+ ``bzr pull``.
  - Verify that the top-most version in CHANGES.yaml specifies the expected
    version string. It should be bigger than the most recent version found
on
    https://launchpad.net/juju-gui/stable . If the most recent version
string
@@ -115,24 +115,25 @@

    * Decide what the next version number should be (see http://semver.org/)
and
      change "unreleased" to that value.
- * Commit to the branch with this checkin message: ``bzr commit -m 'Set
- version for release.'``
- * Push the branch directly to the parent (``bzr push`` should work).
+ * Commit to the branch with this checkin message:
+ ``bzr commit -m 'Set version for release.'``
+ * Push the branch directly to the parent (``bzr push :parent`` should
work).

-- Run the tests and verify they pass: ``make test-prod`` and then
- ``make test-debug``.
+- Run the tests and verify they pass: ``FINAL=1 make test-prod`` and then
+ ``FINAL=1 make test-debug``.
  - Create the tarball: ``FINAL=1 make distfile``. The process will end by
    reporting the name of the tarball it made.
  - In an empty temporary directory somewhere else on your system, expand the
    tarball: ``tar xvzf PATH_TO_TARBALL``
-- In that directory, start a server: ``python -m SimpleHTTPServer 8888``
+- In the ``build-prod`` directory, inside the uncompressed one, start a
server:
+ ``python -m SimpleHTTPServer 8888``
  - In Chrome and Firefox, QA the application. At the very least, load the
app,
    open the charm panel, go to an inner page, and make sure there are no
404s
    or Javascript errors in the console. We want a real QA script for the
    future.
  - For now, we will assume you would like to verify the release on the
    Launchpad staging server. As we become more confident with this process,
- this step may become unnecessary. In the checkout, run ``FINAL=1 make
+ this step may become unnecessary. In the branch, run ``FINAL=1 make
    dis...

Read more...

Revision history for this message
Nicola Larosa (teknico) wrote :

Land with (small) changes.

https://codereview.appspot.com/7039049/diff/1/docs/process.rst
File docs/process.rst (right):

https://codereview.appspot.com/7039049/diff/1/docs/process.rst#newcode109
docs/process.rst:109: - If you are using a pre-existing branch, make
sure it is up-to-date::
No need for double colons in the two lines above.

https://codereview.appspot.com/7039049/diff/1/docs/process.rst#newcode128
docs/process.rst:128: - In the ``build-prod`` directory, inside the
uncompressed one, start a server:
s/inside/under/

https://codereview.appspot.com/7039049/diff/1/docs/process.rst#newcode183
docs/process.rst:183: - If you are using a pre-existing branch, make
sure it is up-to-date::
No need for double colons in the two lines above.

https://codereview.appspot.com/7039049/

297. By Francesco Banconi

Fixes per review

Revision history for this message
Francesco Banconi (frankban) wrote :

Thanks for the review Nicola.

https://codereview.appspot.com/7039049/diff/1/docs/process.rst
File docs/process.rst (right):

https://codereview.appspot.com/7039049/diff/1/docs/process.rst#newcode109
docs/process.rst:109: - If you are using a pre-existing branch, make
sure it is up-to-date::
On 2013/01/03 12:06:30, teknico wrote:
> No need for double colons in the two lines above.

Done.

https://codereview.appspot.com/7039049/diff/1/docs/process.rst#newcode128
docs/process.rst:128: - In the ``build-prod`` directory, inside the
uncompressed one, start a server:
On 2013/01/03 12:06:30, teknico wrote:
> s/inside/under/

Done.

https://codereview.appspot.com/7039049/diff/1/docs/process.rst#newcode183
docs/process.rst:183: - If you are using a pre-existing branch, make
sure it is up-to-date::
On 2013/01/03 12:06:30, teknico wrote:
> No need for double colons in the two lines above.

Done.

https://codereview.appspot.com/7039049/

Revision history for this message
Francesco Banconi (frankban) wrote :
Revision history for this message
Francesco Banconi (frankban) wrote :

Thanks Benji.

https://codereview.appspot.com/7039049/diff/4002/docs/process.rst
File docs/process.rst (right):

https://codereview.appspot.com/7039049/diff/4002/docs/process.rst#newcode123
docs/process.rst:123: ``FINAL=1 make test-debug``.
On 2013/01/03 14:01:52, benji wrote:
> Do you really need "FINAL=1" for tests? The last time I looked at the
Makefile
> it didn't change the way tests worked.

As discussed on IRC, I'll leave this workaround waiting for
https://bugs.launchpad.net/juju-gui/+bug/1095663 to be fixed.

https://codereview.appspot.com/7039049/diff/4002/docs/process.rst#newcode128
docs/process.rst:128: - In the ``build-prod`` directory, under the
uncompressed one, start a server:
On 2013/01/03 14:01:52, benji wrote:
> I can't parse this. The "under the uncompressed one" part is what
throws me
> off. I /think/ this is what it should say: "While still in the
directory where
> you extracted the tar file, change to the build-prod directory and
start a
> server:..."

> That might be better as two steps: one to change to the directory and
one to
> start the server.

Done.

https://codereview.appspot.com/7039049/diff/4002/docs/process.rst#newcode196
docs/process.rst:196: - In the ``build-prod`` directory, start a server:
On 2013/01/03 14:01:52, benji wrote:
> Should this line should be identical to the parallel step in the
stable release
> instructions (line 128)?

You are right, done.

https://codereview.appspot.com/7039049/

298. By Francesco Banconi

Changes per review.

Revision history for this message
Francesco Banconi (frankban) wrote :

*** Submitted:

Fix release process documentation

And other minor changes, like text formatting fixes
and trailing spaces removal.

R=teknico, benji
CC=
https://codereview.appspot.com/7039049

https://codereview.appspot.com/7039049/

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'docs/process.rst'
--- docs/process.rst 2012-12-21 02:16:06 +0000
+++ docs/process.rst 2013-01-03 14:55:26 +0000
@@ -106,8 +106,8 @@
106=====================================106=====================================
107107
108- Get a clean branch of the trunk:: ``bzr branch lp:juju-gui``.108- Get a clean branch of the trunk:: ``bzr branch lp:juju-gui``.
109- If you are using a pre-existing branch, make sure it is up-to-date:: ``bzr109- If you are using a pre-existing branch, make sure it is up-to-date:
110 pull``.110 ``bzr pull``.
111- Verify that the top-most version in CHANGES.yaml specifies the expected111- Verify that the top-most version in CHANGES.yaml specifies the expected
112 version string. It should be bigger than the most recent version found on112 version string. It should be bigger than the most recent version found on
113 https://launchpad.net/juju-gui/stable . If the most recent version string113 https://launchpad.net/juju-gui/stable . If the most recent version string
@@ -115,24 +115,25 @@
115115
116 * Decide what the next version number should be (see http://semver.org/) and116 * Decide what the next version number should be (see http://semver.org/) and
117 change "unreleased" to that value.117 change "unreleased" to that value.
118 * Commit to the branch with this checkin message: ``bzr commit -m 'Set118 * Commit to the branch with this checkin message:
119 version for release.'``119 ``bzr commit -m 'Set version for release.'``
120 * Push the branch directly to the parent (``bzr push`` should work).120 * Push the branch directly to the parent (``bzr push :parent`` should work).
121121
122- Run the tests and verify they pass: ``make test-prod`` and then122- Run the tests and verify they pass: ``FINAL=1 make test-prod`` and then
123 ``make test-debug``.123 ``FINAL=1 make test-debug``.
124- Create the tarball: ``FINAL=1 make distfile``. The process will end by124- Create the tarball: ``FINAL=1 make distfile``. The process will end by
125 reporting the name of the tarball it made.125 reporting the name of the tarball it made.
126- In an empty temporary directory somewhere else on your system, expand the126- In an empty temporary directory somewhere else on your system, expand the
127 tarball: ``tar xvzf PATH_TO_TARBALL``127 tarball: ``tar xvzf PATH_TO_TARBALL``
128- In that directory, start a server: ``python -m SimpleHTTPServer 8888``128- While still in the directory where you extracted the tar file, change to the
129 build-prod directory and start a server: ``python -m SimpleHTTPServer 8888``.
129- In Chrome and Firefox, QA the application. At the very least, load the app,130- In Chrome and Firefox, QA the application. At the very least, load the app,
130 open the charm panel, go to an inner page, and make sure there are no 404s131 open the charm panel, go to an inner page, and make sure there are no 404s
131 or Javascript errors in the console. We want a real QA script for the132 or Javascript errors in the console. We want a real QA script for the
132 future.133 future.
133- For now, we will assume you would like to verify the release on the134- For now, we will assume you would like to verify the release on the
134 Launchpad staging server. As we become more confident with this process,135 Launchpad staging server. As we become more confident with this process,
135 this step may become unnecessary. In the checkout, run ``FINAL=1 make136 this step may become unnecessary. In the branch, run ``FINAL=1 make
136 dist``. This will step you through signing the tarball, connecting137 dist``. This will step you through signing the tarball, connecting
137 to Launchpad, and uploading the release.138 to Launchpad, and uploading the release.
138139
@@ -151,8 +152,9 @@
151 SimpleHTTPServer 8888``, and do a quick double-check in the browser that it152 SimpleHTTPServer 8888``, and do a quick double-check in the browser that it
152 is what you expect. Looking at juju-ui/version.js should also show you the153 is what you expect. Looking at juju-ui/version.js should also show you the
153 version you expect.154 version you expect.
154- This is a final release. Consider asking others to verify the package on staging.155- This is a final release. Consider asking others to verify the package on
155- Now it is time for the actual, real release. Head back to your checkout and156 staging.
157- Now it is time for the actual, real release. Head back to your branch and
156 run ``FINAL=1 PROD=1 make dist``. The computer will again walk you158 run ``FINAL=1 PROD=1 make dist``. The computer will again walk you
157 through the process.159 through the process.
158160
@@ -165,32 +167,41 @@
165- Go to https://launchpad.net/juju-gui/stable and verify that you see167- Go to https://launchpad.net/juju-gui/stable and verify that you see
166 a new release and a new download file.168 a new release and a new download file.
167169
170- Set the version back to ``unreleased`` by doing the following.
171
172 * Restore ``- unreleased:`` as most recent version string in CHANGES.yaml.
173 * Commit to the branch with this checkin message:
174 ``bzr commit -m 'Set version back to unreleased.'``
175 * Push the branch directly to the parent (``bzr push :parent`` should work).
176
168You are done!177You are done!
169178
170Checklist for Making a Developer Release179Checklist for Making a Developer Release
171========================================180========================================
172181
173- Get a clean branch of the trunk:: ``bzr branch lp:juju-gui``.182- Get a clean branch of the trunk:: ``bzr branch lp:juju-gui``.
174- If you are using a pre-existing branch, make sure it is up-to-date::183- If you are using a pre-existing branch, make sure it is up-to-date:
175 ``bzr pull``.184 ``bzr pull``.
176- Verify that the top-most version in CHANGES.yaml is "unreleased."185- Verify that the top-most version in CHANGES.yaml is "unreleased."
177- Run ``bzr revno``. The revno should be bigger than the most recent release found on186- Run ``bzr revno``. The revno should be bigger than the most recent release
178 `Launchpad <https://launchpad.net/juju-gui/trunk>`_.187 found on `Launchpad <https://launchpad.net/juju-gui/trunk>`_.
179- Run the tests and verify they pass: ``make test``.188- Run the tests and verify they pass: ``make test-prod`` and then
189 ``make test-debug``.
180- Create the tarball: ``make distfile``. It will end by reporting the name of190- Create the tarball: ``make distfile``. It will end by reporting the name of
181 the tarball it made.191 the tarball it made.
182- In an empty temporary directory somewhere else on your system, expand the192- In an empty temporary directory somewhere else on your system, expand the
183 tarball: ``tar xvzf PATH_TO_TARBALL``.193 tarball: ``tar xvzf PATH_TO_TARBALL``.
184- Looking at juju-ui/version.js should show you a version string that combines194- Looking at ``build-prod/juju-ui/version.js`` should show you a version string
185 the value in the checkout's CHANGES.yaml with the checkout's revno.195 that combines the value in the branch's CHANGES.yaml with the branch's revno.
186- In that directory, start a server: ``python -m SimpleHTTPServer 8888``196- While still in the directory where you extracted the tar file, change to the
197 build-prod directory and start a server: ``python -m SimpleHTTPServer 8888``.
187- In Chrome and Firefox, QA the application. At the very least, load the app,198- In Chrome and Firefox, QA the application. At the very least, load the app,
188 open the charm panel, go to an inner page, and make sure there are no 404s199 open the charm panel, go to an inner page, and make sure there are no 404s
189 or Javascript errors in the console. We want a real QA script for the200 or Javascript errors in the console. We want a real QA script for the
190 future.201 future.
191- For now, we will assume you would like to verify the release on the202- For now, we will assume you would like to verify the release on the
192 Launchpad staging server. As we become more confident with this process,203 Launchpad staging server. As we become more confident with this process,
193 this step may become unnecessary. In the checkout, run ``make dist``.204 this step may become unnecessary. In the branch, run ``make dist``.
194 This will step you through signing the tarball, connecting to205 This will step you through signing the tarball, connecting to
195 Launchpad, and uploading the release.206 Launchpad, and uploading the release.
196207
@@ -209,7 +220,7 @@
209 SimpleHTTPServer 8888``, and do a quick double-check in the browser that it220 SimpleHTTPServer 8888``, and do a quick double-check in the browser that it
210 is what you expect. Looking at juju-ui/version.js should also show you the221 is what you expect. Looking at juju-ui/version.js should also show you the
211 version you expect, as seen in the similar earlier step above.222 version you expect, as seen in the similar earlier step above.
212- Now it is time for the actual, real release. Head back to your checkout and223- Now it is time for the actual, real release. Head back to your branch and
213 run ``PROD=1 make dist``. The computer will again walk you through the224 run ``PROD=1 make dist``. The computer will again walk you through the
214 process.225 process.
215226
@@ -228,14 +239,14 @@
228======================================239======================================
229240
230Within a checkout, a lightweight checkout, or a branch, you may run make as241Within a checkout, a lightweight checkout, or a branch, you may run make as
231``NO_BZR=1 make [target]`` in order to prevent the Makefile from running 242``NO_BZR=1 make [target]`` in order to prevent the Makefile from running
232any bzr commands, all of which access the parent branch over the network.243any bzr commands, all of which access the parent branch over the network.
233Where bzr may have provided information such as the revno, sensible defaults244Where bzr may have provided information such as the revno, sensible defaults
234are used instead. As many of these bzr commands are used to populate245are used instead. As many of these bzr commands are used to populate
235variables regardless of the target, defining NO_BZR will have an effect on246variables regardless of the target, defining NO_BZR will have an effect on
236all targets, except dist, which will refuse to complete.247all targets, except dist, which will refuse to complete.
237248
238- Note that this allows one to run any make target from the working copy, 249- Note that this allows one to run any make target from the working copy,
239 even if it is a lightweight checkout, by skipping steps that involve250 even if it is a lightweight checkout, by skipping steps that involve
240 network access through bzr. Because of this, make will assume that251 network access through bzr. Because of this, make will assume that
241 the revno is 0 and that the branch is clean and up to date without252 the revno is 0 and that the branch is clean and up to date without
@@ -279,9 +290,9 @@
279290
280 - Encourage but do not require each person to mention what card they plan to291 - Encourage but do not require each person to mention what card they plan to
281 work on for the next 24 hours, if that has not already been discussed.292 work on for the next 24 hours, if that has not already been discussed.
282 - Ask the person to mention any items that everyone should know: remind people293 - Ask the person to mention any items that everyone should know: remind
283 of reduced availability, request help such as code reviews or pair requests,294 people of reduced availability, request help such as code reviews or pair
284 etc.295 requests, etc.
285296
286Checklist for Running a Weekly Retrospective297Checklist for Running a Weekly Retrospective
287============================================298============================================

Subscribers

People subscribed via source and target branches