1cb93a386Sopenharmony_ci#!/bin/sh
2cb93a386Sopenharmony_ci# Copyright 2018 Google LLC.
3cb93a386Sopenharmony_ci# Use of this source code is governed by a BSD-style license that can be
4cb93a386Sopenharmony_ci# found in the LICENSE file.
5cb93a386Sopenharmony_ci
6cb93a386Sopenharmony_ci# Notes:
7cb93a386Sopenharmony_ci#
8cb93a386Sopenharmony_ci#    You may need to run as root for docker permissions.
9cb93a386Sopenharmony_ci#
10cb93a386Sopenharmony_ci#    You *must* run `tools/git-sync-deps` first.
11cb93a386Sopenharmony_ci
12cb93a386Sopenharmony_ciif [ "$SKQP_OUTPUT_DIR" ]; then
13cb93a386Sopenharmony_ci    mkdir -p "$SKQP_OUTPUT_DIR" || exit 1
14cb93a386Sopenharmony_ci    OUT="$(cd "$SKQP_OUTPUT_DIR"; pwd)"
15cb93a386Sopenharmony_cielse
16cb93a386Sopenharmony_ci    OUT="$(mktemp -d "${TMPDIR:-/tmp}/skqp_apk.XXXXXXXXXX")"
17cb93a386Sopenharmony_cifi
18cb93a386Sopenharmony_ciSKIA_ROOT="$(cd "$(dirname "$0")/../.."; pwd)"
19cb93a386Sopenharmony_ci
20cb93a386Sopenharmony_cicd "${SKIA_ROOT}/infra/skqp/docker"
21cb93a386Sopenharmony_ci
22cb93a386Sopenharmony_cidocker build -t android-skqp ./android-skqp/
23cb93a386Sopenharmony_ci
24cb93a386Sopenharmony_ciNAME=$(date +android_em_%Y%m%d_%H%M%S)
25cb93a386Sopenharmony_ci
26cb93a386Sopenharmony_cidocker run --rm -d --name "$NAME" \
27cb93a386Sopenharmony_ci        --env=DEVICE="Samsung Galaxy S6" \
28cb93a386Sopenharmony_ci        --volume="$SKIA_ROOT":/SRC \
29cb93a386Sopenharmony_ci        --volume="$OUT":/OUT \
30cb93a386Sopenharmony_ci        android-skqp
31cb93a386Sopenharmony_ci
32cb93a386Sopenharmony_ciBUILD="$(docker exec "$NAME" mktemp -d)"
33cb93a386Sopenharmony_ci
34cb93a386Sopenharmony_cidocker exec \
35cb93a386Sopenharmony_ci    --env=SKQP_OUTPUT_DIR=/OUT \
36cb93a386Sopenharmony_ci    --env=SKQP_BUILD_DIR="$BUILD" \
37cb93a386Sopenharmony_ci    "$NAME" /SRC/tools/skqp/make_universal_apk.py
38cb93a386Sopenharmony_ci
39cb93a386Sopenharmony_ciif [ -f "$OUT"/skqp-universal-debug.apk ]; then
40cb93a386Sopenharmony_ci    docker exec "$NAME" find /OUT -type f -exec chmod 0666 '{}' '+'
41cb93a386Sopenharmony_cifi
42cb93a386Sopenharmony_ci
43cb93a386Sopenharmony_cidocker kill "$NAME"
44cb93a386Sopenharmony_ci
45cb93a386Sopenharmony_cils -l "$OUT"/*.apk 2> /dev/null
46