Skip to content

fix it

fix it #189

Workflow file for this run

name: Build
on:
push:
branches: [main]
jobs:
lint:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- uses: gradle/actions/setup-gradle@v4
- name: Run lint
run: ./gradlew lint
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- uses: gradle/actions/setup-gradle@v4
- name: Build debug APK
env:
GITHUB_SHA: ${{ github.sha }}
run: ./gradlew assembleDebug
- name: Upload debug APK
uses: actions/upload-artifact@v4
with:
name: app-debug
path: app/build/outputs/apk/debug/app-debug.apk
sign:
needs: build
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- name: Download debug APK
uses: actions/download-artifact@v4.1.3
with:
name: app-debug
- name: Set up signing keystore
run: |
echo "${{ secrets.SIGNING_KEYSTORE_BASE64 }}" | base64 -d > "${{ runner.temp }}/release.keystore"
- name: Strip and sign APK
env:
SIGNING_KEYSTORE_PATH: ${{ runner.temp }}/release.keystore
SIGNING_KEYSTORE_PASSWORD: ${{ secrets.SIGNING_KEYSTORE_PASSWORD }}
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
run: |
BUILD_TOOLS_DIR=$(ls -d "$ANDROID_HOME"/build-tools/* | sort -V | tail -n 1)
"$BUILD_TOOLS_DIR/zipalign" -v -p 4 app-debug.apk app-release-aligned.apk
"$BUILD_TOOLS_DIR/apksigner" sign \
--ks "$SIGNING_KEYSTORE_PATH" \
--ks-pass "pass:$SIGNING_KEYSTORE_PASSWORD" \
--ks-key-alias "$SIGNING_KEY_ALIAS" \
--key-pass "pass:$SIGNING_KEY_PASSWORD" \
--out app-release.apk \
app-release-aligned.apk
- name: Upload release APK
uses: actions/upload-artifact@v4
with:
name: app-release
path: app-release.apk
draft-release:
needs: sign
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Download signed APK
uses: actions/download-artifact@v4.1.3
with:
name: app-release
- name: Rename APK
run: |
SHORT_SHA="${GITHUB_SHA:0:7}"
mv app-release.apk "andRemote2-dev-${SHORT_SHA}.apk"
echo "apk_name=andRemote2-dev-${SHORT_SHA}.apk" >> "$GITHUB_ENV"
- name: Delete existing dev release
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release delete dev --yes 2>/dev/null || true
- name: Create pre-release
uses: softprops/action-gh-release@v2
with:
tag_name: dev
name: Development Build
body: |
Automated development build from commit ${{ github.sha }} on ${{ github.ref_name }}.
This is a pre-release snapshot — not intended for production use.
draft: false
prerelease: true
make_latest: false
files: ${{ env.apk_name }}