Build iOS Fabric Example #19
Workflow file for this run
This file contains 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: Build iOS Fabric Example | |
on: | |
workflow_dispatch: | |
inputs: | |
variant: | |
type: choice | |
description: Variant to run | |
options: | |
- static-library | |
- static-framework | |
- dynamic-framework | |
# Only run on the latest workflow run | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-example: | |
runs-on: macos-13 | |
strategy: | |
matrix: | |
xcode-version: [14.3.1] | |
steps: | |
- name: List all available XCode versions | |
run: ls -n /Applications/ | grep Xcode* | |
- name: Switch XCode Version | |
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode-version }}.app/Contents/Developer | |
- name: Cache cocoapods | |
uses: actions/cache@v3 | |
with: | |
path: apps/fabric/ios/Pods | |
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-pods- | |
- name: Checkout Repository | |
uses: actions/checkout@v3 | |
- name: Set up Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
- name: Enable corepack | |
run: corepack enable | |
- name: Install CocoaPods | |
run: sudo gem install cocoapods | |
- name: Install Dependencies | |
run: yarn install --immutable | |
- name: Run Metro in the background | |
run: yarn workspace fabric-example start </dev/null &>/dev/null & | |
- name: Build Fabric iOS Example | |
run: | | |
if [ "${{ github.event.inputs.variant }}" = "static-framework" ]; then | |
yarn fabric:ios-static-framework | |
elif [ "${{ github.event.inputs.variant }}" = "dynamic-framework" ]; then | |
yarn fabric:ios-dynamic-framework | |
else | |
yarn fabric:ios | |
fi |