NewbieGuide
3935
Comment:
|
3930
|
Deletions are marked like this. | Additions are marked like this. |
Line 69: | Line 69: |
* |
Newbie guide
What you need to know if you are new to the citrain landing team:
What do do
- read this document
- join #ubuntu-ci-eng
- join #ubuntu-ci-choo-choo and highlight on "trainguards" (the bot "CI-SNCF" has a bunch of commands (like where unity8))
- wait for new rows in the spreedsheet (the CI-SNCF bot will notify you) and perform the "steps for a landing" described below
- the expectation is to do up to 50% of your work time on landings
What is it
The citrain is a tool to coordinate landing of new features. This includes building/testing and publishing.
Its all in one google spreedsheet https://wiki.ubuntu.com/citrain that mostly updates itself automatically (its a frontend to jenkins)
- First column in the spreedsheet is important! Keep attention to the number of free silos, try to keep 1 slio free for emergency landings
- The spreedsheet has multiple page (sheets), the main one is "pending", but there is also "Archive" that contains *all* of the history and pages for each landing slio.
- Merge propoosal to land (row F) is important, order of the branches is important. Branches are not limited to a single project
- Additional source packages to land: you need to dput these additional source packages from the archive into the silo PPA
- QA sign off needed: only in effect if we are in train-con-zero - and then *only* stuff with QA-sign-off: no can enter the image
- Ready? : really important, once its ready, assign to a silo via "landing team tools/assign silo" menu item (more see below)
What steps for a landing
- landing for a request:
- check if it has a testplan
- check if the package is locked already (via hoover over column F)
- check that its ready
- go to the "Landing team tools" menubar and click on "assign silo"
- this generates a request-id that is valid for 5min
- opens a dialog that you need to check
- the jenkins tab opens, click on "proceed"
- opens a jenkins job page
- check that the speedsheet updates after some time
- the details for the landing are in a spreedsheet page N, e.g. "landing-07"
- its the job of the lander to click on "BUILD" on this spreedsheet page (which will bring you to a PPA)
- once the thing is ready and the lander has executed the test plan he/she sets the status column to testing-done
- once that is the case, we go to the landing sheet of the spreedsheet and click on "PUBLISH"
- this brings you to jenkins
- if there are changes in debian/* it generates a diff and that needs approval first via the "ACK_PACKAGING" box in the build jenkins subpage and press "build"
- ???
lander will click on "merge & clean"
What about CI-Airline
- will replace all of CI-Train
- no spreedsheet
- no jenkins
see http://blueprints.launchpad.net/ubuntu/+spec/core-1311-ci-airline
- designed by didrocks, worked on by citeam
- will be ready ~July 2014
Terms
- Silo are PPAs that are used to prepare a landing
- Landers are trusted people of the upstream project who can drive landing and do the final testing
TrainCon-Zero: when no new image is generated for 7 buisiness days this "emergency" state is reached and only critical fixes can go in
- CI Train Sherrif is the guy/gal currently doing landings
Links
Main landing spreadsheet: https://wiki.ubuntu.com/citrain (refreshes every 5min)
Jenkins that is controlled via the spreedsheet: https://ci-train.ubuntu.com/
- Code for the spreedsheet: lp:cupstream2distro
Testing results: http://ci.ubuntu.com/smokeng/utopic/touch/
Low-level JSON with the silo status: http://people.canonical.com/~platform/citrain/
new coolness: http://people.canonical.com/~rbpark/citrain/
Who is who: https://wiki.ubuntu.com/citrain/LandingTeam
citrain/NewbieGuide (last edited 2015-09-02 04:12:32 by 1)