-
Notifications
You must be signed in to change notification settings - Fork 14
/
vendor-binaries-checkin
executable file
·100 lines (84 loc) · 2.59 KB
/
vendor-binaries-checkin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#!/bin/bash
#set -x
os=$(uname -o || true)
os_arch=$(uname)
os_subarch=$(uname -m)
set -e
if [[ $os == "Msys" ]]; then
platform=windows-i686-msvc8
elif [[ $os_arch = "Linux" ]]; then
if [[ $os_subarch == "x86_64" ]]; then
platform=linux-x86_64
elif [[ $os_subarch == "i686" ]]; then
platform=linux-i686
else
echo Unknown Linux platform: $os $os_arch $os_subarch > /dev/stderr
exit 2
fi
elif [[ $os_arch == "Darwin" ]]; then
platform=macosx-i686
else
echo Unknown platform: $os $os_arch $os_subarch > /dev/stderr
exit 2
fi
branch=$1
vrev=$2
vbrev=$3
usage() {
echo Usage: $0 [branch] [vendor revision] [vendor-binaries revision] [1 or more packages]
}
if test -z "$vrev" || test -z "$vbrev" || test -z "$branch"; then
usage
exit 1
fi
# Shift off the 3 arguments here
shift 3
PACKAGES=$@
if test -z "$PACKAGES"; then
usage
exit 1
fi
if [[ $branch = "trunk" ]]; then
branchString="trunk"
else
branchString="branches/$branch"
fi
echo Branch: $branch
echo Branch SVN String: $branchString
echo Vendor repo revision: $vrev
echo Vendor-binaries repo revision: $vbrev
echo Platform: $platform
echo Packages: $PACKAGES
#echo
#echo Correct? Hit Ctrl-c to cancel...
#read
for d in $PACKAGES; do
symbolsFound=
echo "Checking $d in with vrev $vrev, vbrev $vbrev..."
svn_load_dirs.pl \
-svn_username=birdbuilder \
-no_user_input \
-commit_mesg "Rebuild of $d $platform binaries; generated at vendor repo revision $vrev, vendor-binaries repo revision $vbrev" \
svn://svn.songbirdnest.com/vendor-binaries/$branchString/$platform $d $platform/$d;
done
if [[ $platform != "linux-x86_64" ]]; then
# this is technically wrong; we could have multiple packages that are XRs
# and other things, but in practice, we only build XRs by themselves, so
# it's OK for now...
if test -n "$(echo $PACKAGES | grep xulrunner)"; then
symbolRootDir=/var/local/symbols/xulrunner
else
symbolRootDir=/var/local/symbols/vendor
fi
dirDate=$(date +%Y%m%d)
for f in $(find build -name "*.zip"); do
symbolsFound=1
$platform/mozilla/release/scripts/upload_symbols.sh $f $symbolRootDir/$dirDate-$branch-respins/$platform;
done
if ! test -z $symbolsFound; then
ssh -2 -p $SYMBOL_SERVER_PORT \
-i "$SYMBOL_SERVER_SSH_KEY" \
-l $SYMBOL_SERVER_USER $SYMBOL_SERVER_HOST \
"set -e; echo Running \$HOME/buildbot/breakpad-symlinkify.pl $symbolRootDir $symbolRootDir/$dirDate-$branch-respins/$platform; \$HOME/buildbot/breakpad-symlinkify.pl $symbolRootDir $symbolRootDir/$dirDate-$branch-respins/$platform";
fi
fi