CI Slave Runtime

Registered by James Tunnicliffe

Create a runtime client to run jobs on slaves.

The runtime loads the job specification (Python module) and runs it. The runtime can be executed on a developers local machine or on a slave machine. This allows developers to use the same workflow, as defined in the job specification, as part of their daily development as well as CI testing and cloud builds etc.

Blueprint information

Status:
Complete
Approver:
Alan Bennett
Priority:
Medium
Drafter:
Alan Bennett
Direction:
Approved
Assignee:
James Tunnicliffe
Definition:
Obsolete
Series goal:
Accepted for trunk
Implementation:
Good progress
Milestone target:
milestone icon 2013.05
Started by
Данило Шеган
Completed by
Milo Casagrande

Related branches

Sprints

Whiteboard

Meta:
Headline: A runtime that executes CI job specifications.
Acceptance: CI slave runtime can execute part and full job specifications, depending on CLI parameters.
Roadmap id: TBD

(?)

Work Items

Work items:
Code review: https://code.launchpad.net/~dooferlad/+junk/python-ci-config - this is a research project that does some of this. Review vs design goals as starting point for implementation: DONE
Python job spec review - need to add functions to divide up jobs: DONE
Prototype control over SSH: DONE
Prototype local job execution: DONE
Design LAVA interaction and execution model: TODO
Unit tests: DONE
Design code reviews: TODO
Publishing over SSH: TODO
Complete Kernel CI loop implementation: INPROGRESS
Complete Android build implementation: INPROGRESS
Passwordless SUDO (currently assume password required): DONE
Documentation: TODO

This blueprint contains Public information 
Everyone can see this information.