The macOS 11 runner image was removed on 6/28/2024. https://github.blog/changelog/2024-05-20-actions-upcoming-changes-to-github-hosted-macos-runners/ Therefore Carthage support was removed from README since the 'carthage' job can no longer be run and then 'carthage' build can not be checked.
165 lines
4.6 KiB
YAML
165 lines
4.6 KiB
YAML
name: ci
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- next
|
|
pull_request:
|
|
branches:
|
|
- '*'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ matrix.runs-on }}
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- swift: "5.10"
|
|
xcode: "15.4"
|
|
runs-on: macos-14
|
|
- swift: "5.9"
|
|
xcode: "15.2"
|
|
runs-on: macos-13
|
|
- swift: "5.8"
|
|
xcode: "14.3.1"
|
|
runs-on: macos-13
|
|
- swift: "5.7"
|
|
xcode: "14.1"
|
|
runs-on: macos-12
|
|
- swift: "5.6"
|
|
xcode: "13.4.1"
|
|
runs-on: macos-12
|
|
- swift: "5.5"
|
|
xcode: "13.2.1"
|
|
runs-on: macos-12
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Building in Swift ${{ matrix.swift }}
|
|
run: xcodebuild -scheme FloatingPanel SWIFT_VERSION=${{ matrix.swift }} clean build
|
|
|
|
test:
|
|
runs-on: ${{ matrix.runs-on }}
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- os: "17.5"
|
|
xcode: "15.4"
|
|
sim: "iPhone 15 Pro"
|
|
parallel: NO # Stop random test job failures
|
|
runs-on: macos-14
|
|
- os: "16.4"
|
|
xcode: "14.3.1"
|
|
sim: "iPhone 14 Pro"
|
|
parallel: NO # Stop random test job failures
|
|
runs-on: macos-13
|
|
- os: "15.5"
|
|
xcode: "13.4.1"
|
|
sim: "iPhone 13 Pro"
|
|
parallel: NO # Stop random test job failures
|
|
runs-on: macos-12
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Testing in iOS ${{ matrix.os }}
|
|
run: |
|
|
xcodebuild clean test \
|
|
-workspace FloatingPanel.xcworkspace \
|
|
-scheme FloatingPanel \
|
|
-destination 'platform=iOS Simulator,OS=${{ matrix.os }},name=${{ matrix.sim }}' \
|
|
-parallel-testing-enabled '${{ matrix.parallel }}'
|
|
timeout-minutes: 20
|
|
|
|
example:
|
|
runs-on: macos-14
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- example: "Maps"
|
|
- example: "Maps-SwiftUI"
|
|
- example: "Stocks"
|
|
- example: "Samples"
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Building ${{ matrix.example }}
|
|
run: |
|
|
xcodebuild clean build \
|
|
-workspace FloatingPanel.xcworkspace \
|
|
-scheme ${{ matrix.example }} \
|
|
-sdk iphonesimulator
|
|
|
|
swiftpm:
|
|
runs-on: macos-14
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
platform: [iphoneos, iphonesimulator]
|
|
arch: [x86_64, arm64]
|
|
exclude:
|
|
- platform: iphoneos
|
|
arch: x86_64
|
|
include:
|
|
# 17.2
|
|
- platform: iphoneos
|
|
sys: "ios17.2"
|
|
- platform: iphonesimulator
|
|
sys: "ios17.2-simulator"
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: "Swift Package Manager build"
|
|
run: |
|
|
xcrun swift build \
|
|
--sdk "$(xcrun --sdk ${{ matrix.platform }} --show-sdk-path)" \
|
|
-Xswiftc "-target" -Xswiftc "${{ matrix.arch }}-apple-${{ matrix.sys }}"
|
|
|
|
swiftpm_old:
|
|
runs-on: ${{ matrix.runs-on }}
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
# 16.4
|
|
- target: "x86_64-apple-ios16.4-simulator"
|
|
xcode: "14.3.1"
|
|
runs-on: macos-13
|
|
- target: "arm64-apple-ios16.4-simulator"
|
|
xcode: "14.3.1"
|
|
runs-on: macos-13
|
|
# 15.7
|
|
- target: "x86_64-apple-ios15.7-simulator"
|
|
xcode: "14.1"
|
|
runs-on: macos-12
|
|
- target: "arm64-apple-ios15.7-simulator"
|
|
xcode: "14.1"
|
|
runs-on: macos-12
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: "Swift Package Manager build"
|
|
run: |
|
|
swift build \
|
|
-Xswiftc "-sdk" -Xswiftc "`xcrun --sdk iphonesimulator --show-sdk-path`" \
|
|
-Xswiftc "-target" -Xswiftc "${{ matrix.target }}"
|
|
|
|
cocoapods:
|
|
runs-on: macos-14
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: "CocoaPods: pod lib lint"
|
|
run: pod lib lint --allow-warnings
|
|
- name: "CocoaPods: pod spec lint"
|
|
run: pod spec lint --allow-warnings
|