콘텐츠로 이동

2.2.0 릴리스 실행 기록

문서 역할

  • 역할: 시나리오
  • 문서 종류: flow
  • 충돌 시 우선 문서: policy/release-process.md, 태그 기준은 policy/release-tag-policy.md
  • 기준 성격: as-is

목적

  • v2.2.0 릴리스의 Mobile Store 승인/출시 기준점, Mobile NextPush 배포, API 운영 반영 결과, 서비스 태그와 제출 마커 증빙을 한 문서에 고정한다.

범위

  • 대상: docs, coupler-api, coupler-mobile-app
  • 포함 범위: API 운영 배포, Mobile Store 승인/출시 기준점 기록, Mobile NextPush 배포, 서비스 태그 확정, 제출 마커 증빙 이관, docs Release 기록
  • 제외 범위: coupler-admin-web 운영 배포, 운영 RDS 변경

상위 규범 문서

릴리스 상태

  • 목표 버전: v2.2.0
  • 전체 상태: released
  • 완료 범위: coupler-api 운영 배포/태그, coupler-mobile-app Store 승인 기준 태그, coupler-mobile-app 제출 마커 태그 증빙 이관/삭제, Mobile NextPush Android/iOS Production 배포, docs 태그/GitHub Release 생성
  • coupler-api 태그: v2.2.0 -> 4b96c904fe550f9295f0f4b3fb164814d6e468d3
  • coupler-admin-web 태그: N/A (배포 변경 없음)
  • coupler-mobile-app 태그: v2.2.0 -> e4dd5b7c5d56b26065c6de31eca7b9c5f6225248
  • coupler-mobile-app 제출 마커 태그: submitted/android-2.2.0-97 -> 13ce1f99c59194031a8545d35028d08125bf26bc, submitted/ios-2.2.0-97 -> e4dd5b7c5d56b26065c6de31eca7b9c5f6225248
  • 제출 마커 증빙 이관/삭제: 이 문서에 증빙을 이관했고, 로컬/원격 submitted/*2.2.0* 태그 삭제를 완료했다.
  • docs 태그: v2.2.0 -> docs release workflow 및 docs-only corrective reissue 실행 시점의 docs tag commit

릴리스 결과

  • coupler-api 운영 EC2를 4b96c904fe550f9295f0f4b3fb164814d6e468d3 기준으로 배포하고 내부/외부 응답과 DB 연결을 확인했다.
  • coupler-mobile-app Android/iOS Store 빌드는 2.2.0 (97) 승인 기준으로 v2.2.0 태그를 생성했다.
  • coupler-mobile-app Android/iOS NextPush Production 배포를 2.2.0 binary 대상으로 완료했다.
  • Android/iOS 제출 기준 커밋이 달라 제출 마커는 platform별로 분리했고, 릴리스 기록으로 tag commit과 artifact/hash 증빙을 이관한 뒤 로컬/원격 태그를 삭제했다.
  • docs GitHub Release와 docs-site-v2.2.0.tar.gz artifact를 생성했고, NextPush 배포 결과를 docs-only corrective reissue로 반영했다.
  • coupler-admin-web, 운영 RDS는 이번 릴리스 범위에 포함하지 않았다.

메인 흐름

  1. Mobile Store Android/iOS 2.2.0 (97) 승인 상태를 확인했다.
  2. 운영 coupler-apiorigin/main4b96c904fe550f9295f0f4b3fb164814d6e468d3까지 fast-forward 반영했다.
  3. 운영 coupler-api에서 pnpm install --frozen-lockfile, sudo pm2 restart coupler-api --update-env, sudo pm2 save를 수행했다.
  4. API 내부/외부 응답, DB SELECT 1, PM2 상태, 로그를 확인한 뒤 coupler-api v2.2.0 태그를 push했다.
  5. coupler-mobile-app v2.2.0 태그를 승인된 Store 기준 커밋 e4dd5b7c5d56b26065c6de31eca7b9c5f6225248에 생성했다.
  6. 제출 마커 태그의 artifact/hash 증빙을 이 문서에 이관하고, coupler-mobile-app 로컬/원격 제출 마커 태그를 삭제했다.
  7. coupler-mobile-app Android/iOS NextPush Production 배포를 2.2.0 binary 대상으로 수행했다.
  8. docs v2.2.0 태그를 push해 GitHub Release와 site artifact를 생성했다.
  9. NextPush 배포 결과를 반영하기 위해 docs-only corrective reissuedocs Release 본문과 site artifact를 정정했다.

검증 근거

  • coupler-api
    • 운영 커밋: 4b96c904fe550f9295f0f4b3fb164814d6e468d3
    • 태그 객체: 518ff0a86640e5f5f5944f8e403688bc18aa0688
    • PM2 상태: coupler-api online
    • 내부 응답: http://127.0.0.1:3002/ -> ritzy API Running ...
    • 외부 응답: https://api.ritzy.fourhundred.co.kr/ -> ritzy API Running ...
    • DB 연결: SELECT 1 AS ok -> [{"ok":1}]
    • 운영 config 백업: /tmp/coupler-api-default-before-2.2.0-20260628170421.json, /tmp/coupler-api-default-before-2.2.0-20260628170421.diff
  • coupler-mobile-app
    • 릴리즈 태그 객체: ad16056a235d0518b8785731f8aea5b8015fe59d
    • 릴리즈 태그 커밋: e4dd5b7c5d56b26065c6de31eca7b9c5f6225248
    • Store 출시/smoke 확인자: 김민식
    • Store 출시/smoke 확인 시각: 2026-06-28 KST
    • Android Store 출시/smoke: Play Console 기준 2.2.0 (97) 승인/출시 확인, 앱 실행/로그인/홈 진입 smoke 통과
    • iOS Store 출시/smoke: App Store Connect 기준 2.2.0 (97) 승인/출시 확인, 앱 실행/로그인/홈 진입 smoke 통과
    • Android 제출 마커 태그 객체: b4fade86abeb414388e9336dcd357b1e188ca868
    • Android 제출 마커 커밋: 13ce1f99c59194031a8545d35028d08125bf26bc
    • Android AAB: android/app/build/outputs/bundle/release/2.2.0(97).aab
    • Android AAB sha256: e00eaedf6bd9de48c9f3765327fc71bac45083828474f440e8212f2986b2818d
    • Android bundle sha256: b7ea521934f1d5945ca3d5a64f6fb772a3e5c7ffe30d5a2b581dc369c400d03b
    • Android CodePushHash: 3b63ce5aa5302af58b88d9e9a3011add75b69b18cf953a5e714a6936254644dc
    • iOS 제출 마커 태그 객체: a4f895a380416b2c351a8aeafbf83495f61c2b08
    • iOS 제출 마커 커밋: e4dd5b7c5d56b26065c6de31eca7b9c5f6225248
    • iOS archive: Xcode archive 날짜 폴더 2026-06-26, 산출물 ritzy 6-26-26, 6.18 PM.xcarchive
    • iOS App Store upload: 2026-06-26 18:21:09 KST
    • iOS main.jsbundle sha256: 190b1fee827b3e60b93cbe8b7fa33b24c1533df890e0460e0f8942fdcc4e17f6
    • iOS build tooling: DTSDKName=iphoneos26.5, DTXcode=2650
    • 제출 마커 삭제: 로컬 git tag --list 'submitted/*2.2.0*' 결과 없음, 원격 ls-remote 결과 없음
  • coupler-admin-web
    • 배포 변경 없음. 태그 생성 대상 N/A.
  • DB migration
    • DB schema/data migration 없음. DB migration 범위 N/A.
  • Mobile NextPush
    • 배포 실행 확인 시점 coupler-mobile-app 로컬 HEAD: b554f3d643fb7a6e1e8bccea418d4afdfba73c22
    • 배포 실행 확인 시점 coupler-mobile-app 로컬 상태: main...origin/main [ahead 1], uncommitted 변경 존재
    • Android app: bluedotstudio.official-gmail.com/coupler
    • Android deployment: Production
    • Android label: v18
    • Android target binary version: 2.2.0
    • Android package hash: 29959bab906fad67e5761301655400a4bc8132dc860b1992018754859ea57f44
    • Android upload time: 2026-06-28T09:06:59.785Z
    • Android rollout/mandatory/disabled: 100/false/false
    • iOS app: bluedotstudio.official-gmail.com/coupler-ios
    • iOS deployment: Production
    • iOS label: v15
    • iOS target binary version: 2.2.0
    • iOS package hash: 4de79f37dcdba6702ed379d6fcca4fba55e4f58eef1b79f1cab5eb7698728c34
    • iOS upload time: 2026-06-28T09:07:34.655Z
    • iOS rollout/mandatory/disabled: 100/false/false
    • NextPush 서비스 이력은 git commit SHA를 저장하지 않으므로, rollback 기준은 위 app/deployment label과 package hash를 우선한다.

롤백 기준

  • coupler-api: 직전 운영 태그 또는 운영 배포 전 PM2 상태 기준으로 롤백한다.
  • coupler-mobile-app: Store에 승인/출시된 2.2.0 (97) binary를 기준으로 스토어 콘솔 rollout/버전 상태에서 처리한다.
  • Mobile NextPush: Android Productionv18, iOS Productionv15를 기준으로 rollback한다. 직전 label로 되돌릴 때는 Android v17, iOS v14를 기준으로 확인한다.
  • coupler-admin-web: 이번 릴리스에서 배포하지 않았으므로 rollback 대상은 N/A다.
  • 운영 RDS: 이번 릴리스에 DB 변경이 없으므로 DB rollback 대상은 N/A다.
  • 제출 마커 태그: 삭제 후 제출 기준 확인이 필요하면 이 문서의 tag commit SHA와 artifact/hash 증빙을 기준으로 복원한다.

후속 작업

  • 없음. docs-only corrective reissue 완료 후 GitHub Release 본문과 docs-site-v2.2.0.tar.gz artifact 교체 여부를 확인했다.

관련 문서