Skip to content
Cyrus Harrison edited this page Dec 21, 2021 · 33 revisions

This page lists the steps to publish a new Conduit release.

Pin Spack Fork

  • Create branch in spack fork to pin for the release (ex: conduit/releases/v0.8.0 )
  • Update .uberenv_config.json to point to this branch. Make sure this change is committed.

Update the Conduit Version in the Main CMakeLists.txt file

  • (src/CMakeLists.txt)

Update Docs

  • Update CHANGELOG, remember to update the github release range links at the bottom
  • Make sure to also change the version number in the Sphinx conf.py
  • Use the helper script to convert changelog release into github release notes, sphinx, and the llnl news entry.
  • Create release notes entry for the releases docs page

Close the Release Milestone on Github

  • Make sure there are no outstanding issues and explicitly close the milestone

Publish the Release

  • Start a release on github, name the release X.Y.Z (ex: 0.2.1)

  • Add release notes (or shortened variant) to the release

    • Recall Sphinx and Github use different markup, make sure to preview the release notes
  • Tag develop as vX.Y.Z (ex: v0.2.1)

  • Create source release tarball that includes BLT using the git_archive_all script:

    • python scripts/git_archive_all.py --prefix conduit-v0.3.1 conduit-v0.3.1-src-with-blt.tar.gz
    • ( or python scripts/gen_release_tarball.py --version 0.7.0)
  • Upload release tarball to github

Update the Conduit Spack Package

  • Download the release source conduit-X.Y.Z-src-with-blt.tar.gz from github.
  • Calc the sha256 checksum for the release tarball:
    • shasum -a 256 < conduit-X.Y.Z-src-with-blt.tar.gz
  • Add the version and checksum as a new entry to the conduit spack package.py
  • Init a pull request to the spack develop branch to merge the conduit package.py update

Create a News Item for software.llnl.gov

  • use a fork of LLNL/llnl.github.io to create a news item
  • Create a new post for https://github.com/LLNL/llnl.github.io/tree/master/_posts
  • Again, Sphinx and Github use different markup, see other posts for examples of the proper style
  • Init a pull request to llnl.github.io master to merge and publish the post

Post Release

  • Change .uberenv_config.json back to develop branch