]> git.wh0rd.org - home.git/blame - .bin/cros-cbuildbot
link enchant & aspell dicts
[home.git] / .bin / cros-cbuildbot
CommitLineData
3c347239
MF
1#!/bin/bash
2
f19b7c42
MF
3vexec() {
4 local i fmt
5 for (( i = 1; i <= $#; ++i )) ; do
6 case ${!i} in
7 *" "*) fmt="'%s'";;
8 *) fmt="%s";;
9 esac
10 printf "${fmt}" "${!i}"
11 if [[ $i -lt $# ]] ; then
12 printf ' '
13 else
14 echo
15 fi
16 done
17 exec "$@"
18}
c297fe22 19
eab23be4 20cd ~/chromiumos || exit 1
0f71e16b 21
c297fe22
MF
22case " $* " in
23*" --remote "*)
24 export GIT_CONFIG=$PWD/.repo/manifests.git/config
25 vexec cbuildbot "$@"
26 ;;
27esac
28
0f71e16b
MF
29# cache the sudo timestamp
30sudo echo "" >/dev/null
31
3c347239 32d=/usr/local/google/home/vapier
70b466db
MF
33if [[ ! -d ${d} ]] ; then
34 exit 1
35fi
36
37d+="/trybot"
38if mount | grep -qs $d ; then
39 echo "mounts found in $d"
40 exit 1
41fi
420f8f8a
MF
42rd=$(readlink $d)
43if mount | grep -qs $rd ; then
44 echo "mounts found in $rd"
45 exit 1
46fi
3c347239 47
70b466db
MF
48if [[ $1 == "--noclean" ]] ; then
49 shift
50else
3c347239 51 echo "Cleaning ${d}"
0f71e16b
MF
52 pushd "${d}" >/dev/null
53 clean=(
54 built-sdk.tbz2
55 chroot
56 new-sdk-chroot
57 #sdks
58 src/build
59 test_results.tgz
60 trybot_archive
61 )
62 sudo rm -rf "${clean[@]}"
c297fe22
MF
63 if [[ -d ${d}/sdks ]] ; then
64 sudo find "${d}"/sdks -mtime +3 -delete
65 fi
0f71e16b 66 popd >/dev/null
3c347239
MF
67fi
68
69# find all the buildbot branches
0f71e16b 70echo "Looking up repo branches"
3c347239
MF
71repos=$(r b | cut -b4- | awk '$1 == "bb" {
72 # Single repo output:
73 # bb | in src/third_party/portage-stable
74 # Multi repo output:
75 # bb | in:
76 # src/third_party/portage-stable
77 # src/third_party/chromiumos-overlay
78 if ($3 == "in")
79 print $NF
80 while (getline) {
81 if ($2 == "|")
82 break;
83 print $NF;
84 }
85}')
86if [[ -n ${repos} ]] ; then
87 echo "Auto pulling patches from 'bb' branch in repos:"
88 printf '\t%s\n' ${repos}
89
90 p_flag=""
91 for r in ${repos} ; do
92 r=$(r list | awk -v r="${r}" '$1 == r { print $NF }')
93 p_flag+="${r}:bb "
94 done
95
96 set -- -p "${p_flag}" "$@"
97fi
98
3c347239 99vexec cbuildbot --buildroot=${d} "$@"