Skip to content

Add WebSocketRequest Under @_spi(WebSocket) #992

Add WebSocketRequest Under @_spi(WebSocket)

Add WebSocketRequest Under @_spi(WebSocket) #992

Workflow file for this run

name: "Alamofire 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: ${{ matrix.name }}
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: "/Applications/${{ matrix.xcode }}.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- xcode: "Xcode_15.0"
runsOn: firebreak
name: "macOS 13, Xcode 15.0, Swift 5.9.0"
testPlan: "macOS"
- xcode: "Xcode_14.3.1"
runsOn: firebreak
name: "macOS 13, Xcode 14.3.1, Swift 5.8.0"
testPlan: "macOS"
- xcode: "Xcode_14.2"
runsOn: macOS-12
name: "macOS 12, Xcode 14.2, Swift 5.7.2"
testPlan: "macOS"
- xcode: "Xcode_14.1"
runsOn: macOS-12
name: "macOS 12, Xcode 14.1, Swift 5.7.1"
testPlan: "macOS"
- xcode: "Xcode_14.0.1"
runsOn: macOS-12
name: "macOS 12, Xcode 14.0.1, Swift 5.7.0"
testPlan: "macOS"
- xcode: "Xcode_13.4.1"
runsOn: macOS-12
name: "macOS 12, Xcode 13.4.1, Swift 5.6.1"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.3.1"
runsOn: macOS-12
name: "macOS 12, Xcode 13.3.1, Swift 5.6.0"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.2.1"
runsOn: macOS-11
name: "macOS 11, Xcode 13.2.1, Swift 5.5.2"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.1"
runsOn: macOS-11
name: "macOS 11, Xcode 13.1, Swift 5.5.1"
testPlan: "macOS-NoTS"
- xcode: "Xcode_13.0"
runsOn: macOS-11
name: "macOS 11, Xcode 13.0, Swift 5.5.0"
testPlan: "macOS-NoTS"
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.name }}
run: |-
set -o pipefail
brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk
firewalk &
env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" -testPlan "${{ matrix.testPlan }}" clean test | xcpretty
Catalyst:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: /Applications/${{ matrix.xcode }}.app/Contents/Developer
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- xcode: "Xcode_15.0"
name: "Catalyst 15.0"
runsOn: firebreak
- xcode: "Xcode_14.3.1"
name: "Catalyst 14.3.1"
runsOn: macOS-13
steps:
- uses: actions/checkout@v4
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: Catalyst
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire iOS" -destination "platform=macOS" clean test 2>&1 | xcpretty
Beta:
name: ${{ matrix.name }}
runs-on: firebreak
env:
DEVELOPER_DIR: "/Applications/Xcode_15b8.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=1.0,name=Apple Vision Pro"
name: "visionOS 1.0"
testPlan: "visionOS"
scheme: "Alamofire visionOS"
steps:
- uses: actions/checkout@v4
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test 2>&1 | xcpretty
iOS:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: "/Applications/${{ matrix.xcode }}.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"
xcode: "Xcode_15.0"
runsOn: firebreak
- destination: "OS=16.4,name=iPhone 14 Pro"
name: "iOS 16.4"
testPlan: "iOS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
- destination: "OS=15.5,name=iPhone 13 Pro"
name: "iOS 15.5"
testPlan: "iOS-NoTS"
xcode: "Xcode_14.3.1"
runsOn: macOS-13
- destination: "OS=14.5,name=iPhone 12 Pro"
name: "iOS 14.5"
testPlan: "iOS-NoTS"
xcode: "Xcode_14.3.1"
runsOn: macOS-13
# - destination: "OS=13.7,name=iPhone 11 Pro"
# name: "iOS 13.7"
# testPlan: "iOS-NoTS"
steps:
- uses: actions/checkout@v4
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire iOS" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test 2>&1 | xcpretty
tvOS:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: /Applications/${{ matrix.xcode }}.app/Contents/Developer
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=17.0,name=Apple TV"
name: "tvOS 17.0"
testPlan: "tvOS"
xcode: "Xcode_15.0"
runsOn: firebreak
- destination: "OS=16.4,name=Apple TV"
name: "tvOS 16.4"
testPlan: "tvOS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
- destination: "OS=15.4,name=Apple TV"
name: "tvOS 15.4"
testPlan: "tvOS-NoTS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
- destination: "OS=14.5,name=Apple TV"
name: "tvOS 14.5"
testPlan: "tvOS-NoTS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
# - destination: "OS=13.4,name=Apple TV"
# name: "tvOS 13.4"
# testPlan: "tvOS-NoTS"
steps:
- uses: actions/checkout@v4
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire tvOS" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test 2>&1 | xcpretty
watchOS:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: /Applications/${{ matrix.xcode }}.app/Contents/Developer
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=10.0,name=Apple Watch Series 9 (45mm)"
name: "watchOS 10.0"
testPlan: "watchOS"
xcode: "Xcode_15.0"
runsOn: firebreak
- destination: "OS=9.4,name=Apple Watch Series 8 (45mm)"
name: "watchOS 9.4"
testPlan: "watchOS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
- destination: "OS=8.5,name=Apple Watch Series 7 (45mm)"
name: "watchOS 8.5"
testPlan: "watchOS-NoTS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
- destination: "OS=7.4,name=Apple Watch Series 6 (44mm)"
name: "watchOS 7.4"
testPlan: "watchOS-NoTS"
xcode: "Xcode_14.3.1"
runsOn: firebreak
steps:
- uses: actions/checkout@v4
- name: Install Firewalk
run: brew update && brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk && firewalk &
- name: ${{ matrix.name }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire watchOS" -destination "${{ matrix.destination }}" -testPlan "${{ matrix.testPlan }}" clean test 2>&1 | xcpretty
SPM:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runsOn }}
env:
DEVELOPER_DIR: "/Applications/${{ matrix.xcode }}.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- xcode: "Xcode_15.0"
runsOn: firebreak
name: "macOS 13, SPM 5.9.0 Test"
- xcode: "Xcode_14.3.1"
runsOn: firebreak
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@v4
- name: Install Firewalk
run: brew install alamofire/alamofire/firewalk || brew upgrade alamofire/alamofire/firewalk xcbeautify && firewalk &
- name: Test SPM
run: swift test -c debug
Linux:
name: Linux
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- image: swift:5.8.1-focal
- image: swift:5.8.1-jammy
- image: swift:5.8.1-centos7
- image: swift:5.8.1-amazonlinux2
- image: swift:5.8.1-rhel-ubi9
- image: swift:5.9.0-focal
- image: swift:5.9.0-jammy
- image: swift:5.9.0-centos7
- image: swift:5.9.0-amazonlinux2
- image: swift:5.9.0-rhel-ubi9
- image: swiftlang/swift:nightly-focal
- image: swiftlang/swift:nightly-jammy
- image: swiftlang/swift:nightly-amazonlinux2
container:
image: ${{ matrix.image }}
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.image }}
run: swift build --build-tests -c debug
Android:
name: Android
uses: hggz/swift-android-sdk/.github/workflows/sdks.yml@ci
strategy:
fail-fast: false
with:
target-repo: ${{ github.repository }}
checkout-hash: ${{ github.sha }}
Windows:
name: ${{ matrix.name }}
runs-on: windows-latest
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- branch: swift-5.8-release
tag: 5.8-RELEASE
name: Windows Swift 5.8
- branch: swift-5.9-release
tag: 5.9-RELEASE
name: Windows Swift 5.9
steps:
- name: Setup
uses: compnerd/gha-setup-swift@main
with:
branch: ${{ matrix.branch }}
tag: ${{ matrix.tag }}
- name: Clone
uses: actions/checkout@v4
- name: SPM ${{ matrix.name }}
run: |
swift build --build-tests -c debug -Xlinker /INCREMENTAL:NO -v
CodeQL:
name: Analyze with CodeQL
runs-on: macOS-13
env:
DEVELOPER_DIR: "/Applications/Xcode_14.3.1.app/Contents/Developer"
timeout-minutes: 10
steps:
- name: Clone
uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: swift
- name: Build macOS
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "Alamofire.xcodeproj" -scheme "Alamofire macOS" -destination "platform=macOS" clean build | xcpretty
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:swift"