...
1 Incoming changes for component owner review
https://code.rdkcentral.com/r/q/status:open+-owner:stephen.barrett%2540rdkcentral.com+
When a community contribution is submitted to CMF:
First we check that the BD, Copyright and Component Build are all OK.
Then we check that the test procedure is detailed enough for someone in Comcast to perform the tests with expected results. This could be either in the commit-msg or in the JIRA ticket and referenced in the commit-msg.
When the changes fulfils both of them, then we submit the change to review by component owner:
...
2 Component Owner approved the change and downstream to Comcast
...
https://wiki.rdkcentral.com/display/CMF/Contributions+Pending+Review
...
Code Block |
---|
|
git clone <comcast Gerrit url> --no-tags --single-branch -b <sprint branch> <project>
cd <project>
# cherry-pick the CMF contributon - go to the CMF change in rdkcentral then click on "Download patch - Cherry-Pick - copy the url"
git fetch <cmf change url/ps> && git cherry-pick FETCH_HEAD
# resolve the conflicts
git add <conflicted files>
git cherry-pick --continue
#hint: After resolving the conflicts, mark them with
#hint: "git add/rm <pathspec>", then run
#hint: "git cherry-pick --continue".
#hint: You can instead skip this commit with "git cherry-pick --skip".
#hint: To abort and get back to the state before "git cherry-pick",
#hint: run "git cherry-pick --abort".
git commit <-- AT THIS STAGE YOU NEED TO MANUALLY CREATE A RDKCOM TICKET
# add the RDKCOM ticket to the commit message
# push the change to the sprint branch
git --no-pager push origin HEAD:refs/for/<sprint branch>
Example:
git clone https://gerrit.teamccp.com/rdk/rdkb/components/opensource/ccsp/MeshAgent/generic --no-tags --single-branch -b 24Q3_sprint MeshAgent
cd MeshAgent
# fetch the CMF change/ps - note this is an example only and may not one an actual conflict
git fetch https://code.rdkcentral.com/r/rdkb/components/opensource/ccsp/MeshAgent refs/changes/14/107314/1 && git cherry-pick FETCH_HEAD
# resolve conflict
git add <files>
git commit --amend
# manually create RDKCOM ticket, add to commit message
git --no-pager push origin HEAD:refs/for/24Q3_sprint
# Once change is pushed to Comcast Gerrit you need to MANUALLY add the RDKCOM and Comcast Gerrit Change as comments in the CMF change and MANUALLY set RS to 5
Comcast JIRA: https://ccp.sys.comcast.net/browse/RDKCOM-<xxxx>
Comcast review: https://gerrit.teamccp.com/<changeNum> |
3 Rework required
https://code.rdkcentral.com/r/q/(topic:%2522contributor%22contributor-review%2522review%22+status:open)+OR+(label:Review-state%253D-2+status:open)
If a downstreamed change needs reworking for whatever reason, e.g. comment / rejection from component owner in Comcast, test failures in Comcast, etc. Then:
- The comment / reject reason / test report is communicated back to the contributor as a comment in the changes and also in the JIRA ticket.
- Set the topic to `contributor-review` if it is not set by the original contributor.
- Set the Review-Stat State label to -1 or -2.
TIPS
- Review State can be reset by a new patchset which has new code, in this case you may need to reset RS +1 , it is not reset on a trivial rebase or commit message change
- If a downstream change is updated post downstream the scm set review state jenkins job will fail, you need to manually set RS+1 and remove and + 5, + 6 etc RS votes