Merge pull request #5 from TextureGroup/master #27
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
jobs: | |
buildsh: | |
env: | |
DEVELOPER_DIR: /Applications/Xcode_14.2.app/Contents/Developer | |
strategy: | |
matrix: | |
mode: [tests, framework, life-without-cocoapods, carthage, examples-pt1, examples-pt2, examples-pt3, examples-pt4] | |
include: | |
- mode: tests | |
name: Build and run tests | |
- mode: framework | |
name: Build Texture as a dynamic framework | |
- mode: life-without-cocoapods | |
name: Build Texture as a static library | |
- mode: carthage | |
name: Verify that Carthage works | |
- mode: examples-pt1 | |
name: Build examples (examples-pt1) | |
- mode: examples-pt2 | |
name: Build examples (examples-pt2) | |
- mode: examples-pt3 | |
name: Build examples (examples-pt3) | |
- mode: examples-pt4 | |
name: Build examples (examples-pt4) | |
name: ${{ matrix.name }} | |
runs-on: macOS-latest | |
steps: | |
- name: Checkout the Git repository | |
uses: actions/checkout@v2 | |
- name: Run build script | |
run: ./build.sh ${{ matrix.mode }} | |
SPM: | |
name: Build from SPM manifest | |
runs-on: macOS-latest | |
env: | |
DEVELOPER_DIR: /Applications/Xcode_12.4.app/Contents/Developer | |
strategy: | |
matrix: | |
destination: ["platform=iOS Simulator,name=iPhone 12 Pro", "platform=macOS,variant=Mac Catalyst", "platform=tvOS Simulator,name=Apple TV 4k"] | |
scheme: ["AsyncDisplayKitIGListKit"] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
# Starting from Xcode 11 `xcodebuild` supports SwiftPM packages out of the box | |
# to test that we have valid swift package we need to remove existing *.xcodeproj/xcworkspace | |
# `xcodebuild` will invoke Package.swift. | |
- name: spm's xcodebuild - ${{ matrix.destination }} | |
run: | | |
set -o pipefail | |
rm -rf AsyncDisplayKit.xcodeproj/ | |
rm -rf AsyncDisplayKit.xcworkspace/ | |
swift scripts/generate_spm_sources_layout.swift | |
xcodebuild clean build -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" | |
Xcode-SPM-Integration: | |
name: Build example project to verify Xcode's SPM integration | |
runs-on: macOS-latest | |
env: | |
DEVELOPER_DIR: /Applications/Xcode_12.4.app/Contents/Developer | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Check xcode's spm integration | |
run: ./build.sh build_listkit_xcode_spm_integration |