feat(ios) introduce gemfile to make builds more reproducible

With it we can control what Ruby version, cocoapods version and fastlane
version is being used.
This commit is contained in:
Saúl Ibarra Corretgé
2025-02-17 14:55:53 +01:00
committed by Saúl Ibarra Corretgé
parent 1b1e7d9bce
commit 74efbd7a61
4 changed files with 414 additions and 84 deletions

View File

@@ -91,16 +91,14 @@ jobs:
sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
xcodebuild -version
- name: setup-cocoapods
uses: maxim-lobanov/setup-cocoapods@v1
uses: ruby/setup-ruby@v1
with:
podfile-path: ios/Podfile.lock
ruby-version: '3.4'
bundler-cache: true
- run: npx react-native info
- name: Install Pods
run: |
pod --version
cd ios
pod install --repo-update --deployment
- name: Check if the git repository is clean
run: $(exit $(git status --porcelain --untracked-files=no | head -255 | wc -l)) || (echo "Dirty git tree"; git diff; exit 1)
working-directory: ./ios
run: bundle exec pod install --repo-update --deployment
- run: npx react-native bundle --entry-file react/index.native.js --platform ios --bundle-output /tmp/ios.bundle --reset-cache
android-sdk-build:
name: Build mobile SDK (Android)
@@ -142,16 +140,14 @@ jobs:
sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
xcodebuild -version
- name: setup-cocoapods
uses: maxim-lobanov/setup-cocoapods@v1
uses: ruby/setup-ruby@v1
with:
podfile-path: ios/Podfile.lock
ruby-version: '3.4'
bundler-cache: true
- run: npx react-native info
- name: Install Pods
run: |
pod --version
cd ios
pod install --repo-update --deployment
- name: Check if the git repository is clean
run: $(exit $(git status --porcelain --untracked-files=no | head -255 | wc -l)) || (echo "Dirty git tree"; git diff; exit 1)
working-directory: ./ios
run: bundle exec pod install --repo-update --deployment
- run: |
xcodebuild clean \
-workspace ios/jitsi-meet.xcworkspace \