Difference between revisions of "VPP/CommitterTasks/PullThrottleBranch"

From fd.io
< VPP
Jump to: navigation, search
(Pulling a VPP Throttle Branch)
Line 7: Line 7:
  
 
== Pulling a VPP Throttle Branch ==
 
== Pulling a VPP Throttle Branch ==
 +
 +
3. Request LF Admin create Nexus repositories
 +
 +
Have LF admin staff create in nexus new repositories of the form “fd.io.${branchpart}.${distropart} where branchpart is of the form stable.YYMM (example stable.1801) and the distropart is for supported distros (examples: centos7, ubuntu.xenial.main, etc).
 +
 +
NOTE: ubuntu.trusty is no longer supported, thus should not be created.
 +
 +
4. Request Ed Warnicke create the package cloud repos.
 +
 +
Send and email to Ed Warnicke (eaw@cisco.com and/or hagbard@gmail.com) reminding him to create the package cloud repositories for the new release.
 +
 +
NOTE: If these do not exist or the permissions for them are wrong, then the merge jobs will fail after uploading build artifacts to nexus.fd.io
 +
 +
5. '''Jenkins''': In ci-management/jjb/vpp/vpp.yaml
 +
 +
:a. https://git.fd.io/ci-management/tree/jjb/vpp/vpp.yaml#n49
 +
::add a new ‘stream’ for your new YYMM (example: for stable/1801:
 +
- '1801':
 +
            branch: 'stable/1801’'
 +
            repo-stream-part: 'stable.1801'
 +
 +
:b. https://git.fd.io/ci-management/tree/jjb/vpp/vpp.yaml#n87
 +
::likewise add a new stream here.  Exactly the same idea as the previous step.
 +
 +
:c. '''Example:'''  https://gerrit.fd.io/r/9934/
 +
 +
6. Create a new branch stable/YYMM (example: stable/1801) in the gerrit web UI against the point on master you wish to be cutting the branch (usually HEAD at the time you’re cutting).
 +
 +
:a. https://gerrit.fd.io/r/#/admin/projects/vpp,branches
 +
 +
7. On stable/YYMM (example: stable/1801) prepare a commit which updates the .gitreview to reflect the correct branch
 +
 +
:a. Examples: 
 +
::https://gerrit.fd.io/r/#/c/1157/1/.gitreview
 +
::https://gerrit.fd.io/r/#/c/9937/
 +
 +
:b. Merge patch
 +
 +
8. [https://wiki.fd.io/view/VPP/Pushing_and_Testing_a_Tag Lay down a tag] (v18.01-rc1) on stable/1801 at the point of the patch you just merged.
 +
 +
9. Verify that the nexus repos have packages with the correct version and are working
 +
 +
:a. Remerge the patch from step 7
 +
 +
:b. When the remerge from step 7 is complete, verify that the correct package versions have been uploaded onto the nexus server
 +
::<pre>https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.centos7/</pre>
 +
::<pre>https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.ubuntu.xenial.main/</pre>
 +
 +
:c. Examples
 +
::https://nexus.fd.io/content/repositories/fd.io.stable.1801.centos7/
 +
::https://nexus.fd.io/content/repositories/fd.io.stable.1801.xenial.main/
 +
  
 
== Historical Recipes ==
 
== Historical Recipes ==

Revision as of 15:20, 5 February 2018

VPP RC1 Milestone Tasklist

1. At least a week prior to the RC1 date, email a reminder to vpp-dev@lists.fd.io about VPP RC1 Milestone. See example email.

2. Resend reminder a day or two prior to the RC1 date.

Pulling a VPP Throttle Branch

3. Request LF Admin create Nexus repositories

Have LF admin staff create in nexus new repositories of the form “fd.io.${branchpart}.${distropart} where branchpart is of the form stable.YYMM (example stable.1801) and the distropart is for supported distros (examples: centos7, ubuntu.xenial.main, etc).

NOTE: ubuntu.trusty is no longer supported, thus should not be created.

4. Request Ed Warnicke create the package cloud repos.

Send and email to Ed Warnicke (eaw@cisco.com and/or hagbard@gmail.com) reminding him to create the package cloud repositories for the new release.

NOTE: If these do not exist or the permissions for them are wrong, then the merge jobs will fail after uploading build artifacts to nexus.fd.io

5. Jenkins: In ci-management/jjb/vpp/vpp.yaml

a. https://git.fd.io/ci-management/tree/jjb/vpp/vpp.yaml#n49
add a new ‘stream’ for your new YYMM (example: for stable/1801:
- '1801':
            branch: 'stable/1801’'
            repo-stream-part: 'stable.1801'
b. https://git.fd.io/ci-management/tree/jjb/vpp/vpp.yaml#n87
likewise add a new stream here. Exactly the same idea as the previous step.
c. Example: https://gerrit.fd.io/r/9934/

6. Create a new branch stable/YYMM (example: stable/1801) in the gerrit web UI against the point on master you wish to be cutting the branch (usually HEAD at the time you’re cutting).

a. https://gerrit.fd.io/r/#/admin/projects/vpp,branches

7. On stable/YYMM (example: stable/1801) prepare a commit which updates the .gitreview to reflect the correct branch

a. Examples:
https://gerrit.fd.io/r/#/c/1157/1/.gitreview
https://gerrit.fd.io/r/#/c/9937/
b. Merge patch

8. Lay down a tag (v18.01-rc1) on stable/1801 at the point of the patch you just merged.

9. Verify that the nexus repos have packages with the correct version and are working

a. Remerge the patch from step 7
b. When the remerge from step 7 is complete, verify that the correct package versions have been uploaded onto the nexus server
https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.centos7/
https://nexus.fd.io/content/repositories/fd.io.stable.YYMM.ubuntu.xenial.main/
c. Examples
https://nexus.fd.io/content/repositories/fd.io.stable.1801.centos7/
https://nexus.fd.io/content/repositories/fd.io.stable.1801.xenial.main/


Historical Recipes

Steps for cutting Master to XXYY-rc0

VPP 16.09-RC0 cut punchlist