Difference between revisions of "Development/Beta Cycle"

From MusicBrainz Wiki
Line 1: Line 1:
 
=== 1. Write code ===
 
=== 1. Write code ===
=== 2. Put code on non-live test server ===
+
=== 2. Does code need reviewing? ===
* If possible, use test.musicbrainz.org
+
* Yes: Create code review. Put on a non-live test server.
* If not possible (ie, there are schema changes) use an mbsandbox
+
** Usually test.musicbrainz.org, a mbsandbox in the case of complicated schema changes. Await juicy shipits.
=== 3. Does code need reviewing? ===
+
* No: Go to step 5.
 +
=== 3. Has code passed code review? ===
 
* Yes: Continue.
 
* Yes: Continue.
* No: Go to step 6.
+
* No: Fix bugs. Go back to step 1.
=== 4. Has code passed code review? ===
+
=== 4. Is next release < 7 days? ===
* Yes: Continue.
+
* Yes: Wait until there are >= 7 days.
* No: Fix bugs. Go back to step 4.
 
=== 5. Is next release < 7 days? ===
 
* Yes: Wait. Go back to step 5.
 
 
* No: Continue.
 
* No: Continue.
=== 6. Is this a change that can go live immediately? ===
+
=== 5. Is this a change that can go live immediately? ===
* Yes: Continue.
+
* Yes: Merge to beta.
 
* No: Figure out how to handle schema changes and the like.
 
* No: Figure out how to handle schema changes and the like.
=== 7. Ship code to beta ===
+
=== 6. Are there any open tickets for beta.mb? ===
=== 8. Are there any open tickets for beta.mb? ===
+
* Yes: Remove the broken branches from beta and reopen the ticket. Go back to step 1.
* Yes: Remove the broken branches from beta and reopen the ticket. Go back to step 3.
 
 
* No: Continue.
 
* No: Continue.
=== 9. Is it time to release? ===
+
=== 7. Is it time to release? ===
* Yes: Merge current beta testing branches to master (these will have no open bugs). Merge master to production. Reset beta and next to master. Release
+
* Yes: Merge current individual beta testing branches to master (these will have no open bugs). Merge master to production. Reset beta and next to master. Release
 
* No: Go fix something else.
 
* No: Go fix something else.

Revision as of 13:42, 10 June 2012

1. Write code

2. Does code need reviewing?

  • Yes: Create code review. Put on a non-live test server.
    • Usually test.musicbrainz.org, a mbsandbox in the case of complicated schema changes. Await juicy shipits.
  • No: Go to step 5.

3. Has code passed code review?

  • Yes: Continue.
  • No: Fix bugs. Go back to step 1.

4. Is next release < 7 days?

  • Yes: Wait until there are >= 7 days.
  • No: Continue.

5. Is this a change that can go live immediately?

  • Yes: Merge to beta.
  • No: Figure out how to handle schema changes and the like.

6. Are there any open tickets for beta.mb?

  • Yes: Remove the broken branches from beta and reopen the ticket. Go back to step 1.
  • No: Continue.

7. Is it time to release?

  • Yes: Merge current individual beta testing branches to master (these will have no open bugs). Merge master to production. Reset beta and next to master. Release
  • No: Go fix something else.