Skip to content

πŸ”§ [Chore] UMCApp(Tuist) λΉŒλ“œ+ν…ŒμŠ€νŠΈ CI 게이트 μΆ”κ°€ 및 AppProduct CI path 필터링#939

Merged
JEONG-J merged 1 commit into
developfrom
chore/908
Jul 5, 2026
Merged

πŸ”§ [Chore] UMCApp(Tuist) λΉŒλ“œ+ν…ŒμŠ€νŠΈ CI 게이트 μΆ”κ°€ 및 AppProduct CI path 필터링#939
JEONG-J merged 1 commit into
developfrom
chore/908

Conversation

@JEONG-J

@JEONG-J JEONG-J commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

✨ PR μœ ν˜•

πŸ”§ Chore / CI β€” ν™œμ„± μ½”λ“œλ² μ΄μŠ€(UMCApp/Tuist)의 μ»΄νŒŒμΌΒ·ν…ŒμŠ€νŠΈ 게이트 μΆ”κ°€ 및 동결 λ ˆκ±°μ‹œ(AppProduct) CI path 필터링

πŸ› οΈ μž‘μ—…λ‚΄μš©

κΈ°μ‘΄ CIλŠ” λ™κ²°λœ λ ˆκ±°μ‹œ AppProduct.xcodeproj만 λΉŒλ“œν–ˆκ³ , ν™œλ°œνžˆ 이식 쀑인 UMCApp/(Tuist)μ—λŠ” 컴파일/ν…ŒμŠ€νŠΈ κ²Œμ΄νŠΈκ°€ μ „λ¬΄ν–ˆμŠ΅λ‹ˆλ‹€. (싀증: #865 μ—μ„œ String 톡일 ν”Όλ“œλ°±μ΄ AppProduct λͺ¨λΈ 2κ°œκΉŒμ§€ 잘λͺ» λ°”κΏ” iOS CIκ°€ κΉ¨μ§„ 사둀 β€” UMCApp 자체 λΉŒλ“œ 깨짐은 μ–΄λ–€ CI도 μž‘μ§€ λͺ»ν•˜λŠ” μƒνƒœμ˜€μŒ.)

1. .github/workflows/tuist-ci.yml μ‹ κ·œ μΆ”κ°€

  • 트리거: develop push / PR
  • runs-on: macos-26, working-directory: UMCApp
  • Xcode 26.4+ 선택 단계 β€” ios.yml 둜직 κ·ΈλŒ€λ‘œ μž¬μ‚¬μš©
  • jdx/mise-action@v2 둜 mise.toml 의 Tuist 4.155.0 μ„€μΉ˜ (working_directory: UMCApp)
  • 둜컬과 λ™μΌν•œ μ§„μž…μ μΈ UMCApp/Makefile μ‚¬μš©:
    make install(tuist install) β†’ make generate(tuist generate --no-open) β†’ make test(λΉŒλ“œ+ν…ŒμŠ€νŠΈ)
  • Secrets.xcconfig ν”Œλ ˆμ΄μŠ€ν™€λ” 생성 단계: μ‹ κ·œ ν΄λ‘ μ—λŠ” git-untracked Secrets.xcconfig κ°€ μ—†μœΌλ―€λ‘œ ν…œν”Œλ¦Ώμ„ 볡사. (Secrets/Shared.xcconfig 의 #include? κ°€ optional 이라 없어도 λΉŒλ“œλ˜μ§€λ§Œ, 둜컬 개발과 동일 μƒνƒœλ₯Ό 보μž₯ν•˜κΈ° μœ„ν•œ 방어적 단계)
  • SwiftPM/Tuist μ‚°μΆœλ¬Ό μΊμ‹œ(actions/cache@v4)둜 λΉŒλ“œ μ‹œκ°„ 단좕

2. .github/workflows/ios.yml β€” paths ν•„ν„° μΆ”κ°€

  • AppProduct/** λ˜λŠ” .github/workflows/ios.yml λ³€κ²½ μ‹œμ—λ§Œ 동결 λ ˆκ±°μ‹œ λΉŒλ“œ μ‹€ν–‰ β†’ λΆˆν•„μš”ν•œ μ‹€ν–‰ 제거

πŸ“Œ 리뷰 포인트

  • 트리거 λΉ„λŒ€μΉ­(μ˜λ„μ ): ν™œμ„± 게이트(tuist-ci)λŠ” develop 의 λͺ¨λ“  push/PR μ—μ„œ μ•ˆμ „λ§μœΌλ‘œ λ™μž‘ν•˜λ„λ‘ paths ν•„ν„°λ₯Ό 두지 μ•Šμ•˜κ³ , λ™κ²°λœ ios.yml 만 AppProduct/** 둜 μ’ν˜”μŠ΅λ‹ˆλ‹€. (λŸ¬λ„ˆ λΆ„(minutes) μ ˆμ•½μ„ μœ„ν•΄ tuist-ci 에도 paths/paths-ignore(docs λ“±) ν•„ν„°κ°€ ν•„μš”ν•˜λ©΄ ν›„μ†μœΌλ‘œ μ‘°μ • κ°€λŠ₯)
  • μ‹œν¬λ¦Ώ 처리: UMCApp 은 GoogleService-Info.plist λ―Έμ°Έμ‘°(Firebase μ—†μŒ), Shared.xcconfig(컀밋됨)의 κΈ°λ³Έκ°’ + optional #include? 둜 μ‹œν¬λ¦Ώ 없이 λΉŒλ“œλ©λ‹ˆλ‹€.
  • 싀검증: 이 PR μžμ²΄κ°€ μ‹ κ·œ tuist-ci μ›Œν¬ν”Œλ‘œμš°λ₯Ό νŠΈλ¦¬κ±°ν•˜λ―€λ‘œ, μ•„λž˜ Checks 초둝뢈둜 μ‹€μ œ λ™μž‘μ„ ν™•μΈν•©λ‹ˆλ‹€. (μ™„λ£Œ 쑰건의 "1회 λΉŒλ“œλ‘œ 검증")

βœ… Checklist

  • 컀밋 λ©”μ‹œμ§€ μ»¨λ²€μ…˜μ— 맞게 μž‘μ„±ν–ˆμŠ΅λ‹ˆλ‹€
  • μœ μ§€-보수λ₯Ό μœ„ν•΄ μ£Όμ„μ²˜λ¦¬λ₯Ό 잘 μž‘μ„±ν•˜μ˜€λŠ”κ°€?

Resolves #908

- .github/workflows/tuist-ci.yml μ‹ κ·œ μΆ”κ°€: develop push/PR μ‹œ UMCApp(Tuist)
  μ›Œν¬μŠ€νŽ˜μ΄μŠ€λ₯Ό make install β†’ make generate β†’ make test 둜 λΉŒλ“œ+ν…ŒμŠ€νŠΈ
  - runs-on: macos-26, working-directory: UMCApp
  - Xcode 26.4+ 선택 단계(ios.yml 둜직 μž¬μ‚¬μš©)
  - jdx/mise-action@v2 둜 mise.toml 의 Tuist 4.155.0 μ„€μΉ˜
  - Secrets.xcconfig ν”Œλ ˆμ΄μŠ€ν™€λ” 생성(ν…œν”Œλ¦Ώ 볡사, Shared.xcconfig 의 #include? optional λŒ€λΉ„)
  - SwiftPM/Tuist μ‚°μΆœλ¬Ό μΊμ‹œλ‘œ λΉŒλ“œ μ‹œκ°„ 단좕
- .github/workflows/ios.yml: paths ν•„ν„° μΆ”κ°€ β†’ AppProduct/** λ˜λŠ”
  μ›Œν¬ν”Œλ‘œμš° 파일(ios.yml) λ³€κ²½ μ‹œμ—λ§Œ 동결 λ ˆκ±°μ‹œ λΉŒλ“œ μ‹€ν–‰

κ΄€λ ¨ 이슈: #908
@JEONG-J JEONG-J added the πŸ”§ chore ν”„λ‘œμ νŠΈ μ„ΈνŒ…, λΉŒλ“œ μ„€μ •, μ˜μ‘΄μ„± 관리 λ“± 기타 μž‘μ—…μž…λ‹ˆλ‹€. label Jul 5, 2026
@JEONG-J JEONG-J self-assigned this Jul 5, 2026
@JEONG-J JEONG-J merged commit c33840e into develop Jul 5, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

πŸ”§ chore ν”„λ‘œμ νŠΈ μ„ΈνŒ…, λΉŒλ“œ μ„€μ •, μ˜μ‘΄μ„± 관리 λ“± 기타 μž‘μ—…μž…λ‹ˆλ‹€.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

πŸ€ ETC: UMCApp(Tuist) λΉŒλ“œ+ν…ŒμŠ€νŠΈ CI 게이트 μΆ”κ°€ 및 AppProduct CI path 필터링

1 participant