Repository navigation
Conversation
포크 PR에 저장소 secrets가 전달되지 않으면 Mac의 로컬 설정과 Tuist 로그인을 사용한다. 기존 self-hosted 테스트 경로를 유지하고 빈 shard 및 댓글 권한 오류를 처리한다.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 719f445dcb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| cancel-in-progress: true | ||
|
|
||
| env: | ||
| IOS_LOCAL_CONFIG_ROOT: ${{ vars.IOS_LOCAL_CONFIG_ROOT }} |
There was a problem hiding this comment.
Isolate fork builds from runner-local credentials
For any untrusted fork PR, this workflow now resolves IOS_LOCAL_CONFIG_ROOT, copies that Mac-local configuration into the checkout, and deliberately retains the runner's saved Tuist login before executing PR-controlled manifests and scripts. A fork can therefore exfiltrate the restored files or perform authenticated Tuist operations; GitHub explicitly warns that fork PRs can compromise persistent self-hosted runners and their secrets. Run fork jobs on an ephemeral credential-free runner, or separate the untrusted build from a trusted, approved workflow that accesses these resources. GitHub self-hosted runner security guidance
Useful? React with 👍 / 👎.
🛠️ Tuist Run Report 🛠️Tests 🧪
Builds 🔨
Bundles 🧰
|
✅ 테스트 통과862 passed · 15m 4s · 총 862개 iPhone (iOS Simulator 27.1) · Tuist 테스트 실행 · Tuist 빌드 실행 · 📦 Bundle 크기
📊 커버리지 51.5% (15,391 / 29,905 라인)🟡 모듈별 커버리지
|
포크 PR에서 저장소 secrets가 전달되지 않으면 같은 Mac 러너에서도 설정 복원과 Tuist 인증이 실패했습니다. 또한 SDK 27.0으로 만든 Tuist 바이너리가 로컬 SDK 27.1 프로젝트에 사용되면서 Swift 모듈 호환 오류가 발생했습니다. Mac의 기존 설정·인증을 사용하고 현재 SDK의 소스로 테스트 산출물을 빌드하도록 수정합니다.
변경 내용
~/.config/ddd-attendance-ci에서 복원합니다.IOS_LOCAL_CONFIG_ROOT저장소 변수로 경로를 지정할 수 있습니다.TUIST_TOKEN을 전달해 빈 값이 Mac의 저장된 Tuist 로그인을 덮어쓰지 않게 합니다.none으로 변경하고 PR/develop 테스트 빌드에--no-binary-cache를 적용합니다. Xcode 컴파일 캐시와 shard 산출물 재사용은 유지합니다.only-external프로필을 명시해 기존 캐시 생산 동작을 유지합니다.검증
tuist generate --no-open성공, 해당 9개 프로젝트에서 이전 Tuist 바이너리 참조 제거 확인git diff --check통과검증 범위
전체 GitHub shard 테스트와 실제 포크 PR 실행 결과는 후속 CI에서 확인해야 합니다. 로컬 빌드에서는 SDK 불일치가 확인됐으며 CI의 같은 모듈 오류에 대응하는 설정을 적용했습니다. Claude 교차 검토는 CLI 시간 초과로 완료하지 못했습니다. checkout@v4의 Node.js 20 경고는 이번 Swift 모듈 오류와 별개이며 이번 변경에 포함하지 않았습니다.
포크 코드가 Mac의 로컬 설정과 인증에 접근하는 기존 실행 구조를 유지합니다.