First step in build avoidance is the creation of a reference build.
We need to capture the state of all the git trees that contribute
to the reference build.
This update will save the git context to $MY_WORKSPACE/CONTEXT
The context file format is actually a shell script that can be run to
recreate the build context.
repo init ...
repo sync
cd $MY_REPO/..
source .../CONTEXT
Sample CONTEXT file ....
(cd ./cgcs-root && git checkout -f 12a159594130d75aedf40da3f3b1e6bd7f9ff375)
(cd ./cgcs-root/stx/git/calico && git checkout -f 12a159594130d75aedf40da3f3b1e6bd7f9ff375)
(cd ./cgcs-root/stx/git/ceilometer && git checkout -f 12a159594130d75aedf40da3f3b1e6bd7f9ff375)
...
(cd ./stx-tools && git checkout -f 12a159594130d75aedf40da3f3b1e6bd7f9ff375)
(cd ./.repo/manifests && git checkout -f 12a159594130d75aedf40da3f3b1e6bd7f9ff375)
(cd ./.repo/repo && git checkout -f 12a159594130d75aedf40da3f3b1e6bd7f9ff375)
This update also the git_list function, which populates the previously
introduced GIT_LIST variable, and can be used in several other code
paths where we want to find all gits in a directory tree.
Tested build/clean/edit parallel/serial
Story: 2002835
Task: 22754
Change-Id: I5009b8a360bdb4a03e5a4e83430b7f2ef135115e
Signed-off-by: Scott Little <scott.little@windriver.com>