Skip to content

Move AnyAsyncSequenceWorker into WorkflowConcurrency as AsyncSequenceWorker #1114

Move AnyAsyncSequenceWorker into WorkflowConcurrency as AsyncSequenceWorker

Move AnyAsyncSequenceWorker into WorkflowConcurrency as AsyncSequenceWorker #1114

Workflow file for this run

name: Swift CI
on:
push:
branches:
- main
pull_request:
env:
XCODE_VERSION: 16.1.0
TUIST_TEST_DEVICE: iPad (10th generation)
TUIST_TEST_PLATFORM: iOS
jobs:
development-tests:
runs-on: macos-latest
name: "development-tests [iOS ${{ matrix.sdk }}]"
env:
TUIST_TEST_SCHEME: UnitTests
strategy:
fail-fast: false
matrix:
include:
- sdk: "16.4"
simctl_runtime: "com.apple.CoreSimulator.SimRuntime.iOS-16-4"
installation_required: true
- sdk: "17.5"
simctl_runtime: "com.apple.CoreSimulator.SimRuntime.iOS-17-5"
installation_required: false
- sdk: "18.1"
simctl_runtime: "com.apple.CoreSimulator.SimRuntime.iOS-18-1"
installation_required: false
steps:
- uses: actions/checkout@v4
- uses: jdx/mise-action@v2
- name: Switch to Xcode ${{ env.XCODE_VERSION }}
run: sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app
- name: Install iOS ${{ matrix.sdk }}
if: ${{ matrix.installation_required }}
run: sudo xcodes runtimes install "iOS ${{ matrix.sdk }}"
- name: Ensure sim exists
run: |
xcrun simctl create \
"${{ env.TUIST_TEST_DEVICE }}" \
"${{ env.TUIST_TEST_DEVICE }}" \
"${{ matrix.simctl_runtime }}"
- name: Install dependencies
run: tuist install --path Samples
- name: Run Tests
run: tuist test --path Samples ${{ matrix.scheme }} --os "${{ matrix.sdk }}"
# FIXME: these should probably be run with a matrix too
snapshot-tests:
runs-on: macos-latest
env:
TUIST_TEST_OS: 18.1
TUIST_TEST_SCHEME: SnapshotTests
strategy:
fail-fast: false # Don’t fail-fast so that we get all snapshot test changes
steps:
- uses: actions/checkout@v4
- uses: jdx/mise-action@v2
- name: Switch Xcode
run: sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app
- name: Install dependencies
run: tuist install --path Samples
- name: Run Snapshot Tests
run: tuist test --path Samples
package-tests:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Switch Xcode
run: sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app
# Command line swift runs on the host platform.
# On macOS we can run all tests, including macro tests.
- name: Test macOS
run: swift test
tutorial:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: jdx/mise-action@v2
- name: Switch Xcode
run: sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app
- name: Install dependencies
run: tuist install --path Samples/Tutorial
- name: Tutorial App
run: tuist test --path Samples/Tutorial TutorialTests
swiftformat:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: jdx/mise-action@v2
- name: Run swiftformat
run: swiftformat --lint .