Files
game-tracker/.gitea/workflows/pull_request.yaml
Felix Kirchner aa12bb301d
Some checks failed
Pull Request Pipeline / lint (pull_request) Has been skipped
Pull Request Pipeline / test (pull_request) Has been skipped
Pull Request Pipeline / build-android (pull_request) Failing after 53s
Tried new build workflow
2026-01-23 14:20:15 +01:00

109 lines
3.9 KiB
YAML

name: Pull Request Pipeline
on:
pull_request:
jobs:
build-android:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Java (Temurin 17)
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: '17'
- name: Install Android SDK command-line tools and components
run: |
set -euo pipefail
apt-get update
apt-get install -y unzip wget curl
export ANDROID_SDK_ROOT="$HOME/android-sdk"
mkdir -p "$ANDROID_SDK_ROOT"
# überscheibbare URL (z.B. für act: file:///github/home/cmdline-tools.zip)
URL="${ANDROID_CMDLINE_TOOLS_URL:-https://dl.google.com/android/repository/commandlinetools-linux_latest.zip}"
if [ ! -d "$ANDROID_SDK_ROOT/platform-tools" ]; then
echo "Downloading Android command-line tools from $URL"
curl -fSL "$URL" -o /tmp/cmdline.zip || { echo "Download failed. Set ANDROID_CMDLINE_TOOLS_URL or mount ZIP when using act."; exit 1; }
unzip -q /tmp/cmdline.zip -d /tmp/cmdline
# move into expected layout: cmdline-tools/latest
mkdir -p "$ANDROID_SDK_ROOT/cmdline-tools"
if [ -d /tmp/cmdline/cmdline-tools ]; then
mv /tmp/cmdline/cmdline-tools "$ANDROID_SDK_ROOT/cmdline-tools/latest"
else
# manche ZIPs packen die tools direkt
mv /tmp/cmdline/* "$ANDROID_SDK_ROOT/cmdline-tools/latest"
fi
else
echo "Android SDK already present, skipping download."
fi
export PATH="$ANDROID_SDK_ROOT/cmdline-tools/latest/bin:$ANDROID_SDK_ROOT/platform-tools:$PATH"
yes | sdkmanager --sdk_root="$ANDROID_SDK_ROOT" "platform-tools" "platforms;android-33" "build-tools;33.0.2"
yes | sdkmanager --sdk_root="$ANDROID_SDK_ROOT" --licenses
echo "$ANDROID_SDK_ROOT/platform-tools" >> $GITEA_PATH
- name: Install Flutter (wget)
run: |
wget --show-progress --progress=bar:force:noscroll:giga https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.38.2-stable.tar.xz
tar xf flutter_linux_3.38.2-stable.tar.xz
git config --global --add safe.directory "$(pwd)/flutter"
echo "$(pwd)/flutter/bin" >> $GITEA_PATH
- name: Get dependencies
run: flutter pub get
- name: Build APK
env:
ANDROID_SDK_ROOT: $HOME/android-sdk
ANDROID_HOME: $HOME/android-sdk
JAVA_HOME: $JAVA_HOME
run: flutter build apk --release
- name: Build IPA
run: flutter build ipa --no-codesign
lint:
runs-on: ubuntu-latest
if: false
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Flutter (wget)
run: |
wget --show-progress --progress=bar:force:noscroll:giga https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.38.2-stable.tar.xz
tar xf flutter_linux_3.38.2-stable.tar.xz
git config --global --add safe.directory "$(pwd)/flutter"
echo "$(pwd)/flutter/bin" >> $GITEA_PATH
- name: Get dependencies
run: flutter pub get
- name: Analyze Formatting
run: flutter analyze lib test
test:
runs-on: ubuntu-latest
if: false
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Flutter (wget)
run: |
wget --show-progress --progress=bar:force:noscroll:giga https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.38.2-stable.tar.xz
tar xf flutter_linux_3.38.2-stable.tar.xz
git config --global --add safe.directory "$(pwd)/flutter"
echo "$(pwd)/flutter/bin" >> $GITEA_PATH
- name: Get dependencies
run: flutter pub get
- name: Run tests
run: flutter test