odpi/egeria

[RELEASE] Release 4.3

lpalashevski opened this issue · 1 comments

Work Plan

Create release x.y :
Prior to the release work

  • Slack post advising of upcoming release & linking to issue
  • Advance warning in developer/community call
  • Final agreement to start branch in team call & identification of outstanding issues
  • Agree required updates/versions for additional repos including egeria-ui, egeria-reactui, connectors etc

Branching & Correcting versions

  • Create branch (egeria-release-x.y)
  • Reassign any issues not being worked on to the next release
  • Update version for main (ie x.y-SNAPSHOT > x.y+1-SNAPSHOT)
  • Update version for release branch (ie x.y-SNAPSHOT -> x.y)

Final updates to the release

  • Ensure any remaining fixes are merged into branch (and vice-versa to main)

Pre-release security check

  • Check security scans (ie owasp dependency check)

Generate a release image for testing

  • Start Release pipeline manually to generate container image and stage artifacts on maven central

Updating the Helm Charts (egeria-charts repo)

  • checker correct container images are on docker.io & quay.io (these are built by the 'merge' build of a release)
  • update image versions for helm charts egeria-charts repo (using -prerelease for chart version)
    • check/update the strimzi chart versions
    • check/update supported kafka version used for the strimzi CR in each chart
    • check/update the current jupyter lab version & generate a new docker image in egeria-jupyter
    • update the jupyter lab image version in the charts

Final tests

  • Check swagger doc renders (no regressions)
  • Verify odpi-egeria-lab chart (pods active/ready)
  • Verify egeria-base chart (pods active/ready)
  • Check notebooks (config, start, data catalog at a minimum)
  • Check Egeria UI (only possible to check it runs and run UI lab)
  • Check React UI (rex, tex, glossary author). Some of the steps descibed here
  • Check and validate CTS results
    • CTS using in-memory
    • CTS using graph
    • CTS using xtdb

Final Docs

Final build and publish

  • Check if the Release pipeline rlease artifacts are shown in staging repo in OSS Repository Manager
  • Close staging repo & validate artifacts ok (number, structure, validations) on oss.sonatype.org
  • Check 'release' repo on oss.sonatype.org has artifacts
  • Release the repo (takes time for the operation to complete and for the arifacts to be visible in maven central repository)
  • Create final github release (add link to egeria docs)
  • Update final versions of egeria-charts to release ie x.y
  • Publish that release is now shipped via slack #egeria-announce
  • Post on egeria-annouce mailing list
  • Additional posts to social media
  • Communicate to other repo owners ie for connectors so that they can be rebuilt/shipped as needed (Egeria Dev Projects etc.)

Get Ready for next release

  • Open Release Issue for next release

Release ready, closing the issue
New release issue #7864