Making Release Announcements

Procedure

  1. Finalise release page

    1. Check versions (including links) in

      1. summary block

      2. module detail sections

    2. Confirm Jira tickets have correct Fix Version to match release

      1. remove from those tickets where changes have not been mainlined

      2. add to those tickets where changes have been mainlined

    3. Add line items for changes that are not covered by Jira tickets in module detail sections

    4. Update Deployment sections, including

      1. Summary

      2. Change Categories (consider issue release labels)

      3. Instructions

      4. Verification

    5. Remove PENDING from page title when release is complete

    6. Update page status from “Subject to Change” to “Current and Stable”

  2. Set up release announcement

    1. Update appropriate release template with release specifics

      1. version numbers

      2. link to release page

      3. callout specific deployment instructions

      4. expected environment deployment schedule

      5. specific notes for PO to follow up

    2. Post in #dcb-ops

      1. Update release page with link to #dcb-ops thread

    3. Email to Sobha Duvvuri

      1. Subject: NEEDS ATTENTION: [Release Name]
        eg, NEEDS ATTENTION: DCB MOBIUS 1.059

      2. Copy announcement into body

      3. Add link to Slack thread to announcement phrase “Can you post back in [Slack thread] with …”

  3. When release has been deployed, add UTC timestamp of when changes are confirmed to have been deployed to production environment.

 

Template

Full Release

This is used for a scheduled release .

  • There is an increment to the DCB product version.

  • There is an accompanying release page.

@FSE Contact: New versions to deploy

  • Summary of key changes. Link to release page.

  • FSE action needed

  • Target environments and schedule

Follow on / deployment confirmation action.

Notes for PO.

Example

 DCB MOBIUS 1.061 Release

@Sobha This week's release includes a new version of dcb-admin (v1.20.1, deployed) and dcb-service (v6.23.0).

  • Changes include supplier-side cancellation, support for per-library Sierra PIN configuration and Polaris multi-volume response handling. More details here.

  • You will only need to deploy executables for dcb-service (v6.23.0).

  • This is ready to go to all environments for frontend and backend services

    • staging: 24 July

    • integration: 24 July

    • production: 25 July 4am-6am Eastern

Can you post back in thread with the timestamp for when deployment is completed on staging (tagging @Tim Auger) and production please? TY  

 

 

Interim Module Release (no separate DCB version or release page)

This is used for an interim release of a module, including when a critical targeted release needs to be deployed out of normal maintenance windows.

  • There is no increment to the DCB product version.

  • There is no separate release page.

@FSE Contact: New versions to deploy

  • Summary of key changes.

  • FSE action needed

  • Target environments and schedule

Follow on / deployment confirmation action.

Notes for PO.

 

Example - Out of Release Schedule

 dcb-service v6.22.1 Release

@Sobha

  • We have an interim update of dcb-service to address a request failure scenario that is currently spiking for Polaris libraries.

  • You will only need to deploy executables for dcb-service (v6.22.1).

  • This is ready to go to all environments, prioritising the back-end service on production.

Can you post back in thread with the timestamp for when deployment is completed on staging (tagging @Tim Auger) and production please? TY

 

Example - Out of Maintenance Window

 dcb-service v6.22.2 Release

@Sobha

  • This implements a fix for a problem preventing Sierra libraries from supplying.

  • You will only need to deploy executables for dcb-service (v6.22.2).

  • This is ready to go to all environments, prioritising back-end and front-end service on production as a critical out-of-maintenance-window deployment.

  • All other deployments can take place in normal maintenance windows.

Can you post back in thread with the timestamp for when deployment is completed on staging (tagging @Tim Auger) and production please? TY

 

 

Release Labels

Some Jira issues will include labels that indicate specific action is needed to correctly deploy changes. These should be reflected in Release Notes by

  • a Required or Recommended flag in the appropriate release change category

  • corresponding Instructions and Verification notes

Label

Change Category

Notes

Label

Change Category

Notes

dcb_release_reset

Complete reset

Unlikely for a functional story, but likely for an implementation or dcb_devops task.

Environment and issue description should elaborate details of which environment needs a reset

dcb_release_config_env

Environment configuration

Environment variables need to set or changed.

Environment and issue description should elaborate details of which environment needs a reset

dcb_release_config_host

Host LMS configuration or setup

Changes required to one or more host lms configurations.

dcb_release_config_service

dcb_release_config_keycloak

Service configuration

Changes required to application configurations, eg, dcb-service or keycloak

dcb_release_ingest

Ingest

Requires catalog ingest (and corresponding indexing)

dcb_release_reindex

Index

Requires reindex of existing catalog (without additional ingest)

dcb_release_config_library

Library configuration

Changes required to one or more agency or library configuration data

 

 

 

Operated as a Community Resource by the Open Library Foundation