ci(release): trim setup-android, drop broken Gradle cache, add job timeout #13
@@ -57,6 +57,10 @@ env:
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
# Fail fast on a genuinely wedged run (e.g. a stalled SDK/network download on
|
||||
# the self-hosted runner) instead of hanging forever and — because concurrency
|
||||
# is `cancel-in-progress: false` — blocking every later release behind it.
|
||||
timeout-minutes: 30
|
||||
# Don't loop on our own bump commit (belt-and-suspenders with [skip ci]).
|
||||
# Quoted because the expression contains a colon (`chore(release):`), which an
|
||||
# unquoted YAML scalar would misparse as a mapping value.
|
||||
@@ -149,6 +153,12 @@ jobs:
|
||||
- name: Set up Android SDK
|
||||
if: ${{ steps.plan.outputs.release == 'true' }}
|
||||
uses: android-actions/setup-android@v3
|
||||
with:
|
||||
# Only put cmdline-tools on PATH. The action's default package set drags in
|
||||
# the whole emulator + the legacy `tools` package (hundreds of MB, network-
|
||||
# bound on this runner) that a headless APK build never uses. The next step
|
||||
# installs exactly the packages we need.
|
||||
packages: ''
|
||||
|
||||
- name: Install Android SDK packages
|
||||
if: ${{ steps.plan.outputs.release == 'true' }}
|
||||
@@ -156,17 +166,6 @@ jobs:
|
||||
set +o pipefail
|
||||
yes | sdkmanager "platform-tools" "platforms;android-35" "build-tools;35.0.0"
|
||||
|
||||
- name: Cache Gradle
|
||||
if: ${{ steps.plan.outputs.release == 'true' }}
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle.kts', 'gradle/libs.versions.toml', 'gradle/wrapper/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
gradle-${{ runner.os }}-
|
||||
|
||||
- name: Decode signing keystore
|
||||
if: ${{ steps.plan.outputs.release == 'true' }}
|
||||
env:
|
||||
|
||||
Reference in New Issue
Block a user