From e98b77133c0bd6e75f64e2cb0fce0999e2101882 Mon Sep 17 00:00:00 2001 From: Alex Vanin Date: Mon, 16 Nov 2020 17:03:16 +0300 Subject: [PATCH] Add release instruction document Signed-off-by: Alex Vanin --- docs/release-instruction.md | 56 +++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 docs/release-instruction.md diff --git a/docs/release-instruction.md b/docs/release-instruction.md new file mode 100644 index 000000000..0e05a5667 --- /dev/null +++ b/docs/release-instruction.md @@ -0,0 +1,56 @@ +# Release instructions + +## Pre-release checks + +These should run successfully: + * build, + * unit-tests, + * integration tests in + [neofs-devenv](https://github.com/nspcc-dev/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. + +## Tag the release + +Use `vX.Y.Z` tag for releases and `vX.Y.Z-rc.N` for release candidates +following the [semantic versioning](https://semver.org/) standard. + +## 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](https://github.com/nspcc-dev/neofs-devenv). \ No newline at end of file