Difference between revisions of "Honeycomb/BranchCutting"

From fd.io
Jump to: navigation, search
m (Jenkins)
(Update manual to reflect changes after honeycomb/hc2vpp split)
Line 9: Line 9:
 
             repo-stream-part: 'stable.1707'
 
             repo-stream-part: 'stable.1707'
 
</pre>
 
</pre>
(example https://gerrit.fd.io/r/#/c/7447/1/jjb/honeycomb/honeycomb.yaml)
+
(example https://gerrit.fd.io/r/#/c/7447/1/jjb/honeycomb/honeycomb.yaml).
  
== Cut Branch ==
+
== 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).
  
Create a new branch stable/YYMM (example: stable/1609) 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/honeycomb,branches
 
https://gerrit.fd.io/r/#/admin/projects/honeycomb,branches
  
== Update stable/YYMM Branch ==
+
== 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/7448/1/.gitreview
 +
 
 +
Updates the maven versions of honeycomb artifacts to x.YY.MM-RC1 (example: 1.17.07-RC1).
 +
 
 +
Example:  https://gerrit.fd.io/r/#/c/7476/
 +
 
 +
=== Verify correct jar versions ===
 +
After merge job for version bump patch is finished,
 +
check if artifacts with the correct versions were deployed at:
 +
 
 +
https://nexus.fd.io/content/repositories/fd.io.release/io/fd/honeycomb/[path to artifact]/
 +
 
 +
Example: https://nexus.fd.io/content/repositories/fd.io.release/io/fd/honeycomb/common/honeycomb-parent/
 +
 
 +
=== Set version back to SNAPSHOT ===
 +
 
 +
Set maven versions of honeycomb artifacts back to x.YY.MM-SNAPSHOT (example: 1.17.07-SNAPSHOT)
 +
for new development cycle.
 +
 
 +
Example: https://gerrit.fd.io/r/#/c/7477
 +
 
 +
The honeycomb-merge job builds most current version for given branch,
 +
so make sure previous step was finished successfully.
 +
 
 +
== Update master branch ==
 +
 
 +
On master branch, bump versions of honeycomb artifacts to next version snapshots (example: 1.17.10-SNAPSHOT).
  
On stable/YYMM (example: stable/1609) prepare a commit which updates the .gitreview to reflect the correct branch and updates the maven versions (in a single patch) and the versions used for building rpms/debs
+
Example: https://gerrit.fd.io/r/#/c/7451/
Example: https://gerrit.fd.io/r/#/c/1157/1/.gitreview
+
Example: https://git.fd.io/cgit/honeycomb/tree/packaging/rpm/version
+
  
Merge the patch
+
Also create new project version in jira and update release notes.
  
== Verify correct package versions
+
Example: https://gerrit.fd.io/r/#/c/7460
Go look for package with the correct versions at:
+
https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.centos7/ ( example: ( https://nexus.fd.io/content/repositories/fd.io.stable.1609.centos7/ )
+
https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.ubuntu.trusty.main/ example: ( https://nexus.fd.io/content/repositories/fd.io.stable.1609.ubuntu.trusty.main/ )
+
https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.ubuntu.xenial.main/ example: (https://nexus.fd.io/content/repositories/fd.io.stable.1609.ubuntu.xenial.main/ )
+
Verify that package like artifacts are present in all the above git repos by looking for them in  ‘Package’ in the apt repos (trusty and xenial)
+

Revision as of 08:42, 7 July 2017

Jenkins

In ci-management/jjb/honeycomb/honeycomb.yaml https://git.fd.io/ci-management/tree/jjb/honeycomb/honeycomb.yaml#n24 - 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/1/jjb/honeycomb/honeycomb.yaml).

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/honeycomb,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/7448/1/.gitreview

Updates the maven versions of honeycomb artifacts to x.YY.MM-RC1 (example: 1.17.07-RC1).

Example: https://gerrit.fd.io/r/#/c/7476/

Verify correct jar versions

After merge job for version bump patch is finished, check if artifacts with the correct versions were deployed at:

https://nexus.fd.io/content/repositories/fd.io.release/io/fd/honeycomb/[path to artifact]/

Example: https://nexus.fd.io/content/repositories/fd.io.release/io/fd/honeycomb/common/honeycomb-parent/

Set version back to SNAPSHOT

Set maven versions of honeycomb artifacts back to x.YY.MM-SNAPSHOT (example: 1.17.07-SNAPSHOT) for new development cycle.

Example: https://gerrit.fd.io/r/#/c/7477

The honeycomb-merge job builds most current version for given branch, so make sure previous step was finished successfully.

Update master branch

On master branch, bump versions of honeycomb artifacts to next version snapshots (example: 1.17.10-SNAPSHOT).

Example: https://gerrit.fd.io/r/#/c/7451/

Also create new project version in jira and update release notes.

Example: https://gerrit.fd.io/r/#/c/7460