This document describes how to release Dapr CLI along with associated artifacts.
Only the repository maintainers and release team are allowed to execute the below steps.
Pre-release build will be built from release-<major>.<minor>
branch and versioned by git version tag suffix e.g. -rc.0
, -rc.1
, etc. This build is not released to users who use the latest stable version.
Pre-release process
-
Create a PR to update the
Dapr runtime
andDapr dashboard
pre-release versions in workflow and tests files wherever applicable, and merge the PR to master branch. For example, please take a look at this PR - #1019. Please note that this PR is just for reference and only reflects the absolute minimum number of file changes. These versions update could lead to some other changes also. -
Create branch
release-<major>.<minor>
from master and push the branch. e.g.release-1.11
. You can use the github web UI to create the branch or use the following command.
$ git checkout master && git reset --hard upstream/master && git pull upstream master
$ git checkout -b release-1.11
$ git push upstream release-1.11
- Add pre-release version tag (with suffix -rc.0 e.g. v1.11.0-rc.0) and push the tag.
$ git tag "v1.11.0-rc.0" -m "v1.11.0-rc.0"
$ git push upstream v1.11.0-rc.0
- CI creates the new build artifacts.
- Test and validate the functionalities with the specific version.
- If there are regressions and bugs, fix them in release-* branch. e.g
release-1.11
branch. - Create new pre-release version tag (with suffix -rc.1, -rc.2, etc).
- Repeat from 5 to 7 until all bugs are fixed.
Note: Make sure stable versions of
dapr runtime
anddapr dashboard
are released before releasing the CLI and update their references in workflow and tests files wherever applicable.
Once all bugs are fixed, stable version can be released. Create a new git version tag (without the suffix -rc.x e.g. v1.11.0) and push the tag. CI will create the new build artifacts and release them.
Work on the existing release-<major>.<minor>
branch to release a patch version. Once all bugs are fixed, create a new patch version tag, such as v1.11.1-rc.0
. After verifying the fixes on this pre-release, create a new git version tag such as v1.11.1
and push the tag. CI will create the new build artifacts and release them.