70 lines (56 loc) · 1.8 KB
/
ios-fabric-build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
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