@quiet/desktop@7.1.0-alpha.1 #541
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy iOS to App Store | |
| on: | |
| release: | |
| types: [prereleased, released] | |
| jobs: | |
| build-ios: | |
| # needs: detox-ios | |
| runs-on: ${{ matrix.os }} | |
| if: | | |
| startsWith(github.ref, 'refs/tags/@quiet/mobile') | |
| strategy: | |
| matrix: | |
| os: [macos-26] | |
| steps: | |
| - name: 'Print OS' | |
| run: echo ${{ matrix.os }} | |
| - uses: actions/checkout@v5 | |
| with: | |
| submodules: 'recursive' | |
| lfs: true | |
| - name: Extract version | |
| id: extract_version | |
| uses: Saionaro/extract-package-version@fdb5b74adc1278ddb777dfed4c988b9d098bb48d # v1.2.1 | |
| with: | |
| path: packages/mobile | |
| - name: Install gpg | |
| run: brew install gnupg | |
| - name: Setup XCode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: '26.3' | |
| - name: Setup environment | |
| uses: ./.github/actions/setup-env | |
| with: | |
| cachePrefix: 'deploy-ios' | |
| bootstrap-packages: '@quiet/eslint-config,@quiet/logger,@quiet/common,@quiet/types,@quiet/state-manager,@quiet/backend,@quiet/identity,@quiet/mobile,backend-bundle,helia,@quiet/node-common' | |
| - name: Install pod dependencies | |
| run: | | |
| cd ./packages/mobile/ios | |
| pod install | |
| shell: bash | |
| - name: Remove bitcode from Tor.framework | |
| run: | | |
| cd ./packages/mobile/ios | |
| FRAMEWORK_PATH="Pods/Tor/Build/iOS/Tor.framework/Tor" | |
| if [ -f "$FRAMEWORK_PATH" ]; then | |
| echo "Removing bitcode from Tor.framework" | |
| xcrun bitcode_strip -r "$FRAMEWORK_PATH" -o "$FRAMEWORK_PATH" | |
| echo "Verifying bitcode removal" | |
| if otool -l "$FRAMEWORK_PATH" | grep -q LLVM; then | |
| echo "WARNING: Bitcode still present in Tor framework!" | |
| else | |
| echo "SUCCESS: Bitcode successfully removed from Tor framework" | |
| fi | |
| else | |
| echo "Tor framework not found at expected path: $FRAMEWORK_PATH" | |
| find . -name "Tor.framework" -type d | |
| fi | |
| - name: Setup provisioning profile | |
| run: ./.github/secrets/decrypt_secrets.sh | |
| env: | |
| IOS_PROFILE_KEY: ${{ secrets.IOS_PROFILE_KEY }} | |
| IOS_CERTIFICATE_KEY: ${{ secrets.IOS_CERTIFICATE_KEY }} | |
| IOS_FIREBASE_KEY: ${{ secrets.IOS_FIREBASE_KEY }} | |
| IOS_NSE_PROFILE_KEY: ${{ secrets.IOS_NSE_PROFILE_KEY }} | |
| - name: Build | |
| run: | | |
| cd ./packages/mobile/ios | |
| xcodebuild archive \ | |
| -workspace Quiet.xcworkspace \ | |
| -scheme Quiet \ | |
| -configuration Release \ | |
| -archivePath build/Quiet.xcarchive \ | |
| CODE_SIGN_IDENTITY="Apple Distribution: A Quiet LLC (CTYKSWN9T4)" \ | |
| ENABLE_BITCODE=NO | |
| - name: Export .ipa | |
| run: | | |
| cd ./packages/mobile/ios | |
| xcodebuild \ | |
| -exportArchive \ | |
| -archivePath build/Quiet.xcarchive \ | |
| -exportOptionsPlist ci.plist \ | |
| -exportPath build/ | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1 | |
| with: | |
| name: Quiet.ipa | |
| path: ./packages/mobile/ios/build/Quiet.ipa | |
| - name: Submit to the store | |
| run: | | |
| cd ./packages/mobile/ios | |
| xcrun altool \ | |
| --upload-app \ | |
| --type ios \ | |
| --file build/Quiet.ipa \ | |
| -u $APPSTORE_USER \ | |
| -p $APPSTORE_PASSWORD \ | |
| --verbose | |
| env: | |
| APPSTORE_USER: ${{ secrets.APPSTORE_USER }} | |
| APPSTORE_PASSWORD: ${{ secrets.APPSTORE_PASSWORD }} | |
| - name: Send Release Notificaton | |
| uses: ./.github/actions/release-notifier | |
| if: always() | |
| with: | |
| os-name: IOS | |
| version: ${{ steps.extract_version.outputs.version }} | |
| status: ${{ job.status }} | |
| slack_oauth_token: ${{ secrets.SLACK_BOT_OAUTH_TOKEN }} |