Skip to content

Making a release

Thomas Jay Rush edited this page Jun 5, 2024 · 18 revisions

Copy this code of this page into an issue to get checkboxes.

Prepare

  • Review and close as many open bugs as possible
  • Update VERSION file
  • Consider upgrading GoLang version (search for Go Version)
  • Run ../scripts/go-work-sync.sh and ../scripts/go-mod-tidy.sh
  • Rerun all tests locally until they pass
  • Push to a PR from develop (use --force) until it passes remote tests
  • update CHANGES.md and (if needed) MIGRATION.md (choose a Short Name)
  • review TODO list items

Core

  • Merge the PR into the develop branch
  • Create a PR from develop to master - wait until tests pass
  • Merge develop into master
  • Tag the new master (see "Tagging" below)
  • Check GitHub to see that develop is up to date with master
  • Remove any un-needed branches

Make a release (use Release Name - Short Name for title)

  • Choose a release name (see Milestone / Release Names)
  • Notes should include thank you to anyone who made a PR
  • Notes should include a list of closed and opened bugs

Tagging

    git checkout master && \
        git pull && \
        git tag v0.VERSION.0-beta && \
        git push --tags && \
        git checkout develop && \
        git merge master && \
        git push

Docs

  • Check out develop branch link.
  • Compare docs/content repo against ./docs/contents in core.
  • Update the docs by regenerating openapi doc and hugo website
  • Push develop branch and make a PR against main
  • Merge develop to master
  • Tag and Release main
  • Check in discord that the build succeeded.
  • Merge main back in to develop. Check the branches agree on GitHub.
  • Make the release

Explorer

  • Update to use the new SDK
  • Make sure it works by opening a few addresses
  • Merge develop to master
  • Tag and Release
  • Make the release

Docker / dAppNode

  • Update to use the new release of core (make update-1 and edit the version)
  • Build locally (make build)
  • Publish the image to docker (make publish)
  • Update to use the new docker release (make update-2 and edit the version)
  • Stand up docker compose -f docker-compose.yml -f docker-compose.local.yml up
  • Test locally ./scripts/chifra.sh blocks 12
  • Build locally (make build) (again? do it twice?)
  • Publish the image to docker (make publish)
  • Use the image in docker-compose.yaml (search for UPDATE_DOCKER_BUILD_VERSION)
  • Merge develop to master
  • Tag and Release
  • Make the release

Repos

  • trueblocks-core
  • trueblocks-docs
  • trueblocks-sdk
  • trueblocks-explorer
  • trueblocks-docker
  • trueblocks-unchained
  • trueblocks-sen
  • trueblocks-snap
  • trueblocks-stack
Clone this wiki locally