Migrate Jenkins Script to Bzr and Port Linux Linaro 3.0 Jobs

Registered by Alexander Sack

* Ensure that all code that lives in jenkins Execute Command box (of all involved jobs) including their dependent scripts/binaries/helper apps are in a bzr branch.
* Generalize scripts so they can be parameterized through environment variables and that all tree, board, hwpack specific logic is gone
* replace execute command code for the Linux Linaro 3.0 CI jobs with a small code snippet that just sets the environment variables (where no defaults should be used) and checks out a fresh bzr branch of the CI scripts from above to execute the proper helper script for the jenkins job side.
* validate the prototype branches pick up changes of bzr script automatically and that multiple builds in a row don't cause any problems.

Blueprint information

Status:
Complete
Approver:
Alexander Sack
Priority:
Essential
Drafter:
Deepti B. Kalakeri
Direction:
Approved
Assignee:
Deepti B. Kalakeri
Definition:
Approved
Series goal:
Accepted for engineering
Implementation:
Implemented
Milestone target:
milestone icon 2011.09
Started by
Alexander Sack
Completed by
Fathi Boudra

Related branches

Sprints

Whiteboard

[asac, Sep 1, 2011]: example comment. this is good to update stakeholders of steps and progress and if no work items get done, updates should be put here every other day stating clearly what blocks the blueprint etc.
[asac, Sep 1, 2011]: deeptis prototype branch with all code can be found here: lp:~deeptik/linaro-ci/ci_scripts_for_kb; I think all helper scripts where also imported or replaced in there; henice, marking second work item as DONE. but please double check.
[asac, Sep 1, 2011]: deepti manually merged asac's generalization changes from lp:~asac/linaro-ci/jenkins-tools to lp:~deeptik/linaro-ci/ci_scripts_for_kb
[deeptik, Sep 9, 2011] We will use lci-build-tools as the branch name.

Headline: Linaro CI service moved it's code to a central infrastructure team maintained bzr repository. With the added scalability the Linaro CI project made a big step closer to offering kernel CI build services to the linaro organization officially.

Acceptance: beagle and panda linux linaro 3.0 CI builds are continuously succeeding on ci.linaro.org; hwpack gets submitted to the lab and the job runs successfully; all code is centrally maintained in bzr; the same code is used for all kernel tree/branches/defconfigs; changes to bzr get automatically picked up by next build.

(?)

Work Items

Work items:
Setup prototyping bzr branch: DONE
import all jenkins scripts and all helper scripts: DONE
Decide on rememberable bzr branch name; suggestions: lci-build-scripts, lci-build-tools (lci stands for linaro ci) and document decision as a comment in whiteboard: DONE
Setup bzr branch under the linaro-ci project using the name from above owned by the ~linaro-infrastructure team: DONE
Replace submit-hwpack jenkins job with bzr-only code snippet: DONE
Replace code used by linux linaro 3.0 CI panda job with bzr-only snippet: DONE
Replace code used by linux linaro 3.0 CI beagle job with bzr-only snippet: DONE
Verify that building panda build manually succeeds and quick fix or file bugs; attach bugs to BP: DONE
Verify that hwpack submit job runs successfully for panda build and quick fix or file bugs; attach bugs to BP: DONE
Verify that job gets properly accepted and processed on a panda board by the validation scheduler and quick fix or file bugs; attach bugs to BP: DONE
Verify that panda job finishes successfully and that at least all lava job stages including deployment of the image worked well and quick fix or file bugs; attach bugs to BP: DONE
Verify that building beagle build manually succeeds and quick fix or file bugs; attach bugs to BP: DONE
Verify that hwpack submit job runs successfully for beagle build quick fix or file bugs; attach bugs to BP: DONE
Verify that job gets properly accepted and processed on a beagle board by the validation scheduler; quick fix or file bugs; attach bugs to BP: DONE
Verify that beagle job finishes successfully and that at least all lava job stages including deployment of the image worked well; quick fix or file bugs; attach bugs to BP: DONE
fix all blocker blocker bugs associated with blueprint: DONE
unlink bugs that don't block acceptance criteria off the blueprint: DONE

This blueprint contains Public information 
Everyone can see this information.