Skip to content

Release Packaging Checklist

johnhenley edited this page Jul 3, 2024 · 6 revisions

Code tree preparation

  • Ensure all outstanding pull requests intended for release have been merged to dev branch.

Update release notes

  • Note: GitHub has an option to do this during "draft new release", but Will uses a different process, so ...
    • Query the milestone to show all Issues and PRs.
    • Update the release notes to include all Issues in the milestone.
    • Update the release notes to include any PRs that didn't have an Issue.
    • Prioritize the order of the release notes to have the most important updates at the top of each respective section.
    • Create issue and pull request for release notes.
    • Merge release notes to dev.

Packaging

  • First, ensure you're on the dev or master branch, based on the type of release you'll be creating
  • Ensure the branch is updated from the appropriate Git remote
  • Build the solution in debug mode.
  • If successful, now build the solution in release mode.
  • Find the package in the website folder one level up from the solution.
    • Look in the ~/website/Install/Module/ folder for the installation and symbols packages.
  • Test the installation package using EVS.
  • Verify the package can install and upgrade.
  • Move forward with the next respective distribution steps.

Creating a new RC release

  • From dev branch, draft a new release
    • Copy release notes from the project to the release in GitHub
    • Select Set as a pre-release option
    • Select Create a discussion for this release
    • Update the discussion content body to make the release download more obvious.

Creating a new GA release

  • Copy release notes from the project to the release in GitHub
  • Merge dev and master branches
  • From master branch, draft a new release
    • Select Set as latest release

Verify manifests

  • Versions correct for Forums module, Forums Viewer and What's Next module
  • SQL script present and versions correct
  • Cleanup script (if applicable for given version) in manifest and present in solution
  • Create issue and pull request for manifest changes
  • Merge manifest updates to dev

Update master branch

  • Sync dev branch to master branch
  • Sync local repo copy of master

Local build in Visual Studio

  • Build first for debug (to create .pdb files)
  • Build for release (to build package file)

Verify Extension

Post release to GitHub.com

  • Go back to draft release
  • Add binaries
  • Publish release
  • Close milestone

Announce on Awareness Channels

  • GitHub discussions
  • dnncommunity.org Announcements forum (or blog post?)
Clone this wiki locally