ci:check cronet updates when release
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
#bin/sh
|
||||
|
||||
global_rematch() {
|
||||
local s="$2" regex=$1 debug=$3
|
||||
if [[ -z "$1" || -z "$2" ]]; then
|
||||
echo -e "usage: global_rematch <regex> <string> <debug flag>"
|
||||
else
|
||||
if [[ ! $s =~ $regex ]]; then
|
||||
[[ -n $debug ]] && echo -e "input string: $s"
|
||||
[[ -n $debug ]] && echo -e "input regex: $regex"
|
||||
echo -e "info: not matched!"
|
||||
fi
|
||||
while [[ $s =~ $regex ]]; do
|
||||
if [[ -n ${BASH_REMATCH[1]} ]];then
|
||||
[[ -n $debug ]] && echo "待匹配:$s"
|
||||
echo "${BASH_REMATCH[1]}"
|
||||
s=`echo $s | sed s/${BASH_REMATCH[1]}//g`
|
||||
[[ -n $debug ]] && echo "下次匹配:$s"
|
||||
else
|
||||
echo -e "info: regex not has match group!"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
echo "start download cronet info..."
|
||||
curl https://storage.googleapis.com/chromium-cronet/ -s > cronet
|
||||
global_rematch 'android.([0-9\.]+).Release.VERSION' "`cat cronet`" | tail -1 > lastest_cronet_version
|
||||
lastest_cronet_version=`cat lastest_cronet_version`
|
||||
echo "lastest_cronet_version: $lastest_cronet_version"
|
||||
|
||||
path=$GITHUB_WORKSPACE/gradle.properties
|
||||
current_cronet_version=`cat $path | grep CronetVersion | sed s/CronetVersion=//`
|
||||
echo "current_cronet_version: $current_cronet_version"
|
||||
|
||||
if [[ $current_cronet_version == $lastest_cronet_version ]];then
|
||||
echo "cronet is already latest"
|
||||
else
|
||||
sed -i s/CronetVersion=.*/CronetVersion=$lastest_cronet_version/ $path
|
||||
echo "start download latest cronet"
|
||||
chmod +x gradlew
|
||||
./gradlew app:downloadCronet
|
||||
fi
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
fetch-depth: 1
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
@@ -31,6 +31,7 @@ jobs:
|
||||
key: ${{ runner.os }}-legado-${{ hashFiles('**/updateLog.md') }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-legado-${{ hashFiles('**/updateLog.md') }}-
|
||||
|
||||
- name: Release Apk Sign
|
||||
run: |
|
||||
echo "给apk增加签名"
|
||||
@@ -39,17 +40,35 @@ jobs:
|
||||
sed '$a\RELEASE_KEY_ALIAS=legado' $GITHUB_WORKSPACE/gradle.properties -i
|
||||
sed '$a\RELEASE_STORE_PASSWORD=gedoor_legado' $GITHUB_WORKSPACE/gradle.properties -i
|
||||
sed '$a\RELEASE_KEY_PASSWORD=gedoor_legado' $GITHUB_WORKSPACE/gradle.properties -i
|
||||
|
||||
- name: Unify Version Name
|
||||
run: |
|
||||
echo "统一版本号"
|
||||
VERSION=$(date -d "8 hour" -u +3.%y.%m%d%H)
|
||||
echo "RELEASE_VERSION=$VERSION" >> $GITHUB_ENV
|
||||
sed "/def version/c def version = \"$VERSION\"" $GITHUB_WORKSPACE/app/build.gradle -i
|
||||
|
||||
- name: Set github-action[bot] info
|
||||
run: |
|
||||
git config --global user.name "github-actions[bot]"
|
||||
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
|
||||
- name: Download Lastest Cronet jar
|
||||
run: |
|
||||
echo "获取cronet最新版本"
|
||||
source $GITHUB_WORKSPACE/.github/scripts/cronet.sh
|
||||
git add *cronet*jar
|
||||
git add *cronet.json
|
||||
git add gradle.properties
|
||||
git commit -m "bump cronet version: $lastest_cronet_version"
|
||||
git push origin master
|
||||
|
||||
- name: Build With Gradle
|
||||
run: |
|
||||
echo "开始进行release构建"
|
||||
chmod +x gradlew
|
||||
./gradlew assembleRelease --build-cache --parallel
|
||||
|
||||
- name: Organize the Files
|
||||
run: |
|
||||
mkdir -p ${{ github.workspace }}/apk/
|
||||
@@ -60,12 +79,14 @@ jobs:
|
||||
with:
|
||||
name: legado apk
|
||||
path: ${{ github.workspace }}/apk/*.apk
|
||||
|
||||
- name: Upload App To Lanzou
|
||||
if: ${{ env.ylogin }}
|
||||
run: |
|
||||
path="$GITHUB_WORKSPACE/apk/"
|
||||
python3 $GITHUB_WORKSPACE/.github/scripts/lzy_web.py "$path" "$LANZOU_FOLDER_ID"
|
||||
echo "[$(date -u -d '+8 hour' '+%Y.%m.%d %H:%M:%S')] 分享链接: https://kunfei.lanzoux.com/b0f7pt4ja"
|
||||
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@59c3b4891632ff9a897f99a91d7bc557467a3a22
|
||||
with:
|
||||
@@ -81,8 +102,6 @@ jobs:
|
||||
- name: Push Assets To "release" Branch
|
||||
if: ${{ github.actor == 'gedoor' }}
|
||||
run: |
|
||||
git config --global user.name "github-actions[bot]"
|
||||
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git clone "https://${{ github.actor }}:${{ secrets.ACTIONS_TOKEN }}@github.com/${{ github.actor }}/release" -b release release-branch
|
||||
mv -f $GITHUB_WORKSPACE/apk/*.apk release-branch
|
||||
cd release-branch
|
||||
|
||||
Reference in New Issue
Block a user