From 40077da57fc7188589cc714c2d2257688f866506 Mon Sep 17 00:00:00 2001 From: tech08mag Date: Fri, 28 Aug 2026 22:00:13 +0200 Subject: [PATCH] new release pipe --- .gitea/workflows/build-apk.yml | 76 --------------------------------- .gitea/workflows/release.yml | 78 ++++++++++++++++++++++++++++++++-- 2 files changed, 75 insertions(+), 79 deletions(-) delete mode 100644 .gitea/workflows/build-apk.yml diff --git a/.gitea/workflows/build-apk.yml b/.gitea/workflows/build-apk.yml deleted file mode 100644 index fde3202..0000000 --- a/.gitea/workflows/build-apk.yml +++ /dev/null @@ -1,76 +0,0 @@ -name: Build APK - -on: - push: - branches: [main] - workflow_dispatch: - -env: - ANDROID_HOME: ${{ runner.tool_cache }}/android-sdk - ANDROID_SDK_ROOT: ${{ runner.tool_cache }}/android-sdk - -jobs: - build: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set up Node - uses: actions/setup-node@v4 - with: - node-version: 22 - - - name: Set up JDK - uses: actions/setup-java@v4 - with: - distribution: temurin - java-version: 17 - - - name: Install Android SDK - run: | - if [ -x "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" ]; then - echo "Android SDK already present in cache" - else - rm -rf "$ANDROID_HOME/cmdline-tools" - mkdir -p "$ANDROID_HOME/cmdline-tools" - wget -q https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip -O /tmp/cmdtools.zip - unzip -q /tmp/cmdtools.zip -d "$ANDROID_HOME/cmdline-tools" - mv "$ANDROID_HOME/cmdline-tools/cmdline-tools" "$ANDROID_HOME/cmdline-tools/latest" - fi - printf 'y\n' | "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" --licenses > /dev/null - "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" \ - "platform-tools" \ - "platforms;android-36" \ - "build-tools;36.0.0" \ - "ndk;27.1.12297006" - mkdir -p carry-your-live/android/app - echo "sdk.dir=$ANDROID_HOME" > carry-your-live/android/app/local.properties - - - name: Install JS dependencies - working-directory: carry-your-live - run: | - for i in {1..3}; do - npm ci && break || sleep 10 - done - - - name: Generate debug keystore (signs the release APK) - run: | - mkdir -p carry-your-live/android/app - rm -f carry-your-live/android/app/debug.keystore - keytool -genkeypair -v \ - -keystore carry-your-live/android/app/debug.keystore \ - -alias androiddebugkey -storepass android -keypass android \ - -keyalg RSA -keysize 2048 -validity 10000 \ - -dname "CN=Android Debug,O=Android,C=US" - - - name: Build release APK - run: | - cd carry-your-live/android - ./gradlew assembleRelease - - - name: Upload APK - uses: actions/upload-artifact@v4 - with: - name: carry-your-live-release - path: carry-your-live/android/app/build/outputs/release/app-release.apk diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index b45c676..93831c0 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -1,14 +1,86 @@ -name: release +name: Build and Release APK on: push: - branches: - - main + branches: [main] + workflow_dispatch: + +env: + ANDROID_HOME: ${{ runner.tool_cache }}/android-sdk + ANDROID_SDK_ROOT: ${{ runner.tool_cache }}/android-sdk permissions: contents: write jobs: + build: + runs-on: ubuntu-latest + outputs: + apk-path: ${{ steps.upload-apk.outputs.path }} + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up Node + uses: actions/setup-node@v4 + with: + node-version: 22 + + - name: Set up JDK + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: 17 + + - name: Install Android SDK + run: | + if [ -x "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" ]; then + echo "Android SDK already present in cache" + else + rm -rf "$ANDROID_HOME/cmdline-tools" + mkdir -p "$ANDROID_HOME/cmdline-tools" + wget -q https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip -O /tmp/cmdtools.zip + unzip -q /tmp/cmdtools.zip -d "$ANDROID_HOME/cmdline-tools" + mv "$ANDROID_HOME/cmdline-tools/cmdline-tools" "$ANDROID_HOME/cmdline-tools/latest" + fi + printf 'y\n' | "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" --licenses > /dev/null + "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" \ + "platform-tools" \ + "platforms;android-36" \ + "build-tools;36.0.0" \ + "ndk;27.1.12297006" + mkdir -p carry-your-live/android/app + echo "sdk.dir=$ANDROID_HOME" > carry-your-live/android/app/local.properties + + - name: Install JS dependencies + working-directory: carry-your-live + run: | + for i in {1..3}; do + npm ci && break || sleep 10 + done + + - name: Generate debug keystore (signs the release APK) + run: | + mkdir -p carry-your-live/android/app + rm -f carry-your-live/android/app/debug.keystore + keytool -genkeypair -v \ + -keystore carry-your-live/android/app/debug.keystore \ + -alias androiddebugkey -storepass android -keypass android \ + -keyalg RSA -keysize 2048 -validity 10000 \ + -dname "CN=Android Debug,O=Android,C=US" + + - name: Build release APK + run: | + cd carry-your-live/android + ./gradlew assembleRelease + + - name: Upload APK + id: upload-apk + uses: actions/upload-artifact@v4 + with: + name: carry-your-live-release + path: carry-your-live/android/app/build/outputs/release/app-release.apk + release: needs: build runs-on: ubuntu-latest -- 2.54.0