Skip to content

[FEAT] TestFlight 배포 자동화 - #96

Merged
khyeji98 merged 5 commits into
developfrom
feature/#95
Jul 10, 2026
Merged

[FEAT] TestFlight 배포 자동화#96
khyeji98 merged 5 commits into
developfrom
feature/#95

Conversation

@khyeji98

Copy link
Copy Markdown
Collaborator

작업 내용

  • Stage/Dev 구성을 제거하고 Debug/Prod 중심으로 프로젝트 설정을 정리했습니다.
  • Bangawo-Prod 스킴과 Prod configuration 기준으로 fastlane 배포 lane을 정렬했습니다.
  • 앱 빌드 넘버 기본값을 1로 정리하고 CFBundleVersionCURRENT_PROJECT_VERSION을 참조하도록 변경했습니다.
  • TestFlight 최신 빌드 넘버를 조회해 다음 빌드 넘버로 업로드하도록 fastlane beta lane을 확장했습니다.
  • main PR 머지 및 수동 실행 시 테스트 후 TestFlight 배포를 수행하는 GitHub Actions workflow를 추가했습니다.

검증

  • ./tuisttool generate
  • ruby -c fastlane/Fastfile
  • workflow YAML parse
  • git diff --check

참고

  • Config/Release.xcconfigConfig/ gitignore 정책상 이 PR에 포함되지 않습니다.
  • CI의 make download-privatesRelease.xcconfig를 받을 수 있도록 private config repo 업로드가 별도로 필요합니다.

Closes #95

@khyeji98 khyeji98 self-assigned this Jul 10, 2026
@khyeji98 khyeji98 changed the title feat: TestFlight 배포 자동화 [FEAT] TestFlight 배포 자동화 Jul 10, 2026
@khyeji98
khyeji98 requested a review from duthd3 July 10, 2026 05:31

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

배포 자동화를 위해 Stage/Dev 환경을 제거하고 Debug/Prod 환경으로 설정을 간소화하는 작업이 정상적으로 반영되었습니다. 다만, 일부 변수명에 이전 환경 명칭(Dev)이 그대로 남아있어 일관성을 저해하는 부분이 확인되어 수정을 제안합니다.

)

let targets = [appTarget, appDevTarget, appStageTarget, appProdTarget ,appTestTarget]
let targets = [appTarget, appDevTarget, appProdTarget, appTestTarget]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 [P4] Readability

기존 Dev 구성을 Debug로 마이그레이션하면서 타겟 정의부(라인 57)의 이름은 "\(name)-Debug"로 변경되었으나, 변수명은 여전히 appDevTarget으로 유지되고 있습니다.

코드의 일관성과 유지보수성을 위해 변수명을 appDebugTarget으로 변경하는 것을 권장합니다. (라인 57의 선언부와 함께 변경이 필요합니다.)

Suggested change
let targets = [appTarget, appDevTarget, appProdTarget, appTestTarget]
let targets = [appTarget, appDebugTarget, appProdTarget, appTestTarget]

@github-actions

Copy link
Copy Markdown

{
"summary": "프로젝트 구성 단순화(Stage/Dev 제거, Debug/Prod 유지) 및 빌드 버전 참조 방식 개선이 올바르게 적용되었습니다. 변경 사항 중 미사용 코드가 될 가능성이 있는 부분과 xcconfig 설정 누락 방지를 위한 검증을 코멘트로 남겼습니다.",
"comments": [
{
"path": "Plugins/ProjectTemplatePlugin/ProjectDescriptionHelpers/Project+Templete/Extension+String.swift",
"line": 18,
"code_snippet": " public static func appBuildVersion(buildVersion: String = "1") -> String {",
"body": "🔵 [P4] Readability\n\nProject+InfoPlist.swift에서 .appBuildVersion() 호출이 제거되고 $(CURRENT_PROJECT_VERSION)을 직접 참조하도록 변경되었습니다. 만약 프로젝트 내부적으로 이 appBuildVersion 메서드를 사용하는 곳이 더 이상 존재하지 않는다면, 데드 코드(Dead Code)를 방지하기 위해 해당 메서드를 완전히 제거하는 것을 권장합니다."
},
{
"path": "Plugins/ProjectTemplatePlugin/ProjectDescriptionHelpers/infoPlist/Project+InfoPlist.swift",
"line": 28,
"code_snippet": " .setCFBundleVersion("$(CURRENT_PROJECT_VERSION)")",
"body": "🟡 [P3] Minor\n\nCFBundleVersion을 $(CURRENT_PROJECT_VERSION)으로 직접 참조하도록 변경했습니다. 빌드 시 에러가 발생하거나 빌드 번호가 누락되는 현상을 방지하기 위해, 현재 설정된 모든 xcconfig 파일(Debug.xcconfig, Prod.xcconfig, Release.xcconfig) 내에 CURRENT_PROJECT_VERSION = 1 과 같이 해당 변수가 정상적으로 정의되어 있는지 반드시 확인해 주시기 바랍니다."
}
]
}

@khyeji98
khyeji98 merged commit 750e87d into develop Jul 10, 2026
1 check passed
@khyeji98
khyeji98 deleted the feature/#95 branch July 10, 2026 06:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant