Plan steps to roll the 3.0 Beta release

Description

The goal of this ticket is to write down the plan for releasing 3.0 Beta.

We believe it includes the following components:

  • Build and deploy 3.0 Beta to a public, visible URL (uat.openlmis.org) using CI/CD. That URL needs to stay the same and the system there must not break while stakeholders are test driving it. DNS changes are still needed for that (see ).

  • Tag the 3.0 Beta release in GitHub. We do not need a release branch, and we do not need a "code freeze". Josh or Brandon will add the 3.0 Beta tag in Git onto each service/repo, and everyone can keep developing on master after that as usual. If there are any later fixes we need to apply to the 3.0 Beta site (uat.openlmis.org), we would have to create a release branch or issue a new release (eg, 3.0 Beta R1) to make additional, specific fixes to beta.

    • We need the Jenkins builds to tag the beta docker images before publishing them to Docker Hub. We need to tag what we publish. OR we could manually publish each image to Docker Hub this time around. This is OLMIS-1105.

    • We need to set up Jenkins or openlmis-deployment scripts to be able to specifically deploy 3.0 Beta code to the UAT URL (uat.openlmis.org). This is OLMIS-1106.

  • Update CI/CD setup to keep the UAT environment (uat.openlmis.org) at the 3.0 Beta tag during the period that people are test driving the beta. We expect about 2 weeks (late October thru mid-November). After that point, we may decide to put later versions of OpenLMIS onto the UAT environment (possibly for showcases as we push towards 3.0 release).

  • Write and publish release notes. Mary Jo is reviewing what type of release notes we want; lists of specific tickets are not needed. The release announcement can be based on the 3.0 beta scope document; Mary Jo will work on the top half; Brandon worked on the bottom half with tech stuff; then we route it to Jake for final review/editing before release.

  • Demo data: the SolDevelo team already has a new set of demo data for v3. Mary Jo will review and revise it for the beta ().

    • For 3.0 Beta, we will manually run a command-line script to load the demo data into the UAT environment. In the future, we ultimately want Jenkins to load the demo data into the UAT environment. We may have Jenkins run that manual script based on us pushing a button to trigger that.

  • Josh also suggests we get the environment-specific .env files in place for the beta release (). The most important part is the mail server (for security/privacy), and otherwise the credentials are not super-secret at this time.

Acceptance Criteria

  • A clear write-up inside this ticket explaining what it means for the team to release/publish the 3.0 Beta.

    • This can exclude the communication tasks (like Mary Jo sending an email to the Product Committee), and it can exclude the software features. JIRA tags identity which features still need to be done before we release.

    • But this write-up should include all the other steps for actually rolling a release or publishing the 3.0 Beta that Teams ILL/AYIC/TOP need to do.

    • Mary Jo, Josh and ultimately Jake should approve this write-up to consider this ticket done.

  • Publish this write-up to the Wiki so it can be a starting point when it comes time to release 3.0, 3.1, 3.x.

  • Tickets created for each of these steps that still needs to happen, and all tagged FixVersion=3.0Beta.

QAlity Plus - Test Management

Checklists

Activity

Josh Zamor 
October 7, 2016 at 8:40 PM

Agreed. Just added a comment to OLMIS-1106. That and look good. Looks good to mark as done.

Brandon Bowersox-Johnson 
October 7, 2016 at 8:34 PM

I just read it over and it looks good to me. I see what you mean about this being pretty cumbersome right now. But I think we've achieved the acceptance criteria for this ticket now (meaning I think we can move it to Done if you agree).

Josh Zamor 
October 7, 2016 at 8:28 PM

I updated the roll a release doc with the manual process and also updated the steps that we'd use in case those two tickets are completed (for a more automated process). It's pretty cumbersome, only myself and Pengfei could likely do the manual process atm if it came down to it I'd guess.

Brandon Bowersox-Johnson 
October 7, 2016 at 6:05 PM

Okay, sounds good.

Josh Zamor 
October 7, 2016 at 6:02 PM

Makes sense. I think we need to update the doc then to reflect the manual process (no Jenkins involvement). Sound right? I can take a cut at this today.

Done
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Sprint

Fix versions

Priority

Time Assistant

Created September 28, 2016 at 11:32 PM
Updated October 7, 2016 at 8:52 PM
Resolved October 7, 2016 at 8:52 PM