Skip to content

Commit message 2

Commit message 2 #1070

name: Pre Release SDK Integration Tests
on: [push]
jobs:
verify-cocoapods-iOS:
runs-on: macos-latest
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: Install pod, build project and run tests
run: |
echo "branch=${{ github.ref }}" >> $GITHUB_OUTPUT
./scripts/getSimulator
DESTINATION="platform=iOS Simulator,name=$(cat ./iphoneSim),OS=latest"
cd SDKIntegrationTestApps/iOSReleaseTest-Cocoapods/
pod install
xcodebuild test -scheme iOSReleaseTest -workspace iOSReleaseTest.xcworkspace -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Debug - List Contents of Simulator Directories
if: always()
run: |
echo "--- Searching for any .log files in all simulator directories ---"
find ~/Library/Developer/CoreSimulator/Devices -name "*.log"
echo "--- Recursively listing all files containing 'branch' in their name ---"
ls -R ~/Library/Developer/CoreSimulator/Devices | grep "branch" || echo "No file containing 'branch' was found."
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore
verify-carthage-iOS:
runs-on: macos-15
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: Create Cart File, run carthage command, build project and run tests
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
run: |
CURR_DIR=$(PWD)
./scripts/getSimulator
DESTINATION="platform=iOS Simulator,name=$(cat ./iphoneSim),OS=latest"
cd SDKIntegrationTestApps/iOSReleaseTest-Carthage/
echo "git \"file://${CURR_DIR}\" \"$BRANCH_NAME\" " >> cartfile
carthage update --use-xcframeworks
xcodebuild test -scheme iOSReleaseTest -project iOSReleaseTest.xcodeproj -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Debug - List Contents of Simulator Directories
if: always()
run: |
echo "--- Searching for any .log files in all simulator directories ---"
find ~/Library/Developer/CoreSimulator/Devices -name "*.log"
echo "--- Recursively listing all files containing 'branch' in their name ---"
ls -R ~/Library/Developer/CoreSimulator/Devices | grep "branch" || echo "No file containing 'branch' was found."
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore
verify-SPM-iOS:
runs-on: macos-latest
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: build project and run tests
run: |
./scripts/getSimulator
DESTINATION="platform=iOS Simulator,name=$(cat ./iphoneSim),OS=latest"
cd SDKIntegrationTestApps/iOSReleaseTest-SPM/
xcodebuild test -scheme iOSReleaseTest -project iOSReleaseTest.xcodeproj -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Debug - List Contents of Simulator Directories
if: always()
run: |
echo "--- Searching for any .log files in all simulator directories ---"
find ~/Library/Developer/CoreSimulator/Devices -name "*.log"
echo "--- Recursively listing all files containing 'branch' in their name ---"
ls -R ~/Library/Developer/CoreSimulator/Devices | grep "branch" || echo "No file containing 'branch' was found."
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore
verify-manually-with-xcframework-iOS:
runs-on: macos-latest
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: build xcframework, then build project and run tests
run: |
./scripts/getSimulator
DESTINATION="platform=iOS Simulator,name=$(cat ./iphoneSim),OS=latest"
xcodebuild -scheme xcframework
cd SDKIntegrationTestApps/iOSReleaseTest-Manual/
xcodebuild test -scheme iOSReleaseTest -project iOSReleaseTest.xcodeproj -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Debug - List Contents of Simulator Directories
if: always()
run: |
echo "--- Searching for any .log files in all simulator directories ---"
find ~/Library/Developer/CoreSimulator/Devices -name "*.log"
echo "--- Recursively listing all files containing 'branch' in their name ---"
ls -R ~/Library/Developer/CoreSimulator/Devices | grep "branch" || echo "No file containing 'branch' was found."
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore
verify-manually-with-StaticFramework-iOS:
runs-on: macos-latest
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: build static xcframework, then build project and run tests
run: |
./scripts/getSimulator
DESTINATION="platform=iOS Simulator,name=$(cat ./iphoneSim),OS=latest"
xcodebuild -scheme static-xcframework
cd SDKIntegrationTestApps/iOSReleaseTest-Manual-Static/
xcodebuild test -scheme iOSReleaseTest -project iOSReleaseTest.xcodeproj -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore
verify-cocoapods-tvOS:
runs-on: macos-latest
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: Install pod, build project and run tests
run: |
./scripts/getSimulator
DESTINATION="platform=tvOS Simulator,name=$(cat ./appleTVSim),OS=latest"
cd SDKIntegrationTestApps/tvOSReleaseTest-Cocoapods/
pod install
xcodebuild test -scheme tvOSReleaseTest -workspace tvOSReleaseTest.xcworkspace -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore
verify-carthage-tvOS:
runs-on: macos-latest
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: Verify Integration using Carthage for tvOS
run: |
./scripts/getSimulator
DESTINATION="platform=tvOS Simulator,name=$(cat ./appleTVSim),OS=latest"
cd SDKIntegrationTestApps/tvOSReleaseTest-Carthage/
echo "Skipping it ... its broken"
verify-manually-with-xcframework-tvOS:
runs-on: macos-latest
timeout-minutes: 20
steps:
- name: Select Xcode version
run: sudo xcode-select -s '/Applications/Xcode_16.4.app/Contents/Developer'
- name: Check out code
uses: actions/checkout@v4
- name: build xcframework, then build project and run tests
run: |
./scripts/getSimulator
DESTINATION="platform=tvOS Simulator,name=$(cat ./appleTVSim),OS=latest"
xcodebuild -scheme xcframework
cd SDKIntegrationTestApps/tvOSReleaseTest-Manual/
xcodebuild test -scheme tvOSReleaseTest -project tvOSReleaseTest.xcodeproj -destination "$DESTINATION" | xcpretty && exit ${PIPESTATUS[0]}
- name: Gather Logs
if: always()
run: |
mkdir -p logs
find ~/Library/Developer/CoreSimulator/Devices -name "*branch_sdk_test_logs.log" -exec cp {} ./logs/${{ github.job }}.log \;
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ github.job }}-logs
path: logs/
if-no-files-found: ignore