Skip to content

Use preview SDK channel in release workflow #2

Use preview SDK channel in release workflow

Use preview SDK channel in release workflow #2

name: Release APK on Tag
on:
push:
tags:
- "**"
permissions:
contents: write
jobs:
build-and-release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: "17"
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v4
- name: Set up Android SDK
uses: android-actions/setup-android@v3
- name: Install Android platform
run: sdkmanager --channel=3 --install "platforms;android-37" "platform-tools"
- name: Grant Gradle wrapper permission
run: chmod +x ./gradlew
- name: Init Signature
run: |
touch local.properties
echo ALIAS_NAME='${{ secrets.KEYALIAS }}' >> local.properties
echo ALIAS_PASSWORD='${{ secrets.KEYPASSWORD }}' >> local.properties
echo KEY_PASSWORD='${{ secrets.STOREPASSWORD }}' >> local.properties
echo KEY_PATH='./app/key.jks' >> local.properties
echo ${{ secrets.STOREFILEBASE64 }} | base64 --decode > $GITHUB_WORKSPACE/app/key.jks
- name: Build release APK
run: ./gradlew :app:assembleRelease
- name: Prepare release asset
run: |
mkdir -p release-assets
if [ -f app/build/outputs/apk/release/app-release.apk ]; then
cp app/build/outputs/apk/release/app-release.apk "release-assets/CodexMacro-${{ github.ref_name }}.apk"
else
cp app/build/outputs/apk/release/app-release-unsigned.apk "release-assets/CodexMacro-${{ github.ref_name }}.apk"
fi
- name: Upload APK to GitHub Release
uses: softprops/action-gh-release@v2
with:
files: release-assets/CodexMacro-${{ github.ref_name }}.apk
generate_release_notes: true