-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathautobuild-osx
executable file
·68 lines (63 loc) · 1.95 KB
/
autobuild-osx
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
#!/bin/bash
set -e
source osx-environment
export CCACHE_DIR="$OSX_BASE_DIR/ccache/autobuild"
export CC="$CC -I$OSX_LIBDIR/include -L$OSX_LIBDIR/lib"
export CXX="$CXX -I$OSX_LIBDIR/include -L$OSX_LIBDIR/lib"
export PATH="$OSX_LIBDIR/bin:$PATH"
set -x
GIT_URL="$1"
shift
NAME="$1"
shift
FILE_SERVER="$1"
if [[ "$FILE_SERVER" != "" ]]; then
shift
fi
FILE_SERVER_OUTPUT_DIR=/srv/passenger_autobuilder/output
mkdir -p "$CCACHE_DIR"
gpg --import *.key
gpg --import-ownertrust <<EOF
# List of assigned trustvalues, created Mon 01 Jul 2013 07:19:06 AM CEST
# (Use "gpg --import-ownertrust" to restore them)
573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62:6:
A09CD539B8BB8CBE96E82BDFABD4D3B3F5806B4D:6:
4C2C85E705DC730833990C38A9376139A524C53E:6:
B0F4253373F8F6F510D42178520A9993A1C052F8:6:
EOF
./autobuild-standalone --git-url "$GIT_URL" \
--repo-dir "$OSX_BASE_DIR/repo/$NAME" \
--output-dir "$OSX_BASE_DIR/output/$NAME" \
--without-ngx_geoip_module \
--without-ruby-extensions \
--without-apache-modules \
--timeout 1350 \
--static-libs-prefix "$OSX_LIBDIR" \
--result-file "$BUILDDIR/result.txt" \
--metadata-result-file "$BUILDDIR/metadata.txt" \
"$@"
source "$BUILDDIR/metadata.txt"
rm -f "$BUILDDIR/metadata.txt"
all_files=""
for F in `cat "$BUILDDIR/result.txt"`; do
rm -f "$F.asc"
gpg --armor --local-user auto-software-signing@phusion.nl --detach-sign "$F"
basename=`basename "$F"`
all_files="$all_files $basename $basename.asc"
done
rm -f "$BUILDDIR/result.txt"
if [[ "$FILE_SERVER" != "" ]]; then
remote_commit_dir="$FILE_SERVER_OUTPUT_DIR/$NAME/by_commit/$GIT_COMMIT"
(
cd "$OUTPUT_DIR"
tar -c $all_files
) | ssh "$FILE_SERVER" \
"/srv/passenger_autobuilder/app/mkdir_for_chroot $remote_commit_dir &&
/srv/passenger_autobuilder/app/mkdir_for_chroot $remote_commit_dir.tmp2 &&
cd $remote_commit_dir.tmp2 &&
tar xvf - &&
cd .. &&
mv $remote_commit_dir.tmp2/* $remote_commit_dir/ &&
rmdir $remote_commit_dir.tmp2 &&
/srv/passenger_autobuilder/app/sync_to_s3"
fi