From 58fd82e52b7fa6e37a37c7a31c3df7639fb774e6 Mon Sep 17 00:00:00 2001 From: mrleo1nid <43583385+mrleo1nid@users.noreply.github.com> Date: Tue, 20 Oct 2026 00:48:33 +0300 Subject: [PATCH] ci(release): build the APK for arm64-v8a only and report disk usage The v0.1.2 release ran out of disk while Gradle unpacked the NDK; building React Native's native code for four ABIs needs several more GB. Print df before the build and after a failure to make the next shortage obvious. Co-Authored-By: Claude Opus 5.5 --- .gitea/workflows/release.yml | 11 ++++++++++- docs/ci-cd.md | 4 ++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index aead00c..2287978 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -64,11 +64,20 @@ jobs: with: { node-version: "${{ env.NODE_VERSION }}", cache: pnpm } - run: pnpm install --frozen-lockfile + - name: Свободное место + run: df -h / /tmp + - name: Сборка APK working-directory: apps/mobile + # Только arm64-v8a: C++-часть React Native собирается под каждую ABI, и четыре ABI + # вместе с NDK (~2.5 ГБ) не помещаются на диск раннера. arm64 — все устройства с 2017+. run: | npx expo prebuild --platform android --clean --no-install - cd android && ./gradlew --no-daemon assembleRelease + cd android && ./gradlew --no-daemon assembleRelease -PreactNativeArchitectures=arm64-v8a + + - name: Свободное место после сбоя + if: failure() + run: df -h / /tmp; du -sh ~/.gradle ~/.android apps/mobile/android 2>/dev/null || true - name: Подпись APK env: diff --git a/docs/ci-cd.md b/docs/ci-cd.md index 48652c3..8b4ec27 100644 --- a/docs/ci-cd.md +++ b/docs/ci-cd.md @@ -3,6 +3,10 @@ Workflows лежат в `.gitea/workflows/`. Синтаксис совместим с GitHub Actions; runner — существующий `act_runner` с доступом к Docker. +Сборке APK нужно ~15 ГБ свободного места на хосте раннера (Android SDK, NDK ~2.5 ГБ, кэш Gradle, +C++-сборка React Native). APK собирается только под `arm64-v8a`. Если job падает с `No space left on device`, +освободите место на хосте раннера: `docker system prune -af` и старые кэши act в `~/.cache/act`. + ## Версионирование - SemVer, тег `vMAJOR.MINOR.PATCH` (предрелизы: `v1.2.0-rc.1` — помечаются как pre-release, мобильное их