Skip to content

Add visionOS Support #146

Add visionOS Support

Add visionOS Support #146

Workflow file for this run

name: "AlamofireImage CI"
on:
push:
branches:
- master
- hotfix
paths:
- ".github/workflows/**"
- "Package.swift"
- "Source/**"
- "Tests/**"
pull_request:
paths:
- ".github/workflows/**"
- "Package.swift"
- "Source/**"
- "Tests/**"
concurrency:
group: ${{ github.ref_name }}
cancel-in-progress: true
jobs:
macOS:
name: Test macOS, All Xcodes and Swifts
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: "/Applications/${{ matrix.xcode }}/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- xcode: "Xcode_14.3.1.app"
runsOn: macOS-13
name: "macOS 13, Xcode 14.3, Swift 5.8.0"
testPlan: "macOS"
- xcode: "Xcode_14.2.app"
runsOn: macOS-12
name: "macOS 12, Xcode 14.2, Swift 5.7.2"
testPlan: "macOS"
- xcode: "Xcode_14.1.app"
runsOn: macOS-12
name: "macOS 12, Xcode 14.1, Swift 5.7.1"
testPlan: "macOS"
- xcode: "Xcode_14.0.1.app"
runsOn: macOS-12
name: "macOS 12, Xcode 14.0.1, Swift 5.7.0"
testPlan: "macOS"
- xcode: "Xcode_13.4.1.app"
runsOn: macOS-12
name: "macOS 12, Xcode 13.4.1, Swift 5.6.1"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.3.1.app"
runsOn: macOS-12
name: "macOS 12, Xcode 13.3.1, Swift 5.6.0"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.2.1.app"
runsOn: macOS-11
name: "macOS 11, Xcode 13.2.1, Swift 5.5.2"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.1.app"
runsOn: macOS-11
name: "macOS 11, Xcode 13.1, Swift 5.5.1"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.0.app"
runsOn: macOS-11
name: "macOS 11, Xcode 13.0, Swift 5.5.0"
testPlan: "macOS-NoTS"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: "brew install alamofire/alamofire/firewalk && firewalk &"
- name: Dependencies
run: carthage bootstrap --no-build
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "AlamofireImage macOS" -destination "platform=macOS" clean build | xcpretty
Catalyst:
name: Test Catalyst
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk && firewalk &
- name: Dependencies
run: carthage bootstrap --no-build
- name: Catalyst
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "AlamofireImage iOS" -destination "platform=macOS" clean test | xcpretty
Latest:
name: Test Latest (iOS, tvOS, watchOS)
runs-on: firebreak
env:
DEVELOPER_DIR: "/Applications/Xcode_14.3.1.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=16.4,name=iPhone 14 Pro"
name: "iOS"
scheme: "AlamofireImage iOS"
- destination: "OS=16.4,name=Apple TV"
name: "tvOS"
scheme: "AlamofireImage tvOS"
- destination: "OS=9.4,name=Apple Watch Series 8 (45mm)"
name: "watchOS"
scheme: "AlamofireImage watchOS"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk && firewalk &
- name: Dependencies
run: carthage bootstrap --no-build
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" clean test | xcpretty
iOS:
name: "Test Old iOS"
runs-on: firebreak
env:
DEVELOPER_DIR: "/Applications/Xcode_14.3.1.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=15.5,name=iPhone 13 Pro"
name: "iOS 15.5"
testPlan: "iOS-NoTS"
- destination: "OS=14.5,name=iPhone 12 Pro"
name: "iOS 14.5"
testPlan: "iOS-NoTS"
# - destination: "OS=13.7,name=iPhone 11 Pro"
# name: "iOS 13.7"
# testPlan: "iOS-NoTS"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: Dependencies
run: carthage bootstrap --no-build
- name: ${{ matrix.destination }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "AlamofireImage iOS" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test | xcpretty
Beta:
name: "Test Beta OSes"
runs-on: firebreak
env:
DEVELOPER_DIR: "/Applications/Xcode_15.0.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=17.0,name=iPhone 14 Pro"
name: "iOS 17.0"
testPlan: "iOS"
scheme: "AlamofireImage iOS"
- destination: "OS=1.0,name=Apple Vision Pro"
name: "visionOS 1.0"
testPlan: "visionOS"
scheme: "AlamofireImage visionOS"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: Dependencies
run: carthage bootstrap --no-build
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test | xcpretty
tvOS:
name: Test Old tvOS
runs-on: firebreak
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=15.4,name=Apple TV"
name: "tvOS 15.4"
testPlan: "tvOS-NoTS"
- destination: "OS=14.5,name=Apple TV"
name: "tvOS 14.5"
testPlan: "tvOS-NoTS"
# - destination: "OS=13.4,name=Apple TV"
# name: "tvOS 13.4"
# testPlan: "tvOS-NoTS"
# - destination: "OS=12.4,name=Apple TV"
# name: "tvOS 12.4"
# testPlan: "tvOS-Old"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: Dependencies
run: carthage bootstrap --no-build
- name: ${{ matrix.destination }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "AlamofireImage tvOS" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test | xcpretty
watchOS:
name: Test watchOS
runs-on: firebreak
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=8.5,name=Apple Watch Series 7 (45mm)"
name: "watchOS 8.5"
testPlan: "watchOS-NoTS"
- destination: "OS=7.4,name=Apple Watch Series 6 (44mm)"
name: "watchOS 7.4"
testPlan: "watchOS-NoTS"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk && firewalk &
- name: Dependencies
run: carthage bootstrap --no-build
- name: ${{ matrix.destination }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -workspace "AlamofireImage.xcworkspace" -scheme "AlamofireImage watchOS" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test | xcpretty
SPM:
name: Build SPM
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: "/Applications/${{ matrix.xcode }}.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- xcode: "Xcode_14.3.1"
runsOn: macOS-13
name: "macOS 13, SPM 5.8.0 Test"
- xcode: "Xcode_14.2"
runsOn: macOS-12
name: "macOS 12, SPM 5.7.2 Test"
- xcode: "Xcode_14.1"
runsOn: macOS-12
name: "macOS 12, SPM 5.7.1 Test"
- xcode: "Xcode_14.0.1"
runsOn: macOS-12
name: "macOS 12, SPM 5.7.0 Test"
- xcode: "Xcode_13.4.1"
runsOn: macOS-12
name: "macOS 12, SPM 5.6.1 Test"
- xcode: "Xcode_13.3.1"
runsOn: macOS-12
name: "macOS 12, SPM 5.6.0 Test"
- xcode: "Xcode_13.2.1"
runsOn: macOS-11
name: "macOS 11, SPM 5.5.2 Test"
- xcode: "Xcode_13.1"
runsOn: macOS-11
name: "macOS 11, SPM 5.5.1 Test"
- xcode: "Xcode_13.0"
runsOn: macOS-11
name: "macOS 11, SPM 5.5.0 Test"
steps:
- uses: actions/checkout@v3
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk && firewalk &
- name: Test SPM
run: swift build -c debug