현재 사용하고 있는 github worksflow 코드
name: Build and Test
on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]
jobs:
build:
name: Build and Test
runs-on: macos-14
steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '15.0.1'
- name: Checkout
uses: actions/checkout@v3
- name: Build and Test
run: |
xcodebuild clean -project PlantingMind/PlantingMind.xcodeproj -scheme PlantingMind -destination 'platform=iOS Simulator,name=iPhone 15 Pro,OS=17.0.1' -resultBundlePath TestResults test
- name: xcresulttool
uses: kishikawakatsumi/xcresulttool@v1.7.1
with:
path: TestResults.xcresult
if: success() || failure()
- pull request 생성 후 커밋할 때, develop 브랜치에 pull request가 머지되는 경우 action 수행
- xcode를 특정 버전으로 사용하기 위해 maxim-lobanov/setup-xcode@v1 사용
- macos 버전에 따른 사용 가능한 xcode version과 시뮬레이터 버전은 https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md#xcode 에서 확인 가능
- xcresult 파일을 확인하기 위해 kishikawakatsumi/xcresulttool@v1.7.1 사용
- Build 할 때 코드에 -resultBundlePath 값을 지정해야 함.
- 레포지토리 세팅 - Action - General에서 Workflow Permission 다음과 같이 변경 필요
결과 페이지에서 테스트 관련 결과와 코드 커버리지까지 볼 수 있어서 아주 좋다.
github marketplace
반응형
'SwiftUI > Planting-Mind Dev Log' 카테고리의 다른 글
devlog 06. SwiftUI - FileImporter, FileExporter (0) | 2024.04.09 |
---|---|
devlog 05. Scheme '__' is not currently configured for the test action. (0) | 2024.03.21 |
devlog 04. Localization with String Catalog (0) | 2024.03.13 |
devlog 03. sink에 들어오는 값은 willSet의 값이었다. (0) | 2024.03.12 |
devlog 01. SwiftUI에 CoreData 추가 (0) | 2024.03.03 |