Skip to content

github: add wearapp to workflow #30

github: add wearapp to workflow

github: add wearapp to workflow #30

Workflow file for this run

name: Android CI
env:
app_name: SimpleWeather
variant: nongms
buildToolsVersion: "35.0.0"
on:
push:
branches: [ "public" ]
tags:
- 'v*'
workflow_dispatch:
jobs:
debug:
name: Debug APK
if: ${{ !startsWith(github.ref, 'refs/tags/v') }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
# Set Current Date As Env Variable
- name: Set current date as env variable
run: echo "date_today=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
- name: set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'zulu'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
# Clean build
- name: Clean build
run: ./gradlew clean
# App APK Debug
- name: Build app debug APK
run: ./gradlew :app:assemble${{ env.variant }}Debug
# Move to staging
- name: Copy app debug APK
run: mv app/build/outputs/apk/${{ env.variant }}/debug/app-${{ env.variant }}-debug.apk app-${{ env.variant }}-debug.apk
# Wear APK Debug
- name: Build wearapp debug APK
run: ./gradlew :wearapp:assemble${{ env.variant }}Debug
# Move to staging
- name: Copy wearapp debug APK
run: mv wearapp/build/outputs/apk/${{ env.variant }}/debug/wearapp-${{ env.variant }}-debug.apk wearapp-${{ env.variant }}-debug.apk
# Upload apks
- name: Upload app debug APK
uses: actions/upload-artifact@v3
with:
name: app-${{ env.variant }}-${{ env.date_today }}-debug.apk
path: app-${{ env.variant }}-debug.apk
- name: Upload wearapp debug APK
uses: actions/upload-artifact@v3
with:
name: wearapp-${{ env.variant }}-${{ env.date_today }}-debug.apk
path: wearapp-${{ env.variant }}-debug.apk
release:
name: Release APK
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
# Set Current Date As Env Variable
- name: Set current date as env variable
run: echo "date_today=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
- name: set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'zulu'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
# Clean build
- name: Clean build
run: ./gradlew clean
# App APK Release
- name: Build app release APK
run: ./gradlew :app:assemble${{ env.variant }}Release
# Sign apk
- name: Sign app release APK
uses: r0adkll/sign-android-release@f30bdd30588842ac76044ecdbd4b6d0e3e813478
id: sign_app
with:
releaseDirectory: app/build/outputs/apk/${{ env.variant }}/release
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
env:
BUILD_TOOLS_VERSION: ${{ env.buildToolsVersion }}
# Move to staging
- name: Copy app release APK
run: mv app/build/outputs/apk/${{ env.variant }}/release/app-${{ env.variant }}-release-signed.apk app-${{ env.variant }}-release.apk
# Wear APK Release
- name: Build wearapp release APK
run: ./gradlew :wearapp:assemble${{ env.variant }}Release
# Sign apk
- name: Sign wearapp release APK
uses: r0adkll/sign-android-release@f30bdd30588842ac76044ecdbd4b6d0e3e813478
id: sign_app

Check failure on line 108 in .github/workflows/android.yml

View workflow run for this annotation

GitHub Actions / Android CI

Invalid workflow file

The workflow is not valid. .github/workflows/android.yml (Line: 108, Col: 13): The identifier 'sign_app' may not be used more than once within the same scope.
with:
releaseDirectory: wearapp/build/outputs/apk/${{ env.variant }}/release
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
env:
BUILD_TOOLS_VERSION: ${{ env.buildToolsVersion }}
# Move to staging
- name: Copy wearapp release APK
run: mv wearapp/build/outputs/apk/${{ env.variant }}/release/wearapp-${{ env.variant }}-release-signed.apk wearapp-${{ env.variant }}-release.apk
# Upload apks
- name: Upload app release APK
uses: actions/upload-artifact@v3
with:
name: app-${{ env.variant }}-${{ env.date_today }}-release.apk
path: app-${{ env.variant }}-release.apk
# Upload apks
- name: Upload wear release APK
uses: actions/upload-artifact@v3
with:
name: wearapp-${{ env.variant }}-${{ env.date_today }}-release.apk
path: wearapp-${{ env.variant }}-release.apk
# Prepare Github release
- name: Upload files to a GitHub release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ github.ref }}
draft: true
name: SimpleWeather ${{ github.ref }}
target_commitish: public
generate_release_notes: true
preserve_order: true
files: |
app-${{ env.variant }}-release.apk
wearapp-${{ env.variant }}-release.apk