mirror of
https://github.com/RoyalnetworkTR/simple-launcher.git
synced 2026-09-25 00:59:49 +03:00
Backend (PHP+SQLite): Discord OAuth2 + JWT, coklu hesap (1 Discord = 3-5), tek-kullanimlik join token (/api/join/prepare+verify), custom skin yukleme/sunma, hesap/Discord/HWID ban, admin paneli kartlari; deterministik offline UUID (PHP<->C# paritesi dogrulandi). 25 entegrasyon testi gecti. AthenaCore (Forge 1.12.2): tek client+server mod — join token dogrulama + kick, grace-gate, custom skin uygulama. Sunucu offline-mode kalir (UUID/dunya verisi korunur). Masaustu: WPF -> Avalonia (Windows+Linux), Discord giris/hesap/skin/oyna; WMI/DPAPI yerine cross-platform (machine-id HWID, AES-GCM secret store). Derlenir + calisir. CI: athenacore-mod.yml (JDK8), desktop-release.yml (Win+Linux self-contained). Deploy: deploy.sh (.env uretimi, php-gd, nginx Authorization gecisi) + HANDOFF.md. Android: backend hazir; entegrasyon spec'i ANDROID_INTEGRATION.md.
78 lines
2.4 KiB
YAML
78 lines
2.4 KiB
YAML
name: Athena Mobile APK (otomatik release)
|
||
|
||
# Telefon launcher'ını (AndroidLauncher/) CI'da derler ve otomatik release eder.
|
||
# - "v1.0.0" gibi bir etiket (tag) push'larsanız: APK derlenir ve o etikete Release olarak eklenir.
|
||
# - Actions sekmesinden elle de tetikleyebilirsiniz (workflow_dispatch).
|
||
#
|
||
# Yerel Android SDK gerektirmez; her şeyi GitHub runner'ı yapar.
|
||
|
||
on:
|
||
push:
|
||
tags:
|
||
- 'v*'
|
||
workflow_dispatch:
|
||
inputs:
|
||
release_tag:
|
||
description: 'Release etiketi (örn. v1.0.0)'
|
||
required: false
|
||
default: 'mobile-latest'
|
||
|
||
permissions:
|
||
contents: write # Release oluşturmak için
|
||
|
||
jobs:
|
||
build:
|
||
runs-on: ubuntu-latest
|
||
defaults:
|
||
run:
|
||
working-directory: AndroidLauncher
|
||
steps:
|
||
- name: Checkout
|
||
uses: actions/checkout@v4
|
||
|
||
- name: JDK 17 kur
|
||
uses: actions/setup-java@v4
|
||
with:
|
||
distribution: temurin
|
||
java-version: '17'
|
||
|
||
- name: Android SDK kur
|
||
uses: android-actions/setup-android@v3
|
||
|
||
- name: Gradle kur
|
||
uses: gradle/actions/setup-gradle@v4
|
||
with:
|
||
gradle-version: '8.9'
|
||
|
||
- name: APK derle (debug)
|
||
run: gradle assembleDebug --no-daemon --stacktrace
|
||
|
||
- name: APK'yı yeniden adlandır
|
||
run: |
|
||
mkdir -p out
|
||
APK=$(find app/build/outputs/apk -name '*.apk' | head -n1)
|
||
echo "Bulunan APK: $APK"
|
||
cp "$APK" "out/AthenaStudiosLauncher-mobile.apk"
|
||
|
||
- name: Artifact olarak yükle
|
||
uses: actions/upload-artifact@v4
|
||
with:
|
||
name: AthenaStudiosLauncher-mobile-apk
|
||
path: AndroidLauncher/out/AthenaStudiosLauncher-mobile.apk
|
||
if-no-files-found: error
|
||
|
||
- name: Otomatik Release
|
||
uses: softprops/action-gh-release@v2
|
||
with:
|
||
tag_name: ${{ github.ref_type == 'tag' && github.ref_name || inputs.release_tag }}
|
||
name: Athena Mobile ${{ github.ref_type == 'tag' && github.ref_name || inputs.release_tag }}
|
||
body: |
|
||
Athena Studios Launcher (Mobil) — otomatik derlenmiş APK.
|
||
Kurulum: APK'yı indirin, "Bilinmeyen kaynaklar"a izin verip kurun.
|
||
Yalnızca Athena modpack'ini (1.12.2 Forge) yükler ve oyna.athenastudios.com.tr'ye bağlanır.
|
||
files: AndroidLauncher/out/AthenaStudiosLauncher-mobile.apk
|
||
draft: false
|
||
prerelease: false
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|