Skip to content

Commit 0a9478b

Browse files
committed
ci: Tuist 생성 검증 추가
1 parent c2a2bd4 commit 0a9478b

2 files changed

Lines changed: 27 additions & 2 deletions

File tree

.github/workflows/build.yml

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
env:
77
WORKSPACE: DevLog.xcworkspace
88
SCHEME: DevLog
9-
XCODE_VERSION: latest
9+
XCODE_VERSION: "26.3"
1010
MATCH_GIT_URL: ${{ secrets.MATCH_GIT_URL }}
1111
MATCH_GIT_BASIC_AUTHORIZATION: ${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }}
1212

@@ -51,6 +51,12 @@ jobs:
5151
sudo xcode-select -s "$XCODE_APP/Contents/Developer"
5252
xcodebuild -version
5353
54+
- name: Set up Tuist
55+
uses: jdx/mise-action@v3
56+
with:
57+
install: true
58+
cache: true
59+
5460
- name: Cache SwiftPM
5561
uses: actions/cache@v5
5662
with:
@@ -63,6 +69,25 @@ jobs:
6369
restore-keys: |
6470
${{ runner.os }}-spm-
6571
72+
- name: Generate Xcode project with Tuist
73+
shell: bash
74+
run: |
75+
set -euo pipefail
76+
77+
tuist generate --no-open
78+
79+
git diff --exit-code -- \
80+
DevLog.xcworkspace \
81+
Application/DevLogApp/DevLogApp.xcodeproj \
82+
Application/DevLogCore/DevLogCore.xcodeproj \
83+
Application/DevLogData/DevLogData.xcodeproj \
84+
Application/DevLogDomain/DevLogDomain.xcodeproj \
85+
Application/DevLogInfra/DevLogInfra.xcodeproj \
86+
Application/DevLogPersistence/DevLogPersistence.xcodeproj \
87+
Application/DevLogPresentation/DevLogPresentation.xcodeproj \
88+
Widget/DevLogWidgetCore/DevLogWidgetCore.xcodeproj \
89+
Widget/DevLogWidgetExtension/DevLogWidgetExtension.xcodeproj
90+
6691
- name: Select iOS Simulator Runtime (installed)
6792
id: pick_ios
6893
shell: bash

.hermes/skills/devlog-architecture-harness/references/devlog-workflow-rules.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ This reference holds DevLog-specific working rules that should live with the pro
1313
- Prefer Xcode Local MCP for iOS project code changes.
1414
- If Xcode Local MCP is unavailable or fails because of session transport, state that explicitly before using a fallback.
1515
- This repository is workspace-based. Prefer workspace/scheme context over standalone project builds when dependencies cross module projects.
16-
- CI truth lives in `.github/workflows/build.yml`: `DevLog.xcworkspace`, scheme `DevLog`, simulator build, `-resolvePackageDependencies`, `-skipPackagePluginValidation`, and `-skipMacroValidation`.
16+
- CI truth lives in `.github/workflows/build.yml`: select Xcode 26.3, install Tuist with mise, run `tuist generate --no-open`, assert generated Xcode files are clean with `git diff --exit-code`, then build `DevLog.xcworkspace` scheme `DevLog` with `-resolvePackageDependencies`, `-skipPackagePluginValidation`, and `-skipMacroValidation`.
1717
- CI is build validation, not a full test run, unless the workflow changes.
1818
- Avoid unrelated `Package.resolved` churn. Keep lockfile changes only when dependency resolution is the task.
1919

0 commit comments

Comments
 (0)