name: Android on: push: tags: - "v*" jobs: android: runs-on: godot steps: - name: Checkout uses: actions/checkout@v4 with: lfs: true - 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"