Skip to content

Mobile CD

Mobile CD #93

Workflow file for this run

name: iOS CD
on:
# Allows you to run this workflow manually from the Actions a tab
workflow_dispatch:
jobs:
ios-testflight-build:
name: ios-testflight-build
strategy:
matrix:
os: [macos-13]
node-version: [18.18.0]
ruby-version: [3.2]
xcode: [15.0.1]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout to git repository
uses: actions/checkout@v4
- name: Set up Node
uses: actions/setup-node@v3
with:
cache: 'yarn'
node-version: ${{ matrix.node-version }}
- name: Install yarn dependencies
run: yarn
- name: Install pods dependencies
run: yarn pods
- name: Set up Ruby and Gemfile dependencies
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true
working-directory: './packages/mobile'
- name: Decode signing certificate into a file
working-directory: './packages/mobile/ios'
env:
CERTIFICATE_BASE64: ${{ secrets.IOS_DIST_SIGNING_KEY }}
run: |
echo $CERTIFICATE_BASE64 | base64 --decode > signing-cert.p12
- name: Build & upload iOS binary
working-directory: './packages/mobile/ios'
run: bundle exec fastlane ios beta
env:
X_CODE: ${{ matrix.xcode }}
DEVELOPER_APP_IDENTIFIER: ${{ secrets.DEVELOPER_APP_IDENTIFIER }}
DEVELOPER_TEAM_ID: ${{ secrets.DEVELOPER_TEAM_ID }}
ASC_KEY_ID: ${{ secrets.APPLE_KEY_ID }}
ASC_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }}
ASC_KEY: ${{ secrets.APPLE_KEY_CONTENT }}
SIGNING_KEY_PASSWORD: ${{ secrets.IOS_DIST_SIGNING_KEY_PASSWORD }}
SIGNING_KEY_FILE_PATH: signing-cert.p12
- name: Upload logs to artifacts
uses: actions/upload-artifact@v3
if: failure()
with:
name: gum-logs
path: /Users/runner/Library/Logs/gym/ton_keeper-ton_keeper.log
- name: Upload app-store ipa and dsyms to artifacts
uses: actions/upload-artifact@v3
with:
name: app-store ipa & dsyms
path: |
./packages/mobile/ios/ton_keeper.ipa
./packages/mobile/ios/*.app.dSYM.zip