Skip to content

refactor: 서버 사이드에서 Auth가 제거되면 자동으로 Firestore 데이터가 제거되도록 개선 #23

refactor: 서버 사이드에서 Auth가 제거되면 자동으로 Firestore 데이터가 제거되도록 개선

refactor: 서버 사이드에서 Auth가 제거되면 자동으로 Firestore 데이터가 제거되도록 개선 #23

Workflow file for this run

name: iOS TestFlight
on:
push:
tags:
- "qa-*"
workflow_dispatch:
env:
SCHEME: DevLog
RUBY_VERSION: "3.2"
XCODE_VERSION: latest
APP_STORE_TEAM_ID: ${{ secrets.APP_STORE_TEAM_ID }}
ASC_KEY_ID: ${{ secrets.ASC_KEY_ID }}
ASC_ISSUER_ID: ${{ secrets.ASC_ISSUER_ID }}
ASC_KEY_PATH: fastlane/AuthKey.p8
SPACESHIP_CONNECT_API_IN_HOUSE: "false"
MATCH_GIT_URL: ${{ secrets.MATCH_GIT_URL }}
MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
MATCH_GIT_BASIC_AUTHORIZATION: ${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }}
permissions:
contents: read
jobs:
validate:
runs-on: macos-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- name: Install private config files
uses: ./.github/actions/install-private-config
with:
git_url: ${{ env.MATCH_GIT_URL }}
git_basic_authorization: ${{ env.MATCH_GIT_BASIC_AUTHORIZATION }}
- name: Set up Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ env.XCODE_VERSION }}
- name: Cache SwiftPM
uses: actions/cache@v4
with:
path: |
~/.swiftpm
~/Library/Caches/org.swift.swiftpm
~/Library/Developer/Xcode/SourcePackages
.spm
key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
restore-keys: |
${{ runner.os }}-spm-
- name: Validate Debug Simulator Build
uses: ./.github/actions/ios-simulator-build
with:
scheme: ${{ env.SCHEME }}
testflight:
needs: validate
runs-on: macos-latest
timeout-minutes: 45
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install private config files
uses: ./.github/actions/install-private-config
with:
git_url: ${{ env.MATCH_GIT_URL }}
git_basic_authorization: ${{ env.MATCH_GIT_BASIC_AUTHORIZATION }}
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
ruby-version: ${{ env.RUBY_VERSION }}
- name: Set up Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ env.XCODE_VERSION }}
- name: Write App Store Connect API key
env:
ASC_KEY_CONTENT: ${{ secrets.ASC_KEY_CONTENT }}
run: |
printf '%s' "$ASC_KEY_CONTENT" | base64 -D > "$ASC_KEY_PATH"
- name: Build for TestFlight
run: bundle exec fastlane testflight_build_only
- name: Skip TestFlight Upload for Local QA Tag
if: github.event_name == 'push' && startsWith(github.ref_name, 'qa-local-')
run: echo "Skipping TestFlight upload for local QA tag ${GITHUB_REF_NAME}"
- name: Upload to TestFlight
if: github.event_name != 'push' || !startsWith(github.ref_name, 'qa-local-')
run: bundle exec fastlane upload_testflight_build