You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #748에서 CI와 TestFlight workflow가 staging 원본 plist를 공통 GoogleService-Info.plist 경로에 설치하도록 구성했다. App scheme의 Staging configuration, APP_ENVIRONMENT=staging과 선택된 plist를 사용하는 dSYM 업로드 구조도 준비돼 있다.
현재 iOS는 Debug/Staging에서 FIRESTORE_DATABASE_ID=staging과 https://asia-northeast3-devlog-c87b6.cloudfunctions.net/stagingApi/api를 사용하므로 기존 단일 project의 staging 자원을 가리킨다.
새 staging 서버는 devlog-staging project의 (default) Firestore와 api 함수로 배포됐다. iOS의 Firebase plist, database ID와 Functions URL을 이 자원에 연결하고 산출물을 검증해야 한다.
상위 이슈: #740
배경
PR #748에서 CI와 TestFlight workflow가 staging 원본 plist를 공통
GoogleService-Info.plist경로에 설치하도록 구성했다.Appscheme의Stagingconfiguration,APP_ENVIRONMENT=staging과 선택된 plist를 사용하는 dSYM 업로드 구조도 준비돼 있다.현재 iOS는
Debug/Staging에서FIRESTORE_DATABASE_ID=staging과https://asia-northeast3-devlog-c87b6.cloudfunctions.net/stagingApi/api를 사용하므로 기존 단일 project의 staging 자원을 가리킨다.새 staging 서버는
devlog-stagingproject의(default)Firestore와api함수로 배포됐다. iOS의 Firebase plist, database ID와 Functions URL을 이 자원에 연결하고 산출물을 검증해야 한다.확인된 staging 기대값
PROJECT_ID:devlog-stagingGOOGLE_APP_ID:1:686659799179:ios:eba4e86096153f0539ec8eBUNDLE_ID:opfic.DevLogFIRESTORE_DATABASE_ID:(default)FUNCTION_API_BASE_URL:https://asia-northeast3-devlog-staging.cloudfunctions.net/api/api목표
로컬 Debug, CI와 TestFlight 빌드가 새 staging Firebase project의
(default)Firestore와 공통api만 참조하도록 구성하고 검증한다.작업
GoogleService-Info.plist가 확인된 기대값과 일치하는지 확인함Project.swift의Debug와Staging에FIRESTORE_DATABASE_ID=(default)를 주입함(default)로 변경함apiURL로 변경함devlog-c87b6, 기존stagingApi, prod app ID 또는 prod Functions URL을 포함하면 실패하도록 확인함(default)Firestore 읽기·쓰기를 확인함이미 완료된 범위
testflight.yml의environment: staging지정Appscheme과Stagingconfiguration 사용APP_ENVIRONMENT=staging주입devlog-staging의 iOS 앱 등록과 공통api배포제외 범위
서버 자원과의 교차 project 사용 여부는 opficdev/DevLog_Firebase#52에서 연계 검증한다.
검증
APP_ENVIRONMENT=staging확인PROJECT_ID=devlog-staging확인GOOGLE_APP_ID=1:686659799179:ios:eba4e86096153f0539ec8e확인BUNDLE_ID=opfic.DevLog확인FIRESTORE_DATABASE_ID=(default)확인FUNCTION_API_BASE_URL=https://asia-northeast3-devlog-staging.cloudfunctions.net/api/api확인devlog-c87b6, named database ID, 기존stagingApi또는 prod 식별자 사용 시 검증 실패완료 조건
devlog-staging설정만 포함함devlog-staging/(default)Firestore를 사용함apiURL을 사용함의존 관계