nodeshiftmusicburmalda/.github/workflows/main.yml
2026-04-28 22:18:43 +05:00

79 lines
2.5 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: Build iOS IPA (Brute Force Edition)
on:
push:
branches: [main, master]
workflow_dispatch:
jobs:
build:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node 18
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Kill and Reinstall Dependencies
run: |
rm -rf node_modules
rm -f package-lock.json
# Ставим всё с игнором конфликтов
npm install --legacy-peer-deps
# Принудительно вбиваем костыль в проблемные пакеты
npm install react-native-track-player react-native-svg --legacy-peer-deps --force
- name: Pre-build Git Cleanup
run: |
git config --global user.email "bot@example.com"
git config --global user.name "Builder Bot"
git add .
git commit -m "ci: silent cleanup" || true
- name: Expo Prebuild
run: |
# Используем npx expo install для проверки совместимости перед пребилдом
npx expo install --check
npx expo prebuild --platform ios --clean
env:
EXPO_NO_DOTENV: 1
- name: Build Unsigned IPA
run: |
WORKSPACE=$(find ios -name "*.xcworkspace" -type d | head -1)
SCHEME=$(basename "$WORKSPACE" .xcworkspace)
xcodebuild build \
-workspace "$WORKSPACE" \
-scheme "$SCHEME" \
-configuration Release \
-sdk iphoneos \
-derivedDataPath "$RUNNER_TEMP/DerivedData" \
CODE_SIGN_IDENTITY="" \
CODE_SIGNING_REQUIRED=NO \
CODE_SIGNING_ALLOWED=NO \
AD_HOC_CODE_SIGNING_ALLOWED=YES
- name: Export IPA
run: |
# Ищем скомпилированный .app и пакуем его
APP_PATH=$(find "$RUNNER_TEMP/DerivedData/Build/Products" -name "*.app" -type d | grep -v "\.xctest" | head -1)
if [ -z "$APP_PATH" ]; then
echo "Failed to find .app file"
exit 1
fi
mkdir -p Payload
cp -r "$APP_PATH" Payload/
zip -qr burmalda-unsigned.ipa Payload
rm -rf Payload
- name: Upload
uses: actions/upload-artifact@v4
with:
name: burmalda-unsigned-ipa
path: burmalda-unsigned.ipa
retention-days: 7