Reuse all media notifications #32
Workflow file for this run
This file contains 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 Android | |
on: | |
push: | |
branches: [ "android" ] | |
pull_request: | |
branches: [ "android" ] | |
jobs: | |
build: | |
environment: development | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: 📚Read package.json | |
id: pkg | |
uses: jaywcjlove/github-action-package@v1.3.0 | |
- name: Set Version Number Variable | |
id: versionNumber | |
uses: actions/github-script@v6 | |
with: | |
result-encoding: string | |
script: | | |
return `${{ steps.pkg.outputs.version }}-nightly-${${{ github.run_number }} + 387}` | |
- name: Update package.json name | |
uses: jossef/action-set-json-field@v2.1 | |
with: | |
file: package.json | |
field: name | |
value: freetube.nightly | |
- name: Update package.json version | |
uses: jossef/action-set-json-field@v2.1 | |
with: | |
file: package.json | |
field: version | |
value: ${{ steps.versionNumber.outputs.result }} | |
- name: 🧶 Yarn install | |
run: yarn ci | |
- name: 📦 Pack for 📱Android | |
run: yarn pack:android:dev | |
- name: 🦴 Fetch keystore from secrets | |
run: | | |
while read -r line; | |
do | |
echo "${line}" >> freetube.keystore.asc | |
done <<< '${{ secrets.KEYSTORE }}' | |
gpg -d --passphrase '${{ secrets.KEYSTORE_PASSWORD }}' --batch freetube.keystore.asc >> freetube.keystore | |
- name: Inject signing config from secrets | |
run: | | |
sed -i 's@// inject signing config@// inject signing config\r\nstorePassword = "${{ secrets.KEYSTORE_PASSWORD }}"@' android/app/build.gradle.kts | |
sed -i 's@// inject signing config@// inject signing config\r\nstoreFile = file("../../freetube.keystore")@' android/app/build.gradle.kts | |
sed -i 's@// inject signing config@// inject signing config\r\nkeyPassword = "${{ secrets.KEYSTORE_PASSWORD }}"@' android/app/build.gradle.kts | |
sed -i 's@// inject signing config@keyAlias = "freetubecordova"@' android/app/build.gradle.kts | |
cat android/app/build.gradle.kts | |
- name: Update name | |
run: | | |
sed -i 's/"FreeTube Android"/"FreeTube Nightly"/g' android/settings.gradle.kts | |
sed -i 's/FreeTube Android/FreeTube Nightly/g' android/app/src/main/res/values/strings.xml | |
- name: set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'temurin' | |
cache: gradle | |
- name: Grant execute permission for gradlew | |
run: cd android/ && chmod +x gradlew | |
- name: Build with Gradle | |
run: cd android/ && ./gradlew build | |
- name: 📡 Upload APK Artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: freetube-${{ steps.versionNumber.outputs.result }}-Android.apk | |
path: android/app/build/outputs/apk/debug/app-debug.apk |