Developer Collaboration Vehicle
This is the proposed development plan for the DCV as proposed at BKK19 LDCG SC meeting.
Proposal
There were a number of reasons proposed for this project at the BKK19 meeting.
- Members need a place they can collaborate on patches to upstream projects before they are ready to upstream
- Collaboration is required so members know other members plans and can work to assist upstreaming instead of duplicating work
- Early detection of regressions caused by experimental or risky patches to core projects.
- Patches can be demonstrated to be working to upstream maintainers on multiple platforms on a "real" distribution.
Resources
This project will be heavily driven by the members with most developer resource coming from the members :-
- Member Engineer driven development, ME's are responsible for the packaging and publishing of git repos
- Member Engineer driven testing, ME's are responsible for setting up appropriate CI for their packages as required.
- Linaro will provide resource for hosting packaging repos. (github, git.linaro.org, or other)
- Linaro will provide resource for distro builder. (debian backports, OBS, or other)
- Linaro will provide resource for oversight of the project. (1 engineer, part time)
- Linaro will provide mailing list/mailing group for project. (google group, mailman)
Setup Resources
- Linaro 1 engineer full time for 3 months, then dropping to part time.
- ME's 1 per package for 2 weeks to get initial builds done then dropping to part time.
Example Process
An example simple process of a new package being entered into the Developer Collaboration Vehicle
- ME proposes patch/packages combination on the DCV mailing list.
- ME publishes the git repository of packaging changes/patches to be built.
- ME works with Linaro to get packages into the appropriate build system. (debian backports, OBS, other)
- (option) ME works with Linaro to setup a CI for package.
- Linaro publishes the package in the DCV repository for consumption.
- (option) Linaro publishes any CI tests
Obviously this simple process may not cover all package types or testing strategies required in which case ME can discuss with Linaro resource on the mailing list of modifications or additional requirements.
Outputs
There are two main outputs from the Developer Collaboration Vehicle
- A repository of packages for member (and public) consumption.
- Test reports for CI sent to the mailing list.