blob: 5c87e4e6e0aa6cb5ba743f6a8e2c12a06bea0836 [file] [log] [blame]
#!/bin/bash
# Copyright (C) 2018 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -e
if [ "$1" == "--help" ] || [ "$1" == "-h" ]; then
echo "usage: $0 [--out <output path>]"
echo " --out: publish to output path. Otherwise, publishes to current directory."
false
fi
if [ -t 1 ] && [ $(tput colors) -ge 8 ]; then
style_reset="$(tput sgr0)"
style_red="$(tput setaf 1)"
style_green="$(tput setaf 2)"
style_bold="$(tput bold)"
fi
OK="${style_bold}OK${style_reset}"
FAIL="${style_bold}${style_red}FAIL${style_reset}"
INFO="${style_bold}${style_green}INFO${style_reset}"
WARN="${style_bold}${style_red}WARN${style_reset}"
SUCCESS="${style_bold}${style_green}SUCCESS${style_reset}"
WINSCOPE_OUT_PATH="${PWD}/winscope.html"
if [ "$1" == "--out" ]; then
WINSCOPE_OUT_PATH="$2"
fi
YARN="${YARN:-$(which yarn || true)}"
WINSCOPE_PATH="${ANDROID_BUILD_TOP}/development/tools/winscope"
WINSCOPE_BUILD_PATH="${WINSCOPE_PATH}/dist/index.html"
[ -x "$YARN" ] || { echo -e "$FAIL: could not run yarn.\n$INFO: looking for yarn at YARN='${YARN:-\$(which yarn)}'. You can override this by setting the YARN environment variable."; false; }
[ -x "$ANDROID_BUILD_TOP" ] || { echo -e "$FAIL: $ANDROID_BUILD_TOP variable is not set. \n$INFO: did you run setup/buildenv.sh?"; false; }
"$YARN" --cwd "$WINSCOPE_PATH" install || { echo -e "$FAIL: installing winscope dependencies failed.\n$INFO: command was: \"$YARN\" --cwd \"$WINSCOPE_PATH\" install"; false; }
"$YARN" --cwd "$WINSCOPE_PATH" run build || { echo -e "$FAIL: building winscope failed.\n$INFO: command was: \"$YARN\" --cwd \"$WINSCOPE_PATH\" run build"; false; }
install --mode 664 "$WINSCOPE_BUILD_PATH" "$WINSCOPE_OUT_PATH" || { echo -e "$FAIL: publishing ${WINSCOPE_OUT_PATH} failed."; false; }
echo -e "$SUCCESS: published to ${WINSCOPE_OUT_PATH}"