91 lines
2.2 KiB
YAML
91 lines
2.2 KiB
YAML
name: Android
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v*"
|
|
|
|
jobs:
|
|
android:
|
|
runs-on: godot
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Godot version
|
|
run: godot --version
|
|
|
|
- name: Prepare Godot
|
|
run: |
|
|
rm -rf .godot
|
|
|
|
godot \
|
|
--headless \
|
|
--path . \
|
|
--editor \
|
|
--quit \
|
|
--verbose
|
|
|
|
|
|
- name: Build APK
|
|
run: |
|
|
mkdir -p build
|
|
|
|
godot \
|
|
--headless \
|
|
--path . \
|
|
--editor \
|
|
--quit
|
|
|
|
godot \
|
|
--headless \
|
|
--path . \
|
|
--export-release "Android" \
|
|
build/app.apk
|
|
|
|
|
|
- name: Check imported resources
|
|
run: |
|
|
echo "=== PNG imports ==="
|
|
find .godot/imported -iname '*habitable*' -o -iname '*civ2*'
|
|
|
|
echo "=== PNG files ==="
|
|
ls -lh ui/4-life/habitable_planet.png
|
|
ls -lh ui/4-life/civ2.png
|
|
|
|
|
|
- name: Verify APK
|
|
run: |
|
|
test -f build/app.apk
|
|
ls -lh build/app.apk
|
|
|
|
- name: Create Release
|
|
env:
|
|
GITEA_TOKEN: ${{ secrets.RELEASE_TOKEN }}
|
|
run: |
|
|
curl -f \
|
|
-X POST \
|
|
-H "Authorization: token ${GITEA_TOKEN}" \
|
|
-H "Content-Type: application/json" \
|
|
"https://gt.owad.ru/api/v1/repos/K/owniverse/releases" \
|
|
-d "{
|
|
\"tag_name\": \"${GITHUB_REF_NAME}\",
|
|
\"name\": \"${GITHUB_REF_NAME}\",
|
|
\"body\": \"Android build ${GITHUB_REF_NAME}\"
|
|
}"
|
|
|
|
- name: Upload APK to Release
|
|
env:
|
|
GITEA_TOKEN: ${{ secrets.RELEASE_TOKEN }}
|
|
run: |
|
|
RELEASE_ID=$(curl -fsS \
|
|
-H "Authorization: token ${GITEA_TOKEN}" \
|
|
"https://gt.owad.ru/api/v1/repos/K/owniverse/releases/tags/${GITHUB_REF_NAME}" \
|
|
| python3 -c 'import sys,json; print(json.load(sys.stdin)["id"])')
|
|
|
|
curl -f \
|
|
-X POST \
|
|
-H "Authorization: token ${GITEA_TOKEN}" \
|
|
-F "attachment=@build/app.apk" \
|
|
"https://gt.owad.ru/api/v1/repos/K/owniverse/releases/${RELEASE_ID}/assets?name=owniverse-${GITHUB_REF_NAME}.apk" |