Merge pull request #81 from wadetregaskis/patch-1 #100
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: | |
branches: [ main ] | |
jobs: | |
check-build-test: | |
runs-on: macos-12 | |
steps: | |
- name: Install Tools | |
run: | | |
brew install sonar-scanner xcbeautify | |
env: | |
HOMEBREW_NO_INSTALL_CLEANUP: 1 | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Select Xcode | |
run: sudo xcode-select -s /Applications/Xcode_14.1.app/Contents/Developer | |
- name: SwiftLint | |
run: | | |
mkdir .build | |
swiftlint lint --reporter json > .build/swiftlint.json | |
- name: Build/Test | |
run: set -o pipefail && swift test --enable-code-coverage --sanitize undefined | xcbeautify | |
- name: Convert Coverage | |
run: xcrun llvm-cov show -instr-profile=.build/debug/codecov/default.profdata .build/debug/ShieldPackageTests.xctest/Contents/MacOS/ShieldPackageTests > .build/coverage.report | |
- name: Sonar Scanner | |
run: sonar-scanner | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
build-test: | |
runs-on: macos-12 | |
permissions: | |
checks: write | |
needs: [check-build-test] | |
strategy: | |
matrix: | |
platform: [macos, ios, tvos, watchos] | |
steps: | |
- name: Install Tools | |
run: | | |
brew tap a7ex/homebrew-formulae | |
brew install xcbeautify findsimulator | |
env: | |
HOMEBREW_NO_INSTALL_CLEANUP: 1 | |
- uses: actions/checkout@v3 | |
- name: Select Xcode | |
run: sudo xcode-select -s /Applications/Xcode_14.1.app/Contents/Developer | |
- name: Build/Test | |
run: make build-test-${{ matrix.platform }} | |
- name: Report Test Results | |
uses: kishikawakatsumi/xcresulttool@v1 | |
if: success() || failure() | |
with: | |
title: Test Results ${{ matrix.platform }} | |
path: ./TestResults/${{ matrix.platform }}.xcresult |