-
Notifications
You must be signed in to change notification settings - Fork 2
♻️ :: (#343) Fastlane 적용 #385
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
6467f8b
♻️ :: (#343) test ci
leejh08 50dbede
♻️ :: (#343) xcode cloud log
leejh08 10d6b13
♻️ :: (#343) ci post clone 파일 제거
leejh08 62d00b1
♻️ :: (#343) CI, CD 추가
leejh08 26f1e0a
♻️ :: (#343) ci 수정
leejh08 65bc384
♻️ :: (#343) tuist ci error
leejh08 62cb540
♻️ :: (#343) ci mac os version error
leejh08 0d22b53
♻️ :: (#343) tuist install -> fetch
leejh08 907690b
♻️ :: (#343) fastlane 경로 수정
leejh08 f3e2118
♻️ :: (#343) fastfile 절대경로 설정
leejh08 7502b01
♻️ :: (#343) Simulator destination
leejh08 58afbf4
♻️ :: (#343) SDK 방식으로 빌드 수정
leejh08 22ab67d
♻️ :: (#343) iOS 시뮬 설치
leejh08 0a71a02
♻️ :: (#343) Ci 테스트 제거
leejh08 26ff490
♻️ :: (#343) 단계 최소화
leejh08 f5ee08c
♻️ :: (#343) Tuist build 사용
leejh08 d550ce9
♻️ :: (#343) tuist 프로젝트 경로 이동
leejh08 ab8b736
♻️ :: (#343) 프로비저닝 세팅
leejh08 cd308bd
♻️ :: Move fastlane to private submodule for security
leejh08 dce9ed4
🔧 :: Update fastlane submodule (remove unnecessary files)
leejh08 7275db6
🔧 :: Update fastlane submodule (remove report.xml)
leejh08 5fd6605
🔧 :: Setup GitHub Actions workflows for CI/CD
leejh08 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| name: Lint | ||
|
|
||
| on: | ||
| pull_request: | ||
| branches: [ develop ] | ||
| push: | ||
| branches: [ develop ] | ||
|
|
||
| jobs: | ||
| swiftlint: | ||
| runs-on: macos-15 | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Setup Xcode | ||
| uses: maxim-lobanov/setup-xcode@v1 | ||
| with: | ||
| xcode-version: '16.2' | ||
|
|
||
| - name: Install SwiftLint | ||
| run: brew install swiftlint | ||
|
|
||
| - name: Run SwiftLint | ||
| run: swiftlint lint --strict |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| name: Release to App Store | ||
|
|
||
| on: | ||
| push: | ||
| branches: [ main ] | ||
|
|
||
| jobs: | ||
| release: | ||
| runs-on: macos-15 | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| submodules: recursive | ||
| token: ${{ secrets.GITHUB_TOKEN }} | ||
|
|
||
| - name: Setup XCConfig Files | ||
| run: | | ||
| echo "${{ secrets.XCCONFIG_BASE64 }}" | base64 --decode | tar -xz | ||
|
|
||
| - name: Setup Firebase Config Files | ||
| run: | | ||
| mkdir -p Projects/App/Resources/Firebase | ||
| echo "${{ secrets.GOOGLE_SERVICE_DEV_INFO }}" > Projects/App/Resources/Firebase/GoogleService-Dev-Info.plist | ||
| echo "${{ secrets.GOOGLE_SERVICE_STAGE_INFO }}" > Projects/App/Resources/Firebase/GoogleService-Stage-Info.plist | ||
| echo "${{ secrets.GOOGLE_SERVICE_PROD_INFO }}" > Projects/App/Resources/Firebase/GoogleService-Prod-Info.plist | ||
|
|
||
| - name: Setup Xcode | ||
| uses: maxim-lobanov/setup-xcode@v1 | ||
| with: | ||
| xcode-version: '16.2' | ||
|
|
||
| - name: Cache SPM | ||
| uses: actions/cache@v4 | ||
| with: | ||
| path: | | ||
| .build | ||
| ~/Library/Developer/Xcode/DerivedData/**/SourcePackages | ||
| key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-spm- | ||
|
|
||
| - name: Install mise | ||
| uses: jdx/mise-action@v2 | ||
| with: | ||
| install: true | ||
|
|
||
| - name: Install Fastlane | ||
| run: brew install fastlane | ||
|
|
||
| - name: Generate Xcode project with Tuist | ||
| run: | | ||
| mise exec -- tuist fetch | ||
| mise exec -- tuist generate --xcframeworks | ||
| env: | ||
| TUIST_CI: "1" | ||
|
|
||
| - name: Run Fastlane Release | ||
| run: fastlane release | ||
| env: | ||
| FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD: ${{ secrets.FASTLANE_PASSWORD }} | ||
| MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| [submodule "fastlane"] | ||
| path = fastlane | ||
| url = https://github.com/Team-return/JOBIS_fastlane.git | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| source "https://rubygems.org" | ||
|
|
||
| gem "fastlane", ">= 2.220" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,49 @@ | ||
| #!/bin/bash | ||
|
|
||
| # GitHub Secrets 설정을 위한 모든 내용 출력 스크립트 | ||
| # XCConfig 및 Firebase 설정 파일 내용을 출력 | ||
|
|
||
| echo "=========================================" | ||
| echo "GitHub Secrets 설정을 위한 파일 내용" | ||
| echo "총 4개의 Secret이 필요합니다" | ||
| echo "=========================================" | ||
| echo "" | ||
|
|
||
| echo "=== 1. XCCONFIG_BASE64 ===" | ||
| echo "이 내용을 전체 복사하여 GitHub Secret 'XCCONFIG_BASE64'에 추가하세요" | ||
| echo "---" | ||
| tar -czf - XCConfig | base64 | ||
| echo "" | ||
| echo "" | ||
|
|
||
| echo "=== 2. GOOGLE_SERVICE_DEV_INFO ===" | ||
| echo "이 내용을 전체 복사하여 GitHub Secret 'GOOGLE_SERVICE_DEV_INFO'에 추가하세요" | ||
| echo "---" | ||
| cat Projects/App/Resources/Firebase/GoogleService-Dev-Info.plist | ||
| echo "" | ||
| echo "" | ||
|
|
||
| echo "=== 3. GOOGLE_SERVICE_STAGE_INFO ===" | ||
| echo "이 내용을 전체 복사하여 GitHub Secret 'GOOGLE_SERVICE_STAGE_INFO'에 추가하세요" | ||
| echo "---" | ||
| cat Projects/App/Resources/Firebase/GoogleService-Stage-Info.plist | ||
| echo "" | ||
| echo "" | ||
|
|
||
| echo "=== 4. GOOGLE_SERVICE_PROD_INFO ===" | ||
| echo "이 내용을 전체 복사하여 GitHub Secret 'GOOGLE_SERVICE_PROD_INFO'에 추가하세요" | ||
| echo "---" | ||
| cat Projects/App/Resources/Firebase/GoogleService-Prod-Info.plist | ||
| echo "" | ||
| echo "" | ||
|
|
||
| echo "=========================================" | ||
| echo "다음 단계:" | ||
| echo "1. GitHub 저장소 → Settings → Secrets and variables → Actions" | ||
| echo "2. New repository secret 클릭" | ||
| echo "3. 위 4개 내용을 각각 복사하여 추가" | ||
| echo " - XCCONFIG_BASE64" | ||
| echo " - GOOGLE_SERVICE_DEV_INFO" | ||
| echo " - GOOGLE_SERVICE_STAGE_INFO" | ||
| echo " - GOOGLE_SERVICE_PROD_INFO" | ||
| echo "=========================================" |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 223
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 338
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 705
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 83
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 189
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 115
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 2240
🏁 Script executed:
cat -n README.md | head -100Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 5494
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 114
🏁 Script executed:
Repository: Team-return/JOBIS-DSM-iOS-v2
Length of output: 556
팀 개발자 로컬 개발 환경 설정 문서 필요 및 저장소 접근 권한 확인 필요
비공개
JOBIS_fastlane서브모듈의 접근 설정과 관련하여 다음 사항들을 검토해주세요:로컬 개발 환경 설정 문서 부재: README에서 팀 멤버들이 이 저장소를 클론한 후 비공개 서브모듈에 접근할 수 있도록 설정하는 방법에 대한 가이드가 없습니다. 개인용 액세스 토큰(PAT) 또는 SSH 키를 이용한 인증 설정 방법을 문서화해주세요.
CI/CD 환경에서의 저장소 접근 권한: CI 워크플로우에서
GITHUB_TOKEN을 사용하여submodules: recursive로 체크아웃하도록 설정되어 있습니다. 다만,GITHUB_TOKEN이 같은 조직 내 비공개 저장소의 서브모듈에 접근 가능한 권한을 가지고 있는지 GitHub 저장소 설정에서 확인이 필요합니다.SSH 사용 검토 (선택사항): 현재 HTTPS URL로 설정되어 있으나, 비공개 저장소의 경우 SSH URL(
[email protected]:Team-return/JOBIS_fastlane.git)을 사용하는 것이 권한 관리 측면에서 더 명확할 수 있습니다. 팀의 워크플로우에 맞는 방식을 선택해주세요.🤖 Prompt for AI Agents