NewbieGuide
3042
Comment:
|
3935
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
So you want to ride the CI train? Great, here is what you need to know: | What you need to know if you are new to the citrain landing team: |
Line 5: | Line 5: |
== Introduction == | == 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. |
Line 7: | Line 17: |
* First column in the spreedsheet is important! Keep attention to the number of free silos, try to keep slios free * The spreedsheet has multiple page, the main one is "pending", but there is a important one "Archive" that contains *all* of the history * Merge propoosal to land (row F) is important, order is important too but its not limited to a single project |
* 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 |
Line 12: | Line 22: |
* Ready? : really important, once its ready, assign to a silo | * Ready? : really important, once its ready, assign to a silo via "landing team tools/assign silo" menu item (more see below) |
Line 14: | Line 24: |
== CI-Airline == * replaces 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 |
|
Line 22: | Line 25: |
== 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 == Tutorial == |
== What steps for a landing == |
Line 30: | Line 28: |
* check if the package is locked already (via hoover over column F) | |
Line 47: | Line 46: |
== Important links == | == 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 == |
Line 54: | Line 67: |
* Who is who: https://wiki.ubuntu.com/citrain/LandingTeam * https://wiki.ubuntu.com/citrain/FAQ * |
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)