Skip to content

Update release.yaml #34

Update release.yaml

Update release.yaml #34

Workflow file for this run

name: Build
on:
push:
branches:
- "master"
paths-ignore:
- "*.md"
- "*.sh"
- "release.yaml"
# - "sync_frp.yaml"
workflow_dispatch:
jobs:
android:
runs-on: ubuntu-latest
env:
output: "${{ github.workspace }}/build/app/outputs/apk/release"
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Download AList Source Code
run: |
cd $GITHUB_WORKSPACE/alist-lib/scripts
chmod +x *.sh
./init_alist.sh
./init_web.sh
- uses: actions/setup-go@v4
with:
go-version: 1.21.5
cache-dependency-path: ${{ github.workspace }}/alist-lib/alist/go.sum
- uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17
- name: Setup Gradle
uses: gradle/[email protected]
- name: Build AList
run: |
cd $GITHUB_WORKSPACE/alist-lib/scripts
chmod +x *.sh
./init_gomobile.sh
./gobind.sh
- name: Upload AAR
uses: actions/upload-artifact@v3
with:
name: "AList"
path: "${{ github.workspace }}/android/app/libs/*.aar"
- name: Init Signature
run: |
touch local.properties
cd android
echo ALIAS_NAME='${{ secrets.ALIAS_NAME }}' >> local.properties
echo ALIAS_PASSWORD='${{ secrets.ALIAS_PASSWORD }}' >> local.properties
echo KEY_PASSWORD='${{ secrets.KEY_PASSWORD }}' >> local.properties
echo KEY_PATH='./key.jks' >> local.properties
# 从Secrets读取无换行符Base64解码, 然后保存到到app/key.jks
echo ${{ secrets.KEY_STORE }} | base64 --decode > $GITHUB_WORKSPACE/android/app/key.jks
- uses: subosito/flutter-action@v2
with:
flutter-version: '3.16.7'
- run: flutter build apk --split-per-abi --release
- name: Upload missing_rules.txt
if: failure() && steps.gradle.outcome != 'success'
uses: actions/upload-artifact@v3
with:
name: "missing_rules"
path: "${{ github.workspace }}/build/app/outputs/mapping/release/missing_rules.txt"
- name: Init APP Version Name
run: |
echo "ver_name=$(grep -m 1 'versionName' ${{ env.output }}/output-metadata.json | cut -d\" -f4)" >> $GITHUB_ENV
- name: Upload App To Artifact arm64-v8a
if: success () || failure ()
uses: actions/upload-artifact@v3
with:
name: "AListFlutter-v${{ env.ver_name }}_arm64-v8a"
path: "${{ env.output }}/*-v8a.apk"
- name: Upload App To Artifact arm-v7a
if: success () || failure ()
uses: actions/upload-artifact@v3
with:
name: "AListFlutter-v${{ env.ver_name }}_arm-v7a"
path: "${{ env.output }}/*-v7a.apk"
- name: Upload App To Artifact x86
if: success () || failure ()
uses: actions/upload-artifact@v3
with:
name: "AListFlutter-v${{ env.ver_name }}_x86_64"
path: "${{ env.output }}/*64.apk"