Update CI

Co-authored-by: scdhh <51957264+shoucandanghehe@users.noreply.github.com>
This commit is contained in:
MrZ626
2021-08-21 01:15:14 +08:00
parent 9fe045b916
commit 8671b52cbb
5 changed files with 194 additions and 92 deletions

View File

@@ -191,11 +191,14 @@ jobs:
name: ${{ env.Title }}
files: Techmino.a${{ env.Version }}.AppImage
#Android待更新
build-android:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Install lua
run: |
sudo apt-get update -y
@@ -212,39 +215,62 @@ jobs:
run: |
Title=$(lua ./.github/workflows/getVersion.lua -updateTitle)
echo "Title=${Title}" >> $GITHUB_ENV
- name: Download Apktool
run: curl -OL https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_2.5.0.jar
- name: Unpack and Repack
- name: Clone love-android
run: |
curl -OL https://github.com/26F-Studio/Techmino/releases/download/v0.15.1/Techmino.apk
java -jar ./apktool_2.5.0.jar d -s -o apk ./Techmino.apk
7z x ./apk/assets/game.love libAndroid -o.
rm -rf ./apk/assets/game.love ./Techmino.apk
7z a -tzip ./apk/assets/game.love ./document ./libAndroid ./media ./parts ./Zframework ./conf.lua ./font.ttf ./main.lua ./version.lua
python3 ./.github/workflows/updateVersion.py -T Android -C $(lua ./.github/workflows/getVersion.lua -code) -N $(lua ./.github/workflows/getVersion.lua -name)
java -jar ./apktool_2.5.0.jar b -o apk ./Techmino.a${{ env.Version }}.apk
- uses: 26F-Studio/sign-android-release@master
name: Sign APK
id: sign_app
with:
releaseDirectory: ./Techmino.a${{ env.Version }}.apk
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
env:
BUILD_TOOLS_VERSION: "30.0.2"
git clone --recurse-submodules https://github.com/26F-Studio/love-android
cd ./love-android
git checkout --recurse-submodules CI
- name: Download androidSDK
run: |
wget -O commandlinetools.zip https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip
- name: Unpack androidSDK
run: |
unzip ./commandlinetools.zip
- name: Install SDK NDK
run: |
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=. --install "platforms;android-30"
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=. --install "ndk;21.3.6528147"
export ANDROID_HOME=$(pwd)
- name: Download ColdClear
run: |
curl -OL https://github.com/26F-Studio/cold_clear_ai_love2d_wrapper/releases/download/latest/android_aarch64.zip
curl -OL https://github.com/26F-Studio/cold_clear_ai_love2d_wrapper/releases/download/latest/android_armv7.zip
- name: Unpack ColdClear
run: |
7z x ./android_aarch64.zip -oColdClear/android_aarch64
7z x ./android_armv7.zip -oColdClear/android_armv7
- name: Pack Techmino
run: |
mkdir -p ./love-android/app/src/main/assets
mkdir -p ./love-android/app/libs/arm64-v8a
mkdir -p ./love-android/app/libs/armeabi-v7a
mv ./ColdClear/android_aarch64/love-11.3-android/lib/arm64-v8a/libcold_clear.so ./love-android/app/libs/arm64-v8a
mv ./ColdClear/android_armv7/love-11.3-android/lib/armeabi-v7a/libcold_clear.so ./love-android/app/libs/armeabi-v7a
mkdir -p ./libAndroid/arm64-v8a
mkdir -p ./libAndroid/armeabi-v7a
mv ./ColdClear/android_aarch64/libs/arm64-v8a/libCCloader.so ./libAndroid/arm64-v8a
mv ./ColdClear/android_armv7/libs/armeabi-v7a/libCCloader.so ./libAndroid/armeabi-v7a
7z a -tzip ./love-android/app/src/main/assets/game.love ./document ./media ./parts ./Zframework ./libAndroid ./conf.lua ./font.ttf ./main.lua ./version.lua
echo "${{ secrets.SIGNING_KEY }}" | base64 -d > ./love-android/app/android.keystore
python3 ./.github/workflows/updateVersion.py -T AndroidRelease -C $(lua ./.github/workflows/getVersion.lua -code) -N $(lua ./.github/workflows/getVersion.lua -name) -S ${{ secrets.KEY_STORE_PASSWORD }} -A ${{ secrets.ALIAS }} -K ${{ secrets.KEY_PASSWORD }}
chmod 777 ./love-android/gradlew
cd ./love-android/
./gradlew assembleRelease
mv ./app/build/outputs/apk/release/app-release.apk ./app/build/outputs/apk/release/Techmino.a${{ env.Version }}.apk
- name: Release
uses: softprops/action-gh-release@v1
with:
name: ${{ env.Title }}
files: ${{steps.sign_app.outputs.signedReleaseFile}}
files: ./love-android/app/build/outputs/apk/release/Techmino.a${{ env.Version }}.apk
#Android-mini待更新
build-android-mini:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Install lua
run: |
sudo apt-get update -y
@@ -261,34 +287,54 @@ jobs:
run: |
Title=$(lua ./.github/workflows/getVersion.lua -updateTitle)
echo "Title=${Title}" >> $GITHUB_ENV
- name: Download Apktool
run: curl -OL https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_2.5.0.jar
- name: Unpack and Repack
- name: Clone love-android
run: |
curl -OL https://github.com/26F-Studio/Techmino/releases/download/v0.15.1/Techmino.apk
java -jar ./apktool_2.5.0.jar d -s -o apk ./Techmino.apk
7z x ./apk/assets/game.love libAndroid -o.
rm -rf ./apk/assets/game.love ./Techmino.apk
git clone --recurse-submodules https://github.com/26F-Studio/love-android
cd ./love-android
git checkout --recurse-submodules CI
- name: Download androidSDK
run: |
wget -O commandlinetools.zip https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip
- name: Unpack androidSDK
run: |
unzip ./commandlinetools.zip
- name: Install SDK NDK
run: |
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=. --install "platforms;android-30"
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=. --install "ndk;21.3.6528147"
export ANDROID_HOME=$(pwd)
- name: Download ColdClear
run: |
curl -OL https://github.com/26F-Studio/cold_clear_ai_love2d_wrapper/releases/download/latest/android_aarch64.zip
curl -OL https://github.com/26F-Studio/cold_clear_ai_love2d_wrapper/releases/download/latest/android_armv7.zip
- name: Unpack ColdClear
run: |
7z x ./android_aarch64.zip -oColdClear/android_aarch64
7z x ./android_armv7.zip -oColdClear/android_armv7
- name: Pack Techmino
run: |
mkdir -p ./love-android/app/src/main/assets
mkdir -p ./love-android/app/libs/arm64-v8a
mkdir -p ./love-android/app/libs/armeabi-v7a
mv ./ColdClear/android_aarch64/love-11.3-android/lib/arm64-v8a/libcold_clear.so ./love-android/app/libs/arm64-v8a
mv ./ColdClear/android_armv7/love-11.3-android/lib/armeabi-v7a/libcold_clear.so ./love-android/app/libs/armeabi-v7a
mkdir -p ./libAndroid/arm64-v8a
mkdir -p ./libAndroid/armeabi-v7a
mv ./ColdClear/android_aarch64/libs/arm64-v8a/libCCloader.so ./libAndroid/arm64-v8a
mv ./ColdClear/android_armv7/libs/armeabi-v7a/libCCloader.so ./libAndroid/armeabi-v7a
rm -rf ./media/BGM ./media/SFX ./media/VOICE
7z a -tzip ./apk/assets/game.love ./document ./libAndroid ./media ./parts ./Zframework ./conf.lua ./font.ttf ./main.lua ./version.lua
python3 ./.github/workflows/updateVersion.py -T Android -C $(lua ./.github/workflows/getVersion.lua -code) -N $(lua ./.github/workflows/getVersion.lua -name)
java -jar ./apktool_2.5.0.jar b -o apk ./Techmino.a${{ env.Version }}.mini.apk
- uses: 26F-Studio/sign-android-release@master
name: Sign APK
id: sign_app
with:
releaseDirectory: ./Techmino.a${{ env.Version }}.mini.apk
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
env:
BUILD_TOOLS_VERSION: "30.0.2"
7z a -tzip ./love-android/app/src/main/assets/game.love ./document ./media ./parts ./Zframework ./libAndroid ./conf.lua ./font.ttf ./main.lua ./version.lua
echo "${{ secrets.SIGNING_KEY }}" | base64 -d > ./love-android/app/android.keystore
python3 ./.github/workflows/updateVersion.py -T AndroidRelease -C $(lua ./.github/workflows/getVersion.lua -code) -N $(lua ./.github/workflows/getVersion.lua -name) -S ${{ secrets.KEY_STORE_PASSWORD }} -A ${{ secrets.ALIAS }} -K ${{ secrets.KEY_PASSWORD }}
chmod 777 ./love-android/gradlew
cd ./love-android/
./gradlew assembleRelease
mv ./app/build/outputs/apk/release/app-release.apk ./app/build/outputs/apk/release/Techmino.a${{ env.Version }}.mini.apk
- name: Release
uses: softprops/action-gh-release@v1
with:
name: ${{ env.Title }}
files: ${{steps.sign_app.outputs.signedReleaseFile}}
files: ./love-android/app/build/outputs/apk/release/Techmino.a${{ env.Version }}.mini.apk
build-macOS:
runs-on: macos-10.15
@@ -368,6 +414,7 @@ jobs:
- name: Get ReleaseTitle
run: |
Title=$(lua ./.github/workflows/getVersion.lua -updateTitle)
echo "Title=${Title}" >> $GITHUB_ENV
- name: Pack Techmino
run: |
7z a -tzip ./Techmino.a${{ env.Version }}.love ./document ./media ./parts ./Zframework ./conf.lua ./font.ttf ./main.lua ./version.lua
@@ -388,14 +435,13 @@ jobs:
sudo apt-get install lua5.3 -y
- name: Get ReleaseTitle
run: |
Title=lua ./.github/workflows/getVersion.lua -updateTitle
Title=$(lua ./.github/workflows/getVersion.lua -updateTitle)
echo "Title=${Title}" >> $GITHUB_ENV
- name: Get ReleaseNote
run: |
Note=lua ./.github/workflows/getVersion.lua -updateNote
echo "Note=${Note}" >> $GITHUB_ENV
lua ./.github/workflows/getVersion.lua -updateNote > updateNote.txt
- name: Release
uses: softprops/action-gh-release@v1
with:
name: ${{ env.Title }}
body: ${{ env.Note }}
body_path: ./updateNote.txt