Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2 KiB
Release instructions
Pre-release checks
These should run successfully:
- build,
- unit-tests,
- integration tests in neofs-devenv.
Writing changelog
Add an entry to the CHANGELOG.md
following the style established there. Add an
optional codename, version and release date in the heading. Write a paragraph
describing the most significant changes done in this release. Add
Fixed
, Added
, Removed
and Updated
sections with fixed bug descriptions
and changes. Describe each change in detail with a reference to github issues if
possible.
Update supported version of neofs-contract in README.md
if there were
changes between releases.
Tag the release
Use vX.Y.Z
tag for releases and vX.Y.Z-rc.N
for release candidates
following the semantic versioning standard. Tag must be
created from the latest commit of the master branch.
Push changes and release tag to github
This step should bypass the default PR mechanism to get a correct result (so
that releasing requires admin privileges for the project), both the master
branch update and tag must be pushed simultaneously like this:
$ git push origin master v0.12.0
Prepare and push images to a dockerhub
Create images for neofs-storage
, neofs-ir
and neofs-cli
applications
and push them into dockerhub (so that releasing requires privileges in nspccdev
organization in dockerhub)
$ make images
$ docker push nspccdev/neofs-storage:0.12.0
$ docker push nspccdev/neofs-ir:0.12.0
$ docker push nspccdev/neofs-cli:0.12.0
Make a proper github release
Edit an automatically-created release on github, copy things from changelog. Make a release.
Close github milestone
Close corresponding vX.Y.Z github milestone.
Post-release
Prepare pull-request for neofs-devenv.
Rebuild NeoFS LOCODE database via CLI util locode generate
command (if needed).