Skip to content

feat(canvas): add Apple Music and BetterLyrics artwork #3781

feat(canvas): add Apple Music and BetterLyrics artwork

feat(canvas): add Apple Music and BetterLyrics artwork #3781

Workflow file for this run

name: Build PR
on:
pull_request:
branches:
- "**"
# Weblate PRs only touch localized string files, which cannot break a
# build that the base branch already compiles. The default (unsuffixed)
# `values/` directory is deliberately not listed, so English string
# changes still build.
paths-ignore:
- "app/src/main/res/values-*/strings.xml"
- "app/src/main/res/values-*/metrolist_strings.xml"
- "fastlane/**"
concurrency:
group: ${{ github.workflow }}-${{ github.event.number }}
cancel-in-progress: true
jobs:
build:
runs-on: blacksmith-4vcpu-ubuntu-2404
timeout-minutes: 20
steps:
- uses: actions/checkout@v6
with:
submodules: recursive
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: 21
distribution: "temurin"
- name: Set Up Gradle
uses: gradle/actions/setup-gradle@v5
with:
cache-read-only: true
cache-cleanup: on-success
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Restore PR debug keystore
id: pr_keystore
uses: actions/cache/restore@v5
with:
path: app/pr-debug.keystore
key: pr-debug-keystore-${{ github.event.number }}
- name: Generate PR debug keystore if not cached
if: steps.pr_keystore.outputs.cache-hit != 'true'
run: |
keytool -genkeypair -v \
-keystore app/pr-debug.keystore \
-storepass android \
-alias androiddebugkey \
-keypass android \
-keyalg RSA \
-keysize 2048 \
-validity 10000 \
-dname "CN=Metrolist PR ${{ github.event.number }},O=Metrolist,C=US"
- name: Save PR debug keystore
if: steps.pr_keystore.outputs.cache-hit != 'true'
uses: actions/cache/save@v5
with:
path: app/pr-debug.keystore
key: ${{ steps.pr_keystore.outputs.cache-primary-key }}
- name: Build GMS Debug APK
run: ./gradlew --console=plain assembleGmsDebug --warning-mode summary
env:
GITHUB_EVENT_NAME: ${{ github.event_name }}
METROLIST_APPLICATION_ID: com.metrolist.music.pr.p${{ github.event.number }}
METROLIST_APP_NAME: Metrolist PR ${{ github.event.number }}
METROLIST_DEBUG_KEYSTORE_PATH: pr-debug.keystore
PULL_REQUEST: "true"
LASTFM_API_KEY: ${{ secrets.LASTFM_API_KEY }}
LASTFM_SECRET: ${{ secrets.LASTFM_SECRET }}
- name: Upload APK
uses: actions/upload-artifact@v6
with:
name: app-universal-debug-pr-${{ github.event.number }}
path: app/build/outputs/apk/gms/debug/*.apk