-
Notifications
You must be signed in to change notification settings - Fork 11
Update ios.yml with new device and OS version #308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
.github/workflows/ios.yml
Outdated
| os: ${{ '18.1' }} | ||
| device: ${{ 'iPhone 16' }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we can just delete these. What happens if you don't include them?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These params are used in the xcodebuild invocation build later in the script so that command will fail. Instead, we should update the xcodebuild command to use whatever the latest os version is. Can you make that update?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will do!
.github/workflows/ios.yml
Outdated
| # Find latest available iOS runtime identifier | ||
| latest_runtime_id=$(xcrun simctl list runtimes | grep -E "iOS [0-9]+\.[0-9]*" | grep -v unavailable | sort -Vr | head -n 1 | sed -E 's/.*- (.*)$/\1/') | ||
| # Find a compatible simulator device name for that runtime | ||
| device_name=$(xcrun simctl list devices available | grep "$latest_runtime_id" | head -n 1 | sed -E 's/^ (.+) \(.+\) \(.+\)$/\1/') | ||
| if [ -z "$latest_runtime_id" ] || [ -z "$device_name" ]; then | ||
| echo "❌ Failed to find a valid iOS runtime or device." | ||
| exit 1 | ||
| fi | ||
| echo "🛠 Using runtime: $latest_runtime_id" | ||
| echo "📱 Using device: $device_name" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It might be simpler to use xcrun to get the available devices and picking the very first iPhone simulator on that list:
device_name=$(xcrun simctl list devices available | grep "iPhone" | head -n 1 | sed -E 's/^[[:space:]]*(.+) \(.+\) \(.+\)$/\1/')
Then your xcodebuild invocation would look something like:
# Build and run the tests
xcodebuild test \
-scheme "$scheme" \
-"$filetype_parameter" "$file_to_build" \
-destination "platform=iOS Simulator,name=$device_name"
No description provided.