Lines Matching +full:release +full:- +full:please +full:- +full:- +full:branches +full:- +full:- +full:main
1 # How to Create a Release of OpenCensus Java (for Maintainers Only)
7 - Ubuntu 14.04
18 - Follow the instructions on [this
19 page](http://central.sonatype.org/pages/ossrh-guide.html) to set up an
21 - You only need to create the account, not set up a new project
22 - Contact a OpenCensus Java maintainer to add your account after you
24 - (For release deployment only) [Install
25 GnuPG](http://central.sonatype.org/pages/working-with-pgp-signatures.html#installing-gnupg)
27 pair](http://central.sonatype.org/pages/working-with-pgp-signatures.html#generating-a-key-pair).
29 …key](http://central.sonatype.org/pages/working-with-pgp-signatures.html#distributing-your-public-k…
31 - Put your GnuPG key password and OSSRH account information in
32 `<your-home-directory>/.gradle/gradle.properties`:
35 # You need the signing properties only if you are making release deployment
36 signing.keyId=<8-character-public-key-id>
37 signing.password=<key-password>
38 signing.secretKeyRingFile=<your-home-directory>/.gnupg/secring.gpg
40 ossrhUsername=<ossrh-username>
41 ossrhPassword=<ossrh-password>
45 ## Tagging the Release
47 The first step in the release process is to create a release branch, bump
48 versions, and create a tag for the release. Our release branches follow the
53 In this section upstream repository refers to the main opencensus-java github
57 token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/).
59 1. Create the release branch and push it to GitHub:
62 $ MAJOR=0 MINOR=4 PATCH=0 # Set appropriately for new release
67 api/src/main/java/io/opencensus/common/OpenCensusLibraryInformation.java
68 …exporters/metrics/ocagent/src/main/java/io/opencensus/exporter/metrics/ocagent/OcAgentNodeUtils.ja…
69 … exporters/trace/ocagent/src/main/java/io/opencensus/exporter/trace/ocagent/OcAgentNodeUtils.java
73 $ git checkout -b v$MAJOR.$MINOR.x master
76 The branch will be automatically protected by the GitHub branch protection rule for release
77 branches.
81 - Change root build files to the next minor snapshot (e.g.
82 `0.5.0-SNAPSHOT`).
85 $ git checkout -b bump-version master
86 # Change version to next minor (and keep -SNAPSHOT)
87 …$ sed -i 's/[0-9]\+\.[0-9]\+\.[0-9]\+\(.*CURRENT_OPENCENSUS_VERSION\)/'$MAJOR.$((MINOR+1)).0'\1/' \
90 $ git commit -a -m "Start $MAJOR.$((MINOR+1)).0 development cycle"
93 - Go through PR review and push the master branch to GitHub:
97 $ git merge --ff-only bump-version
103 - Change root build files to remove "-SNAPSHOT" for the next release
107 $ git checkout -b release v$MAJOR.$MINOR.x
108 # Change version to remove -SNAPSHOT
109 $ sed -i 's/-SNAPSHOT\(.*CURRENT_OPENCENSUS_VERSION\)/\1/' "${VERSION_FILES[@]}"
111 $ git commit -a -m "Bump version to $MAJOR.$MINOR.$PATCH"
112 $ git tag -a v$MAJOR.$MINOR.$PATCH -m "Version $MAJOR.$MINOR.$PATCH"
115 - Change root build files to the next snapshot version (e.g.
116 `0.4.1-SNAPSHOT`). Commit the result:
119 # Change version to next patch and add -SNAPSHOT
120 …$ sed -i 's/[0-9]\+\.[0-9]\+\.[0-9]\+\(.*CURRENT_OPENCENSUS_VERSION\)/'$MAJOR.$MINOR.$((PATCH+1))-…
123 $ git commit -a -m "Bump version to $MAJOR.$MINOR.$((PATCH+1))-SNAPSHOT"
126 - Go through PR review and push the release tag and updated release branch
128 will lose the release tag):
132 $ git merge --ff-only release
145 must reference a commit that has been pushed to the main repository, i.e., has
146 gone through code review. For the current release use:
149 $ git checkout -b v$MAJOR.$MINOR.$PATCH tags/v$MAJOR.$MINOR.$PATCH
156 uploadArchives](https://issues.gradle.org/browse/GRADLE-3420).
159 $ ./gradlew clean build && ./gradlew -Dorg.gradle.parallel=false uploadArchives
162 If the version has the `-SNAPSHOT` suffix, the artifacts will automatically go
163 to the snapshot repository. Otherwise it's a release deployment and the
166 When deploying a Release, the deployment will create [a new staging
168 up the ID in the OSSRH UI (usually in the form of `opencensus-*`).
178 site](http://central.sonatype.org/pages/releasing-the-deployment.html).
182 Once deployment is done, go to Github [release
183 page](https://github.com/census-instrumentation/opencensus-java/releases), press
184 `Draft a new release` to write release notes about the new release.
186 You can use `git log upstream/v$MAJOR.$((MINOR-1)).x..upstream/v$MAJOR.$MINOR.x --graph --first-par…
187 or the Github [compare tool](https://github.com/census-instrumentation/opencensus-java/compare/)
188 to view a summary of all commits since last release as a reference. In addition, you can refer to
189 [CHANGELOG.md](https://github.com/census-instrumentation/opencensus-java/blob/master/CHANGELOG.md)
190 for a list of major changes since last release.
192 Please pick major or important user-visible changes only.
194 ## Update release versions in documentations and build files
202 $ git checkout -b bump-document-version master
236 $ sed -i 's/[0-9]\+\.[0-9]\+\.[0-9]\+\(.*LATEST_OPENCENSUS_RELEASE_VERSION\)/'$MAJOR.$MINOR.$PATCH'…
239 $ sed -i 's/\(\(compile\|runtime\).\+io\.opencensus:.\+:\)[0-9]\+\.[0-9]\+\.[0-9]\+/\1'$MAJOR.$MINO…
242 $ sed -i 's/\(<version>\)[0-9]\+\.[0-9]\+\.[0-9]\+/\1'$MAJOR.$MINOR.$PATCH'/' \
244 $ git commit -a -m "Update release versions for all readme and build files."
249 3. In addition, create a PR to mark the new release in
250 [CHANGELOG.md](https://github.com/census-instrumentation/opencensus-java/blob/master/CHANGELOG.md)
251 on master branch. Once that PR is merged, cherry-pick the commit and create another PR to the
252 release branch (branch v$MAJOR.$MINOR.x).
254 ## Patch Release
255 All patch releases should include only bug-fixes, and must avoid adding/modifying the public APIs.
256 To cherry-pick one commit use the following command:
259 $ git cherry-pick -x $COMMIT
270 If option `-Dorg.gradle.parallel=false` is used, you will hit [this bug](https://issues.sonatype.or…