Files
assistant-android/scripts/test_build.sh
2021-04-28 15:41:42 +08:00

50 lines
1.8 KiB
Bash
Executable File

#!/usr/bin/env bash
# @author juntao
# @2020.12.22
# 执行 test_build.sh -i 打测试环境测试包, -p 打正式环境测试包
# 默认会把 library/LGLibrary 的代码更新到最新
# 打出来的包会放在 test-app 目录
git_sha=`git rev-parse --short HEAD`
version_name=$(awk -v FS="versionName = " 'NF>1{print $2}' dependencies.gradle | sed "s/\"//g")
version_code=$(awk -v FS="versionCode = " 'NF>1{print $2}' dependencies.gradle | sed "s/\"//g")
build_time=$(TZ=Asia/Shanghai date +'%Y-%m%d-%H%M')
build_time_without_divider=$(TZ=Asia/Shanghai date +'%Y%m%d%H%M')L
git checkout app/build.gradle
git checkout gradle.properties
./gradlew --stop
./gradlew clean
cd libraries/LGLibrary/
git checkout master
git pull origin master
cd ..
cd ..
if [[ "$OSTYPE" == "darwin"* ]]; then
sed -i '' 's/buildConfigField "long", "BUILD_TIME", "0"/buildConfigField "long", "BUILD_TIME", '"\"${build_time_without_divider}\""'/g' app/build.gradle
else
sed -i 's/buildConfigField "long", "BUILD_TIME", "0"/buildConfigField "long", "BUILD_TIME", '"\"${build_time_without_divider}\""'/g' app/build.gradle
fi
while getopts "ip" arg
do
case ${arg} in
i)
./gradlew rIR -I init.gradle
mkdir -p test-app/${version_name}_${version_code}
cp -R app/build/outputs/apk/internal/release/app-internal-release.apk test-app/${version_name}_${version_code}/光环助手_${version_name}_${version_code}_测试环境测试包_${git_sha}_${build_time}.apk
;;
p)
./gradlew rPR -I init.gradle
mkdir -p test-app/${version_name}_${version_code}
cp -R app/build/outputs/apk/publish/release/app-publish-release.apk test-app/${version_name}_${version_code}/光环助手_${version_name}_${version_code}_正式环境测试包_${git_sha}_${build_time}.apk
;;
esac
done
git checkout app/build.gradle
git checkout gradle.properties