fix it #189
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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 }} |