mNo edit summary |
|||
(4 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
*<font color="blue">Product lead: aakashd</font> | *<font color="blue">Product lead: aakashd</font> | ||
*<font color="brown">Dev lead: | *<font color="brown">Dev lead: davedash</font> | ||
*<font color="orange">QA lead: | *<font color="orange">QA lead: mbrandt</font> | ||
*<font color="green">IT lead: push bug assignee</font> | *<font color="green">IT lead: push bug assignee</font> | ||
Line 13: | Line 13: | ||
#Triage of blocking/approval requests as needed - <font color="blue">Product</font>/<font color="brown">Dev Lead</font> | #Triage of blocking/approval requests as needed - <font color="blue">Product</font>/<font color="brown">Dev Lead</font> | ||
#Update staging data from prod if necessary. | #Update staging data from prod if necessary. | ||
#*Until this is automated, make sure to change both instances of ''input.moz.com'' under Django admin -> Sites back to ''input.'''stage'''.moz.com''. Otherwise the mobile site won't be served. | #*Until this is automated, make sure to change both instances of ''input.moz.com'' under Django admin -> Sites back to ''input.'''stage'''.moz.com''. Otherwise the mobile site won't be served. | ||
#Are builds passing in Jenkins - <font color="green">QA Lead</font>/<font color="brown">Dev Lead</font> | |||
== Get Set == | == Get Set == | ||
Line 19: | Line 20: | ||
#Declare a string freeze - <font color="brown">Dev lead</font> | #Declare a string freeze - <font color="brown">Dev lead</font> | ||
#*Notify localizers. | #*Notify localizers. | ||
#File push bug in mozilla.org/Server Operations - Web Content Push - <font color=" | #File push bug in mozilla.org/Server Operations - Web Content Push - <font color="brown">Dev lead</font> | ||
#*Offer a date and time to IT - <font color=" | #*Offer a date and time to IT - <font color="brown">Dev lead</font> | ||
#Enact a code freeze - <font color="brown">Dev lead</font> | #Enact a code freeze - <font color="brown">Dev lead</font> | ||
#*Email input@mo with notification | #*Email input@mo with notification | ||
Line 37: | Line 38: | ||
== Go! == | == Go! == | ||
# Tag the release by updating the prod branch <font color="brown">Dev lead</font> | |||
#* <code>git checkout last_known_good && git reset --hard prod && git push origin HEAD</code> | |||
#* <code>git checkout prod && git reset --hard origin/master && git push origin HEAD</code> | |||
#* For version 3.3.3, for example:<br/><code>git tag -m 'version 3.3.3 as pushed to prod' 3.3.3 HEAD</code> | |||
#* <code>git push origin --tags</code> | |||
#Push to production at assigned time - <font color="green">IT lead</font> | #Push to production at assigned time - <font color="green">IT lead</font> | ||
#*Update sphinx (via Puppet) | #*Update sphinx (via Puppet) |
Latest revision as of 22:07, 6 July 2011
Team
- Product lead: aakashd
- Dev lead: davedash
- QA lead: mbrandt
- IT lead: push bug assignee
Get Ready
- Decision on release date and features - Product/Dev Lead
- Update Firefox/Input page - Product lead
- Email input@mo with proposed schedule and version number - Product lead
- Triage of blocking/approval requests as needed - Product/Dev Lead
- Update staging data from prod if necessary.
- Until this is automated, make sure to change both instances of input.moz.com under Django admin -> Sites back to input.stage.moz.com. Otherwise the mobile site won't be served.
- Are builds passing in Jenkins - QA Lead/Dev Lead
Get Set
- Declare a string freeze - Dev lead
- Notify localizers.
- File push bug in mozilla.org/Server Operations - Web Content Push - Dev lead
- Offer a date and time to IT - Dev lead
- Enact a code freeze - Dev lead
- Email input@mo with notification
- Staging verification - QA Lead
- QA performs release testing
- When signed off, email input@mo with notification
- Update push bug with QA sign off
- Create release notes blog post - Product Lead
- Confirm release notes with Dev lead, QA lead, others as appropriate
- Determine a Go or no Go - Product lead
- If No Go, email input@mo with a formal "stop" notification and a second "go" notification when the process is started again
- If Go, mention on push bug and input@mo 8 hours ahead of time.
- Make sure an IT lead is assigned to the bug and there is a push time.
- Tag the branch for release with the appropriate version - Dev lead
Go!
- Tag the release by updating the prod branch Dev lead
git checkout last_known_good && git reset --hard prod && git push origin HEAD
git checkout prod && git reset --hard origin/master && git push origin HEAD
- For version 3.3.3, for example:
git tag -m 'version 3.3.3 as pushed to prod' 3.3.3 HEAD
git push origin --tags
- Push to production at assigned time - IT lead
- Update sphinx (via Puppet)
- Run /root/bin/input_update.sh
- Update update_product_details script
- Run Crons mentioned by Dev lead
- Clear out the cache
- QA verifies production changes - QA Lead
- Send out the blogpost - Product lead