From a4a775650c6aa04ae3f0f28e9b158a1ce190fa9f Mon Sep 17 00:00:00 2001 From: Kyle Manna Date: Mon, 2 Mar 2015 21:17:13 -0800 Subject: [PATCH] test: lollipop: Add initial script * Create a lollipop test script. --- tests/build-lollipop.sh | 55 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 tests/build-lollipop.sh diff --git a/tests/build-lollipop.sh b/tests/build-lollipop.sh new file mode 100755 index 0000000..bce1eae --- /dev/null +++ b/tests/build-lollipop.sh @@ -0,0 +1,55 @@ +#!/bin/bash +# +# Test script file that maps itself into a docker container and runs +# +# Example invocation: +# +# $ AOSP_VOL=$PWD/build ./build-lollipop.sh +# +set -ex + +if [ "$1" = "docker" ]; then + TEST_BRANCH=${TEST_BRANCH:-android-5.0.2_r1} + TEST_URL=${TEST_URL:-https://android.googlesource.com/platform/manifest} + + cpus=$(grep ^processor /proc/cpuinfo | wc -l) + + repo init --depth 1 -u "$TEST_URL" -b "$TEST_BRANCH" + + # Use default sync '-j' value embedded in manifest file to be polite + repo sync + + prebuilts/misc/linux-x86/ccache/ccache -M 10G + + source build/envsetup.sh + lunch aosp_arm-eng + make -j $cpus +else + aosp_url="https://raw.githubusercontent.com/kylemanna/docker-aosp/master/utils/aosp" + args="run.sh docker" + export AOSP_EXTRA_ARGS="-v $(cd $(dirname $0) && pwd -P)/$(basename $0):/usr/local/bin/run.sh:ro" + export AOSP_IMAGE="kylemanna/aosp:5.0-lollipop" + + # + # Try to invoke the aosp wrapper with the following priority: + # + # 1. If AOSP_BIN is set, use that + # 2. If aosp is found in the shell $PATH + # 3. Grab it from the web + # + if [ -n "$AOSP_BIN" ]; then + $AOSP_BIN $args + elif [ -x "../utils/aosp" ]; then + ../utils/aosp $args + elif [ -n "$(type -P aosp)" ]; then + aosp $args + else + if [ -n "$(type -P curl)" ]; then + bash <(curl -s $aosp_url) $args + elif [ -n "$(type -P wget)" ]; then + bash <(wget -q $aosp_url -O -) $args + else + echo "Unable to run the aosp binary" + fi + fi +fi