This folder provides tools that are useful for managing factory repo and factory flow.
When we are releasing factory toolkit or bundle, sometimes, especially in early build phase, we need to cherry-pick some workarounds that haven't / cannot be merged into ToT. Manually cherry picking these workarounds is a tedious process, this tool helps you automate the process.
This tool uses
hashtag to filter changes on Gerrit. Each change can only have one topic but can have multiple hashtags.
There are three ways you can set topic of a change:
https://crosreview.com/<CL>, change the topic field manually.
repo upload -t(use branch name as topic)
gerrit topic abc 439944
There are three ways you can set hashtags on a change:
https://crosreview.com/<CL>, change the hashtag field manually.
repo upload -o hashtag=<hashtag>
gerrit sethashtags <CL> tag_to_add ~tag_to_remove ...
git stash # you cannot cherry-pick CLs if there are unstaged changes # First of all, download unmerged changes that fix download_patch.py. py/tools/download_patch.py --hashtag fix-download-patch
Above command downloads changes with hashtag
fix-download-patch on Gerrit in factory repository. The following things will happen:
cros/master(the remote master branch) of factory repo.
fix-download-patchfrom Gerrit. The program tries its best to resolve dependencies between each changes.
py/tools/download_patch.py --topic spring-factory --board spring \ --branch factory-spring-4262.B
Above command will perform the following steps:
hashtag are provided, this will limit the program to download changes has given
topic and given
hashtag. Currently, we don't support multiple hashtags (disjunction nor conjunction).