Development/Beta Cycle

From MusicBrainz Wiki

1. Write code

2. Put code on non-live test server

  • If possible, use
  • If not possible (ie, there are schema changes) use an mbsandbox

3. Does code need reviewing?

  • Yes: Continue.
  • No: Go to step 6.

4. Has code passed code review?

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

5. Is next release < 7 days?

  • Yes: Wait. Go back to step 5.
  • No: Continue.

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

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

7. Ship code to beta

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

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

9. 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
  • No: Go fix something else.