Skip to content

Commit 0bddecc

Browse files
committed
fix: implement iOS build process in CI workflow; add caching and setup steps
1 parent 517d761 commit 0bddecc

1 file changed

Lines changed: 46 additions & 46 deletions

File tree

.github/workflows/ci.yml

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -116,51 +116,51 @@ jobs:
116116
run: |
117117
yarn turbo run build:android --cache-dir="${{ env.TURBO_CACHE_DIR }}"
118118
119-
# build-ios:
120-
# runs-on: macos-latest
121-
# env:
122-
# XCODE_VERSION: 16.2
123-
# TURBO_CACHE_DIR: .turbo/ios
124-
# steps:
125-
# - name: Checkout
126-
# uses: actions/checkout@v4
119+
build-ios:
120+
runs-on: macos-latest
121+
env:
122+
XCODE_VERSION: 16.2
123+
TURBO_CACHE_DIR: .turbo/ios
124+
steps:
125+
- name: Checkout
126+
uses: actions/checkout@v4
127127

128-
# - name: Setup
129-
# uses: ./.github/actions/setup
128+
- name: Setup
129+
uses: ./.github/actions/setup
130+
131+
- name: Generate nitrogen code
132+
run: yarn nitrogen
130133

131-
# - name: Generate nitrogen code
132-
# run: yarn nitrogen
133-
134-
# - name: Cache turborepo for iOS
135-
# uses: actions/cache@v4
136-
# with:
137-
# path: ${{ env.TURBO_CACHE_DIR }}
138-
# key: ${{ runner.os }}-turborepo-ios-${{ hashFiles('yarn.lock') }}
139-
# restore-keys: |
140-
# ${{ runner.os }}-turborepo-ios-
141-
142-
# - name: Check turborepo cache for iOS
143-
# run: |
144-
# TURBO_CACHE_STATUS=$(node -p "($(yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}" --dry=json)).tasks.find(t => t.task === 'build:ios').cache.status")
145-
146-
# if [[ $TURBO_CACHE_STATUS == "HIT" ]]; then
147-
# echo "turbo_cache_hit=1" >> $GITHUB_ENV
148-
# fi
149-
150-
# - name: Use appropriate Xcode version
151-
# if: env.turbo_cache_hit != 1
152-
# uses: maxim-lobanov/setup-xcode@v1
153-
# with:
154-
# xcode-version: ${{ env.XCODE_VERSION }}
155-
156-
# - name: Install cocoapods
157-
# if: env.turbo_cache_hit != 1 && steps.cocoapods-cache.outputs.cache-hit != 'true'
158-
# run: |
159-
# cd example
160-
# bundle install
161-
# bundle exec pod repo update --verbose
162-
# bundle exec pod install --project-directory=ios
163-
164-
# - name: Build example for iOS
165-
# run: |
166-
# yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}"
134+
- name: Cache turborepo for iOS
135+
uses: actions/cache@v4
136+
with:
137+
path: ${{ env.TURBO_CACHE_DIR }}
138+
key: ${{ runner.os }}-turborepo-ios-${{ hashFiles('yarn.lock') }}
139+
restore-keys: |
140+
${{ runner.os }}-turborepo-ios-
141+
142+
- name: Check turborepo cache for iOS
143+
run: |
144+
TURBO_CACHE_STATUS=$(node -p "($(yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}" --dry=json)).tasks.find(t => t.task === 'build:ios').cache.status")
145+
146+
if [[ $TURBO_CACHE_STATUS == "HIT" ]]; then
147+
echo "turbo_cache_hit=1" >> $GITHUB_ENV
148+
fi
149+
150+
- name: Use appropriate Xcode version
151+
if: env.turbo_cache_hit != 1
152+
uses: maxim-lobanov/setup-xcode@v1
153+
with:
154+
xcode-version: ${{ env.XCODE_VERSION }}
155+
156+
- name: Install cocoapods
157+
if: env.turbo_cache_hit != 1 && steps.cocoapods-cache.outputs.cache-hit != 'true'
158+
run: |
159+
cd example
160+
bundle install
161+
bundle exec pod repo update --verbose
162+
bundle exec pod install --project-directory=ios
163+
164+
- name: Build example for iOS
165+
run: |
166+
yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}"

0 commit comments

Comments
 (0)