remove Android CI workflow and Dockerfile
All checks were successful
CI / update (push) Successful in 2m18s
All checks were successful
CI / update (push) Successful in 2m18s
APK build and deploy is now handled by a local post-commit hook using scripts/android-build-deploy.sh + rsync.
This commit is contained in:
@@ -1,34 +0,0 @@
|
|||||||
name: Android APK
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ master ]
|
|
||||||
paths:
|
|
||||||
- 'src-tauri/**'
|
|
||||||
- 'Dockerfile.android'
|
|
||||||
- '.gitea/workflows/android.yml'
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Build APK in container
|
|
||||||
run: |
|
|
||||||
docker build -f Dockerfile.android -t bocken-android .
|
|
||||||
docker create --name apk-extract bocken-android
|
|
||||||
docker cp apk-extract:/tmp/Bocken.apk ./Bocken.apk
|
|
||||||
docker rm apk-extract
|
|
||||||
|
|
||||||
- name: Deploy APK to server
|
|
||||||
uses: appleboy/scp-action@master
|
|
||||||
with:
|
|
||||||
host: bocken.org
|
|
||||||
username: homepage
|
|
||||||
key: ${{ secrets.homepage_ssh }}
|
|
||||||
passphrase: ${{ secrets.homepage_pass }}
|
|
||||||
port: 22
|
|
||||||
source: "Bocken.apk"
|
|
||||||
target: "/var/www/static/"
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
FROM rust:slim-trixie
|
|
||||||
|
|
||||||
# Java 21 + build tools
|
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
||||||
openjdk-21-jdk-headless unzip wget curl ca-certificates && \
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
|
||||||
ENV JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
|
|
||||||
|
|
||||||
# Android SDK
|
|
||||||
ENV ANDROID_HOME=/opt/android-sdk
|
|
||||||
RUN mkdir -p "$ANDROID_HOME/cmdline-tools" && \
|
|
||||||
wget -q https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip -O /tmp/tools.zip && \
|
|
||||||
unzip -q /tmp/tools.zip -d "$ANDROID_HOME/cmdline-tools" && \
|
|
||||||
mv "$ANDROID_HOME/cmdline-tools/cmdline-tools" "$ANDROID_HOME/cmdline-tools/latest" && \
|
|
||||||
rm /tmp/tools.zip
|
|
||||||
ENV PATH="$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$PATH"
|
|
||||||
RUN yes | sdkmanager --licenses > /dev/null 2>&1 && \
|
|
||||||
sdkmanager "platforms;android-36" "build-tools;35.0.0" "ndk;27.0.12077973"
|
|
||||||
ENV NDK_HOME="$ANDROID_HOME/ndk/27.0.12077973"
|
|
||||||
|
|
||||||
# Rust Android targets
|
|
||||||
RUN rustup target add aarch64-linux-android armv7-linux-androideabi x86_64-linux-android
|
|
||||||
|
|
||||||
# Node 22 + pnpm
|
|
||||||
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \
|
|
||||||
apt-get install -y nodejs && \
|
|
||||||
npm install -g pnpm@latest && \
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
# Install deps first (cache layer)
|
|
||||||
COPY package.json pnpm-lock.yaml ./
|
|
||||||
RUN pnpm install --frozen-lockfile
|
|
||||||
|
|
||||||
# Copy source
|
|
||||||
COPY . .
|
|
||||||
|
|
||||||
# Build APK
|
|
||||||
RUN pnpm tauri android build --apk
|
|
||||||
|
|
||||||
# Sign APK
|
|
||||||
RUN keytool -genkey -v -keystore /tmp/debug.keystore \
|
|
||||||
-alias debug -keyalg RSA -keysize 2048 -validity 10000 \
|
|
||||||
-storepass android -keypass android \
|
|
||||||
-dname "CN=Debug,O=Bocken,C=DE" && \
|
|
||||||
"$ANDROID_HOME/build-tools/35.0.0/zipalign" -f -v 4 \
|
|
||||||
src-tauri/gen/android/app/build/outputs/apk/universal/release/app-universal-release-unsigned.apk \
|
|
||||||
/tmp/Bocken.apk > /dev/null && \
|
|
||||||
"$ANDROID_HOME/build-tools/35.0.0/apksigner" sign \
|
|
||||||
--ks /tmp/debug.keystore --ks-pass pass:android --key-pass pass:android \
|
|
||||||
/tmp/Bocken.apk
|
|
||||||
Reference in New Issue
Block a user