Difference between revisions of "Archived-Hc2vpp/BranchCutting"
m (→Hc2vpp release procedure) |
(→Update stable/YYMM branch) |
||
Line 22: | Line 22: | ||
Example: https://gerrit.fd.io/r/#/c/7454/2/.gitreview | Example: https://gerrit.fd.io/r/#/c/7454/2/.gitreview | ||
+ | |||
+ | Also update <project-branch> in the release notes. | ||
Update the maven versions of hc2vpp artifacts to x.YY.MM-RC1 (example: 1.17.07-RC1). | Update the maven versions of hc2vpp artifacts to x.YY.MM-RC1 (example: 1.17.07-RC1). |
Revision as of 07:22, 20 July 2018
Contents
Jenkins
In jjb/hc2vpp/hc2vpp-csit.yaml and jjb/hc2vpp/hc2vpp.yaml add a new ‘stream’ for your new YYMM (example: for stable/1707):
- '1707': branch: 'stable/1707’' repo-stream-part: 'stable.1707'
(example: https://gerrit.fd.io/r/#/c/7447/).
Cut branch
Create a new branch stable/YYMM (example: stable/1707) in the gerrit web UI against the point on master you wish to be cutting the branch (usually HEAD at the time your cutting).
https://gerrit.fd.io/r/#/admin/projects/hc2vpp,branches
Update stable/YYMM branch
On stable/YYMM (example: stable/1707) prepare a commit which updates the .gitreview to reflect the correct branch.
Example: https://gerrit.fd.io/r/#/c/7454/2/.gitreview
Also update <project-branch> in the release notes.
Update the maven versions of hc2vpp artifacts to x.YY.MM-RC1 (example: 1.17.07-RC1).
Remember to also update versions in package scripts (files: prepare.sh, release, rpmbuild.sh and honeycomb.spec).
Example: https://gerrit.fd.io/r/#/c/7458/
Verify correct artifact versions
After integration job for version bump patch is finished, check if
- RPMs with the correct versions were deployed at:
https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.centos7/io/fd/hc2vpp/honeycomb/
Example: https://nexus.fd.io/content/repositories/fd.io.stable.1707.centos7/io/fd/hc2vpp/honeycomb/
- DEBs with the correct versions were deployed at
- JARs with the correct versions were deployed at:
https://nexus.fd.io/content/repositories/fd.io.release/io/fd/hc2vpp/[path to artifact]/
Example: https://nexus.fd.io/content/repositories/fd.io.release/io/fd/hc2vpp/common/hc2vpp-parent/
Lay RC1 tag
Tag the RC1 bump commit:
git tag v1.17.07-RC1 -m "Hc2vpp v1.17.07-RC1"
Verify the tag locally:
git show v1.17.07-RC1
Push the tag to remote repository:
git push origin v1.17.07-RC1
Verify tag was pushed: https://gerrit.fd.io/r/#/admin/projects/hc2vpp,tags
Set version back to SNAPSHOT
Set maven versions of hc2vpp artifacts back to x.YY.MM-SNAPSHOT (example: 1.17.07-SNAPSHOT) for new development cycle.
Example (revert of RC1 bump): https://gerrit.fd.io/r/#/c/7461
Make sure previous step was finished successfully before submitting the patch.
Update master branch
On master branch, bump versions of hc2vpp artifacts to next version snapshots (example: 1.17.10-SNAPSHOT).
Remember to also update versions in package scripts (files: prepare.sh, rpmbuild.sh and version).
Example: https://gerrit.fd.io/r/#/c/7462/
Create new project version in jira and update release notes
Example: https://gerrit.fd.io/r/#/c/7463
Bump jvpp version
Example: https://gerrit.fd.io/r/#/c/7464
Hc2vpp release procedure
Release procedure is similar to the steps for releasing RC1:
- Set JVPP version to release version(1804 example: https://gerrit.fd.io/r/#/c/12156/).
- Update release notes (1804 example: https://gerrit.fd.io/r/#/c/12284/).
- Release hc2vpp (1804 example: https://gerrit.fd.io/r/#/c/12286/: poms + packaging/rpm/hc2vpp_version, packaging/rpm/release and vpp-version files). Make sure vpp_dependencies files DOES NOT specify single VPP version (would make hc2vpp point releeases required for every vpp point release).
- Verify there are no issues with the artifacts in the stable repo.
- Ask helpdesk@fd.io to copy artifacts from stable repos to release repos.
- Lay tag:
git tag v1.18.04 -m "Hc2vpp v1.18.04" git push origin v1.18.04
- Bump hc2vpp version to .1 SNAPSHOT (1804 example: https://gerrit.fd.io/r/#/c/12287/: poms + packaging/deb/common/prepare.sh, packaging/rpm/hc2vpp_version, packaging/rpm/release, packaging/rpm/version and vpp-version files).