Skip to content

Xcode 15 (#45)

Xcode 15 (#45) #113

Workflow file for this run

name: "CI"
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
LC_CTYPE: en_US.UTF-8
LANG: en_US.UTF-8
jobs:
BuildAndTests:
name: Build & Tests
runs-on: macOS-13
env:
DEVELOPER_DIR: /Applications/Xcode_15.2.app/Contents/Developer
XCODE_PROJECT: DictionaryCoder.xcodeproj
IOS_SCHEME: DictionaryCoder iOS
IOS_DESTINATION: OS=17.2,name=iPhone 15
IOS_RESULT_PATH: xcodebuild-ios.xcresult
MACOS_SCHEME: DictionaryCoder macOS
MACOS_DESTINATION: platform=macOS
MACOS_RESULT_PATH: xcodebuild-macos.xcresult
TVOS_SCHEME: DictionaryCoder tvOS
TVOS_DESTINATION: OS=17.2,name=Apple TV
TVOS_RESULT_PATH: xcodebuild-tvos.xcresult
WATCHOS_SCHEME: DictionaryCoder watchOS
WATCHOS_DESTINATION: OS=10.2,name=Apple Watch Series 9 (45mm)
WATCHOS_RESULT_PATH: xcodebuild-watchos.xcresult
SKIP_SWIFTLINT: YES
DANGER_GITHUB_API_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN }}
steps:
- uses: actions/checkout@v3
- uses: ruby/setup-ruby@v1
- name: Bundler
run: |
gem install bundler
bundle install --without=documentation
- name: Preparation
run: |
set -o pipefail
swift --version
- name: Test iOS
run: |
xcodebuild clean build test \
-project "$XCODE_PROJECT" \
-scheme "$IOS_SCHEME" \
-destination "$IOS_DESTINATION" \
-resultBundlePath "$IOS_RESULT_PATH" | xcpretty -f `xcpretty-json-formatter`
bash <(curl -s https://codecov.io/bash) -cF ios -J 'DictionaryCoder'
- name: Test macOS
run: |
xcodebuild clean build test \
-project "$XCODE_PROJECT" \
-scheme "$MACOS_SCHEME" \
-destination "$MACOS_DESTINATION" \
-resultBundlePath "$MACOS_RESULT_PATH" | xcpretty -f `xcpretty-json-formatter`
bash <(curl -s https://codecov.io/bash) -cF osx -J 'DictionaryCoder'
- name: Test tvOS
run: |
xcodebuild clean build test \
-project "$XCODE_PROJECT" \
-scheme "$TVOS_SCHEME" \
-destination "$TVOS_DESTINATION" \
-resultBundlePath "$TVOS_RESULT_PATH" | xcpretty -f `xcpretty-json-formatter`
bash <(curl -s https://codecov.io/bash) -cF tvos -J 'DictionaryCoder'
- name: Build watchOS
run: |
xcodebuild clean build \
-project "$XCODE_PROJECT" \
-scheme "$WATCHOS_SCHEME" \
-destination "$WATCHOS_DESTINATION" \
-resultBundlePath "$WATCHOS_RESULT_PATH" | xcpretty -f `xcpretty-json-formatter`
- name: Danger
run: bundle exec danger --remove-previous-comments
Cocoapods:
name: Cocoapods
runs-on: macOS-latest
steps:
- uses: actions/checkout@v3
- uses: ruby/setup-ruby@v1
- name: Bundler
run: |
gem install bundler
bundle install --without=documentation
- name: Linting
run: bundle exec pod lib lint --skip-tests --allow-warnings
SPM:
name: Swift Package Manager
runs-on: macOS-latest
steps:
- uses: actions/checkout@v3
- name: Build
run: swift build