Moodle icon indicating copy to clipboard operation
Moodle copied to clipboard

Document release process

Open SorraTheOrc opened this issue 7 years ago • 3 comments

We need to document the process for releasing from this repo into the Azure Quickstarts repo. Here's an initial set of ideas:

We aim to release every 2nd and 4th Wednesday

Version numbering

Version numbers are x.m.i, where x = major version number, m = month number, i = iteration number (e.g. 1.1.2 is the version from the 4th Wednesday of the month). If interim releases are needed (e.g. security patch) they will be indicated with an addition digit, e.g. x.m.i.y, where y is an incremental number

Release Preparation (1st and 3rd Wednesday)

  1. validate all issues with milestone of next release. Move out issues that are going to slip.
  2. Merge dev branch into releasecandidate branch
  3. Increment version numbers in dev branch
  4. test and validate releasecandidate branch

Release Process (2nd and 4th Wednesday)

  1. Update URLs for deploy button and script locations
  2. Update version numbers
  3. cp code to azure/quickstarts fork
  4. issue pull request
  5. validate against best practice
  6. merge into quickstarts

SorraTheOrc avatar Jan 24 '18 17:01 SorraTheOrc

@hosungsmsft can you please review this proposal

SorraTheOrc avatar Jan 24 '18 17:01 SorraTheOrc

Given the long deployment time of the template, I'm not sure how the validations will work effectively and if the release period is a bit too frequent in that sense? Let's sync up offline on the validation methods.

hosungsmsft avatar Jan 24 '18 18:01 hosungsmsft

I'd much rather we do things that affect all users in the public space than offline (that's not to say we can't discuss offline and bring proposals here). The goal is to have the maximum input from potential partners. For example, my answer below provides an ideal opportunity for others to help us out...

The goal of fast release cycles is:

  1. move as fast as users need us to
  2. forcing function to automate as much as possible

I agree that long deployment times make manual testing difficult, the answer is therefore to set up a CI solution that is continually testing dev and releasecandidate branches (by the way, this is something I'm already working on ;-)

SorraTheOrc avatar Jan 24 '18 18:01 SorraTheOrc