Managing (Android) code differences

Registered by James Westby

Working on Android requires keeping track of changes across several trees, and when you are working on more than one thing at a time this adds up to tracking lots of commits in lots of trees. We will discuss what could be provided to make this task easier.

Blueprint information

Status:
Not started
Approver:
Alexander Sack
Priority:
Medium
Drafter:
Mattias Backman
Direction:
Needs approval
Assignee:
None
Definition:
Discussion
Series goal:
Accepted for 2011q2
Implementation:
Not started
Milestone target:
milestone icon connect-q2.11

Related branches

Sprints

Whiteboard

User stories:

* As a maintainer of the Linaro Android main branch (Generic Build) I want to know that Linaro hold the copyright for every commit so that I know that everything can be upstreamed by Linaro.
    - Require agreement to be signed before something can be pushed to Gerrit
    - Is that an agreement to yield copyright to Linaro, or an individual Android Contributor License Grant?

* As a Linaro Android Tech Lead I want to be able to see the upstream status of all changes made to Linaro Android so that I can ensure that nothing is being hoarded that should be upstreamed.
    - Involves being able to mark things as not suitable for upstream.
    - Could be based around Gerrit. A change being accepted in Gerrit would start the process of the change being upstreamed.

* As a Linaro legal representative I want to keep track of the licenses that applies to each source file so that I can ensure that all license conditions are being met.
    - SPDX to track licenses?
    - Blackduck/whiteduck (what is white duck?) scanning of source as part of build/review in Gerrit?

Not discussed in the session: move to code review work:

* As a Release Manager I want to keep track of the set of patches on top of the original sub gits in the repo so that I know what has been changed.

* As a developer I want to mark commits in different subgits as belonging together so that the code review takes in the entire change.
    - Gerrit is often used to accomplish this

* As a developer (Release Manager?) I want to keep track of where the original manifest was from so that I can answer the question what version Android are you running and where did you get it?

Notes from session Etherpad:

* As a maintainer of the Linaro Android main branch (Generic Build) I want to know the origin of every commit so that I can avoid upstreaming contributions from individuals not covered by the Android Corporate Contributor License Grant.
    - Require this be signed before something can be pushed to Gerrit

Keep track of licenses
  - SPDX http://spdx.org/
    - from Linux Foundation
    - ACTION: skaet and zpfeffer to meet about using SPDX
Need to be able to separate out patches to upstream from the master branch.
Keep separate topic branches and one master branch which is equivalent to the merged topic branches? Would enable upstreaming individual topic branches while being able to review for merging into master.

#uds-o #linaro #android

zp automatic common code - Dora?
zp each line of code needs providence and target
zp will work with Kate
zp consolidate members code
zp legal scanning blackduck/whiteduck
zp AI: legal
zp AI: look into blackduck checking
zp AI: Gerrit for the kernel
zp AI: extending gerrit spec
diff across builds
github? gitorius?
zp extend gerrit to show validation results

(?)

Work Items