I'm using GitHub Workflows to generate an iOS .ipa build because I don’t have a MacBook, and this setup helped me produce IPA files remotely before. Back in June 2025, I successfully built and exported two apps using this exact same workflow — but now, the same method fails with a provisioning profile / Development Team error.
Here’s my workflow file:
name: iOS-ipa-build
on: workflow_dispatch:
jobs: build-ios: name: 🎉 iOS Build runs-on: macos-latest steps: - uses: actions/checkout@v3 - uses: subosito/flutter-action@v2 with: channel: 'stable' architecture: x64 - run: flutter pub get - run: pod repo update working-directory: ios - run: flutter build ios --release --no-codesign - run: mkdir Payload working-directory: build/ios/iphoneos - run: mv Runner.app/ Payload working-directory: build/ios/iphoneos - name: Zip output run: zip -qq -r -9 FlutterIpaExport.ipa Payload working-directory: build/ios/iphoneos - name: Upload binaries to release uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: build/ios/iphoneos/FlutterIpaExport.ipa tag: v1.0 overwrite: true body: "This is first release"
The build now fails with this message:
Run flutter build ios --release --no-codesign
Warning: Building for device with codesigning disabled. You will have to manually codesign before deploying to device.
Building (bundle name) for device (ios-release)...
Running pod install... 534.6s
Running Xcode build...
Xcode build done. 877.9s
Failed to build iOS app
════════════════════════════════════════════════════════════════════════════════
Building a deployable iOS app requires a selected Development Team with a
Provisioning Profile. Please ensure that a Development Team is selected by:
1- Open the Flutter project's Xcode target with
open ios/Runner.xcworkspace
2- Select the 'Runner' project in the navigator then the 'Runner' target
in the project settings
3- Make sure a 'Development Team' is selected under Signing & Capabilities > Team.
You may need to:
- Log in with your Apple ID in Xcode first
- Ensure you have a valid unique Bundle ID
- Register your device with your Apple Developer Account
- Let Xcode automatically provision a profile for your app
4- Build or run your project again
For more information, please visit:
https://flutter.dev/to/ios-development-team
Or run on an iOS simulator without code signing
════════════════════════════════════════════════════════════════════════════════
Encountered error while building for device.
Error: Process completed with exit code 1. The confusing part is that I’m not trying to sign it in CI — I just want a raw, unsigned IPA that I can sign manually later using sideloading tools (AltStore, Sideloadly, etc.). I even tried the same command (flutter build ios --release --no-codesign) locally on a MacBook in October 2025, and it worked fine. Now in November 2025, it fails both locally and in CI with the new Xcode image.
So my questions are:
Did Apple or Flutter/Xcode change something recently that prevents unsigned device builds?
Is there still a way (in 2025) to build a non-signed device IPA — either through GitHub Workflows or directly on a Mac — without needing a paid Apple Developer account?
Any updated workflows or build flags that can bypass this new signing enforcement?
Key Points: I don't need App Store distribution
I sign manually with sideloading tools afterward
This exact method worked 4 months ago
I'm not using any special certificates/profiles
Has anyone else encountered this recently? Any workarounds to generate a basic IPA without developer account requirements? I just need the raw binary that I can handle signing myself.
Would appreciate any insights from anyone who managed to build unsigned IPAs recently. Thanks.
Thanks in advance!