You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
FYReader/.github/workflows/reader.yml

101 lines
3.8 KiB

3 years ago
name: Auto build and delay
3 years ago
on:
push:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
3 years ago
env:
# 登录蓝奏云后在控制台运行document.cookie
ylogin: ${{ secrets.LANZOU_ID }}
phpdisk_info: ${{ secrets.LANZOU_PSD }}
3 years ago
steps:
3 years ago
- uses: actions/checkout@v2
# 获取打包秘钥
- name: Checkout Android Keystore
uses: actions/checkout@v2
with:
repository: fengyuecanzhu/Key
token: ${{ secrets.KEY_TOKEN }} # 连接仓库的token,需要单独配置
path: keystore # 仓库的根目录名
# 打包release
- name: Build With Gradle
3 years ago
run: |
echo "开始进行release构建"
chmod +x gradlew
3 years ago
./gradlew assembleRelease --parallel
3 years ago
- name: Upload App To Artifact
3 years ago
uses: actions/upload-artifact@v2
with:
3 years ago
name: FYReader-apk
3 years ago
path: ${{ github.workspace }}/app/build/outputs/apk/release/*.apk
3 years ago
- name: Prepare Config
3 years ago
id: config
run: |
echo "获取是否需要创建release并获取配置"
source ${{ github.workspace }}/app/version_code.properties
version=$VERSION_CODE
hun=$(expr ${version} / 100)
ten=$(expr ${version} / 10)
ten=$(expr ${ten} % 10)
one=$(expr ${version} % 10)
versionN=$hun.$ten.$one
3 years ago
3 years ago
echo ::set-output name=need_create_release::"$NEED_CREATE_RELEASE"
echo ::set-output name=version_name::"$versionN"
3 years ago
3 years ago
echo need_create_release=$NEED_CREATE_RELEASE
echo version_name=v$versionN
3 years ago
3 years ago
if [[ $NEED_CREATE_RELEASE == 'true' ]];then
echo ::set-output name=lanzou_folder_id::"1608604"
echo ::set-output name=lanzou_share_url::"https://fycz.lanzoui.com/b00ngso7e"
else
echo ::set-output name=lanzou_folder_id::"2226473"
echo ::set-output name=lanzou_share_url::"https://fycz.lanzoui.com/b00nu1f8d"
3 years ago
fi
3 years ago
3 years ago
path="$GITHUB_WORKSPACE/app/build/outputs/apk/release"
files=$(ls $path)
for f in $files
do
if [[ $f == *"apk" ]]; then
file=$f
echo "[$(date -u -d '+8 hour' '+%Y.%m.%d %H:%M:%S')] 文件:$file"
break
fi
done
echo ::set-output name=file_name::"$file"
echo ::set-output name=file_path::"$path/$file"
3 years ago
- name: Create Release
id: create_release
3 years ago
if: ${{ steps.config.outputs.need_create_release == 'true' }}
3 years ago
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TZ: Asia/Shanghai
with:
tag_name: ${{ steps.config.outputs.version_name }}
release_name: FYReader_${{ steps.config.outputs.version_name }}
3 years ago
body_path: ${{ github.workspace }}/app/release.md
3 years ago
draft: false
3 years ago
- name: Upload Release Asset
id: upload_release_asset
3 years ago
if: ${{ steps.config.outputs.need_create_release == 'true' && steps.create_release.outputs.upload_url }}
3 years ago
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ steps.config.outputs.file_path }}
asset_name: FYReader_${{ steps.config.outputs.version_name }}.apk
asset_content_type: application/vnd.android.package-archive
- name: Upload App To Lanzou
if: ${{ env.ylogin }}
run: |
3 years ago
python3 $GITHUB_WORKSPACE/.github/scripts/lzy.py "${{ steps.config.outputs.file_path }}" "${{ steps.config.outputs.lanzou_folder_id }}"
echo "[$(date -u -d '+8 hour' '+%Y.%m.%d %H:%M:%S')] 分享链接: ${{ steps.config.outputs.lanzou_share_url }}"