Project

General

Profile

HOWTO » History » Revision 3

Revision 2 (Loïc Dachary, 03/19/2015 02:09 PM) → Revision 3/187 (Loïc Dachary, 03/22/2015 10:26 AM)

h3. HOWTO backport 

 Based on what would be done for the Giant branch 

 h3. Update the inventory 

 * ssh -p2222 backports@workbench.dachary.org 
 * screen -x 
 * ( cd .. ; github2gitlab --github-token $github_token --github-repo ceph/ceph --gitlab-url http://workbench.dachary.org --gitlab-token $gitlab_token --gitlab-repo ceph/ceph-backports --branches master,dumpling,emperor,firefly,giant,hammer,firefly-backports,giant-backports,dumpling-backports --verbose ) 
 * ( python ../sanity.py ; cd ../ceph-backports.wiki ; git commit -a -m 'update' ; git push ) 
 * firefox http://workbench.dachary.org/ceph/ceph-backports/wikis/giant 

 h3. Backport issues 

 The helper snippet at http://workbench.dachary.org/dachary/ceph-workbench/issues/3 can be used to semi automate the process below 

 * For each entry at http://workbench.dachary.org/ceph/ceph-backports/wikis/giant#issues-that-need-backporting 
 * git cherry-pick -x the commits from the pull request that was targettig master (not from the pull requests targeting stable branches) 
 * create a pull request with the backport with a reference to the issue and set the milestone to giant 
 * add a reference to the pull request in the issue 
 * if the make check bot finds a problem, fix it 

 h3. Collect pending pull requests into an integration branch 

 The snippet at http://workbench.dachary.org/dachary/ceph-workbench/issues/4 can help 

 * create a giant-backport branch 
 * fetch all pull requests from github 
 * git merge all pull requests 
 * modify the pull requests individually to fix merge conflicts (i.e. they must merge cleanly, which may involving aggregating two pull requests into a single one designed to properly resolve the conflict) 
 * compile with ./autogen.sh ; ./configure ; make -j4 
 * modify the pull requests individually to fix compilation errors 

 h3. Format of teuthology analysis entries 

 For instance http://tracker.ceph.com/issues/11153#rgw is structured like so: 

 * In chronological order 
 * The command line (that can be copy/pasted) used to run the suite 
 * A bullet point with the URL to the suite run in pulpito prefixed by 
 ** *running* if the run is not complete 
 ** *red* if the run has at least one error 
 ** *green* if the run has no error 
 * If the run has at least one error, the output of the fail formatter snippet (found at http://workbench.dachary.org/dachary/ceph-workbench/issues/2 is appened to it) and edited when the errors are analyzed