49 lines
1.4 KiB
Docker
49 lines
1.4 KiB
Docker
FROM ubuntu:22.04
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
openjdk-21-jdk \
|
|
wget \
|
|
unzip \
|
|
curl \
|
|
python3 \
|
|
git \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Install Node.js 22
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \
|
|
apt-get install -y nodejs && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
# Setup Android SDK
|
|
ENV ANDROID_SDK_ROOT=/opt/android-sdk
|
|
ENV ANDROID_HOME=/opt/android-sdk
|
|
ENV PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin:$ANDROID_SDK_ROOT/platform-tools
|
|
|
|
RUN mkdir -p $ANDROID_SDK_ROOT/cmdline-tools
|
|
RUN cd /tmp && \
|
|
wget -q "https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip" -O cmdline-tools.zip && \
|
|
unzip -q cmdline-tools.zip && \
|
|
mv cmdline-tools $ANDROID_SDK_ROOT/cmdline-tools/latest && \
|
|
rm cmdline-tools.zip
|
|
|
|
RUN yes | $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --licenses 2>/dev/null || true
|
|
RUN $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager \
|
|
"platform-tools" "platforms;android-34" "build-tools;34.0.0"
|
|
|
|
WORKDIR /workspace
|
|
|
|
COPY package*.json ./
|
|
RUN npm install
|
|
|
|
COPY . .
|
|
RUN npm run build && npx cap add android && npx cap copy android && npx cap sync android
|
|
|
|
# Patch version to 1.0.1
|
|
RUN sed -i 's/versionName "1.0.0"/versionName "1.0.1"/' /workspace/android/app/build.gradle
|
|
|
|
WORKDIR /workspace/android
|
|
RUN chmod +x gradlew
|
|
RUN ./gradlew assembleDebug --no-daemon
|