diff options
author | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2017-04-12 11:05:29 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2017-04-19 08:11:16 +0000 |
commit | 927890c01e6a98707af7c8161b51ca46c06d4aaa (patch) | |
tree | f669921d55f85113749bb9132fee12ee03c8c1ad /tcwg-generate-source-cache.sh | |
parent | 664b7f5ec4203a278a838be545067de2a6b57fa7 (diff) |
tcwg-generate-source-cache.sh: Rework option handling and cleanup
Change-Id: I29f883ccbc36bbee1b94cd6c0728631b3ccb0e69
Diffstat (limited to 'tcwg-generate-source-cache.sh')
-rwxr-xr-x | tcwg-generate-source-cache.sh | 80 |
1 files changed, 52 insertions, 28 deletions
diff --git a/tcwg-generate-source-cache.sh b/tcwg-generate-source-cache.sh index 38a859ec..ee6fc48a 100755 --- a/tcwg-generate-source-cache.sh +++ b/tcwg-generate-source-cache.sh @@ -5,39 +5,50 @@ set -e usage () { cat <<EOF -Usage: $0 [-r] [-v] [-h] [machine1 machine2 ...] - This scripts generates and rsync's reference snapshots to machines - - -r: Only rsync snapshots-ref to machines - -v: Be verbose - -h: Print help +Usage: $0 --dir-abe ABE/SNAPSHOTS --dir-llvm LLVM/REFERENCE [--OPT true/false] + This script generates source caches. + "--OPT true/false" options specify what to do: + --generate-abe true/false Generate ABE snapshots; default "true" + --generate-llvm true/false Generate LLVM reference repos; default "true" + --generate-misc true/false Generate misc repo and file caches; default "true" + --update-abe-git true/false Update ABE git repos; default "true" + --update-llvm-git true/false Update LLVM git repos; default "true" + --verbose true/false Be verbose; default "false" EOF + exit 1 } -generate=true snapshots_dir=$HOME/snapshots-ref -verbose="set +x" - -while getopts "hrv" OPTION; do - case $OPTION in - h) - usage - exit 0 - ;; - r) - generate=false - ;; - v) verbose="set -x" ;; +generate_abe=true +generate_llvm=true +generate_misc=true +update_git=true +verbose=false + +OPTS="`getopt -l generate-abe:,generate-llvm:,generate-misc:,update-git:,verbose: -- "$@"`" +while test $# -gt 0; do + case $1 in + --generate-abe) generate_abe="$2"; shift ;; + --generate-llvm) generate_llvm="$2"; shift ;; + --generate-misc) generate_misc="$2"; shift ;; + --update-git) update_git="$2"; shift ;; + --verbose) verbose="$2"; shift ;; esac + shift done -$verbose - -shift $((OPTIND-1)) +if $verbose; then + verbose="set -x" +else + verbose="set +x" +fi # Checkout into $snapshots_dir using ABE generate_snapshots () { + set -e + $verbose + local abe_temp="$(dirname "$0")/abe" rm -rf $abe_temp @@ -65,9 +76,18 @@ generate_snapshots () ./abe.sh --target $t --extraconfigdir config/$c --checkout all done done + + # Remove checked-out branch directories + rm -rf ${snapshots_dir}-new/*~* + + # Remove md5sums to force ABE to fetch canonical version via http://. + rm -f ${snapshots_dir}-new/md5sums } update_git_repos () { + set -e + $verbose + for repo in `ls ${snapshots_dir}-new/ | grep "\.git\$"`; do ( cd ${snapshots_dir}-new/$repo @@ -79,7 +99,7 @@ update_git_repos () { done } -if $generate; then +if $generate_abe; then mkdir -p ${snapshots_dir}-new # Remove *.asc files to fix cached incorrect md5sum files @@ -87,15 +107,19 @@ if $generate; then update_git_repos generate_snapshots +fi - # Remove checked-out branch directories - rm -rf ${snapshots_dir}-new/*~* +if $generate_llvm; then + : +fi - # Remove md5sums to force ABE to fetch canonical version via http://. - rm -f ${snapshots_dir}-new/md5sums +if $generate_misc; then + : fi -update_git_repos +if $update_git; then + update_git_repos +fi echo "Snapshots status:" du -hs $snapshots_dir-new/* |