Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
bf98b83
iOS 프로젝트 구조 변경 및 새로운 기능 추가
alsgud8311 Sep 30, 2025
e321522
fix: CI/CD 워크플로우 수정-Nest.js 개발 및 프로덕션 배포 스크립트에 작업 디렉토리 변경 추가
alsgud8311 Sep 30, 2025
ef7ef6d
Dependency : yarn 설정 및 의존성 추가
alsgud8311 Sep 30, 2025
c1a5b91
feat: Nginx 설정 파일 추가 - API 리버스 프록시 및 SSL 설정 포함
alsgud8311 Sep 30, 2025
ca08836
feat: Nginx 로컬 설정에 .gitignore 파일 추가 - SSL 인증서 관련 항목 포함
alsgud8311 Sep 30, 2025
9fa626f
feat: kokomen-native 웹뷰 이벤트 처리 및 애플 로그인 기능 추가
alsgud8311 Sep 30, 2025
b97c8af
feat: 로컬 개발 환경을 위한 Dockerfile 및 compose 설정 변경
alsgud8311 Sep 30, 2025
63c62a7
feat: 애플 로그인 기능을 위한 인증 모듈 및 서비스 추가
alsgud8311 Sep 30, 2025
398577e
feat: 토큰 관리 모듈 및 서비스 추가
alsgud8311 Sep 30, 2025
daf40b2
feat: 회원 소셜 로그인 기능 추가 및 회원 엔티티 수정
alsgud8311 Sep 30, 2025
e30d351
feat: 인증 모듈 추가 및 CORS 설정 업데이트
alsgud8311 Sep 30, 2025
b84016d
feat: 트랜잭션 관리 기능을 위한 데코레이터 및 인터셉터 추가
alsgud8311 Sep 30, 2025
2351d98
asset: 애플 로고 SVG 파일 추가
alsgud8311 Sep 30, 2025
7ff100d
refactor: 웹뷰 초기 스크립트를 상수로 분리하여 코드 중복 제거
alsgud8311 Sep 30, 2025
c34430c
feat: 애플 로그인 기능을 위한 Apollo 클라이언트 및 훅 추가
alsgud8311 Sep 30, 2025
cd1cb39
feat: 회원 등수 카드 및 UI 개선
alsgud8311 Sep 30, 2025
2e9a4f3
delete: 애플 로그인 훅 삭제
alsgud8311 Sep 30, 2025
d371403
feat: GraphQL API URL 환경 변수 추가 및 Apollo 클라이언트 설정 수정
alsgud8311 Sep 30, 2025
5762c48
refactor: 음성 인식 지원 체크 로직 간소화
alsgud8311 Sep 30, 2025
f04ebbc
fix: 세션 쿠키 만료 시간 수정 및 애플 로그인 관련 코드 개선
alsgud8311 Sep 30, 2025
02b7c77
feat : 애플 로그인 disabled 상태 추적 관리와 로딩중 스타일 추가
alsgud8311 Oct 1, 2025
f63a98e
feat : 서버 다중화 상태에서 matrix strategy를 사용하여 배포
alsgud8311 Oct 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/deploy-nest-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ jobs:
run: |
cd /home/ubuntu
sudo chmod 666 /var/run/docker.sock
cd /home/ubuntu/actions-runner/_work/kokomen-client/kokomen-client
yarn types:build
docker system prune -f
docker compose -f ./compose.server.dev.yaml down || true
Expand Down
11 changes: 8 additions & 3 deletions .github/workflows/deploy-nest-prod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,32 @@ on:
jobs:
build-and-deploy:
name: Build and Deploy to EC2
runs-on: [self-hosted, nest-prod]
runs-on: [self-hosted, "${{ matrix.server }}"]
strategy:
max-parallel: 1 # 순차 배포
matrix:
server: [nest-prod-a, nest-prod-b]

steps:
- name: Checkout source code
uses: actions/checkout@v3

- name: install dependencies
run: |
corepack enable
yarn install

- name: Run Docker Compose
- name: Run Docker Compose on ${{ matrix.server }}
env:
DATABASE_HOST_PROD: ${{ secrets.DATABASE_HOST_PROD }}
DATABASE_USERNAME_PROD: ${{ secrets.DATABASE_USERNAME_PROD }}
DATABASE_PASSWORD_PROD: ${{ secrets.DATABASE_PASSWORD_PROD }}
DATABASE_ROOT_PASSWORD_PROD: ${{ secrets.DATABASE_ROOT_PASSWORD_PROD }}
REDIS_HOST_PROD: ${{ secrets.REDIS_HOST_PROD }}

run: |
cd /home/ubuntu
sudo chmod 666 /var/run/docker.sock
cd /home/ubuntu/actions-runner/_work/kokomen-client/kokomen-client
yarn types:build
docker system prune -f
docker compose -f ./compose.server.prod.yaml down || true
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,6 @@ node_modules/

.tsbuildinfo
.tanstack
*.pem
*.pem
*.key
*.crt
4 changes: 4 additions & 0 deletions .yarnrc.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
nodeLinker: pnp

yarnPath: .yarn/releases/yarn-4.9.2.cjs
enableGlobalCache: false
packageExtensions:
"@sentry/nextjs@*":
peerDependencies:
Expand Down Expand Up @@ -38,3 +39,6 @@ packageExtensions:
peerDependencies:
react: "*"
react-dom: "*"
"@nestjs/axios@*":
dependencies:
axios: "*"
7 changes: 7 additions & 0 deletions apps/kokomen-native/.yarnrc.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,9 @@
nodeLinker: node-modules
enableGlobalCache: false
packageExtensions:
"@invertase/react-native-apple-authentication@*":
dependencies:
"prop-types": "^15.5.10"
"@apollo/client@*":
dependencies:
"rxjs": "^7.3.0"
Binary file modified apps/kokomen-native/assets/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion apps/kokomen-native/ios/Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ install! 'cocoapods',

prepare_react_native_project!

target 'kokomennative' do
target 'kokomen' do
use_expo_modules!

if ENV['EXPO_USE_COMMUNITY_AUTOLINKING'] == '1'
Expand Down
8 changes: 7 additions & 1 deletion apps/kokomen-native/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -1817,6 +1817,8 @@ PODS:
- React-logger (= 0.79.5)
- React-perflogger (= 0.79.5)
- React-utils (= 0.79.5)
- RNAppleAuthentication (2.4.1):
- React-Core
- RNGestureHandler (2.24.0):
- DoubleConversion
- glog
Expand Down Expand Up @@ -2026,6 +2028,7 @@ DEPENDENCIES:
- ReactAppDependencyProvider (from `build/generated/ios`)
- ReactCodegen (from `build/generated/ios`)
- ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`)
- "RNAppleAuthentication (from `../node_modules/@invertase/react-native-apple-authentication`)"
- RNGestureHandler (from `../node_modules/react-native-gesture-handler`)
- RNScreens (from `../node_modules/react-native-screens`)
- RNSVG (from `../node_modules/react-native-svg`)
Expand Down Expand Up @@ -2195,6 +2198,8 @@ EXTERNAL SOURCES:
:path: build/generated/ios
ReactCommon:
:path: "../node_modules/react-native/ReactCommon"
RNAppleAuthentication:
:path: "../node_modules/@invertase/react-native-apple-authentication"
RNGestureHandler:
:path: "../node_modules/react-native-gesture-handler"
RNScreens:
Expand Down Expand Up @@ -2284,12 +2289,13 @@ SPEC CHECKSUMS:
ReactAppDependencyProvider: c42e7abdd2228ae583bdabc3dcd8e5cda6bef944
ReactCodegen: 4d001cd4fa72b876bbff500bbb3811e458bb3c72
ReactCommon: 41137f7e87cf7fd1c041a7124dfa3d0d48aa43f3
RNAppleAuthentication: b2d8b5ccba86b5b1e55a1a2e858f7ac6d8a21816
RNGestureHandler: ccf4105b125002bd88e39d2a1f2b7e6001bcdf34
RNScreens: c2e3cc506212228c607b4785b315205e28acbf0f
RNSVG: ee32efbed652c5151fd3f98bed13c68af285bc38
SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748
Yoga: adb397651e1c00672c12e9495babca70777e411e

PODFILE CHECKSUM: a8260410ec25c84cedaa7495eb2458ec0b66aa36
PODFILE CHECKSUM: f8809590e5ed708ff0a8e48e8975651f84586cc4

COCOAPODS: 1.16.2
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
BuildableName = "kokomennative.app"
BlueprintName = "kokomennative"
ReferencedContainer = "container:kokomennative.xcodeproj">
BuildableName = "kokomen.app"
BlueprintName = "kokomen"
ReferencedContainer = "container:kokomen.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
Expand All @@ -33,9 +33,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "00E356ED1AD99517003FC87E"
BuildableName = "kokomennativeTests.xctest"
BlueprintName = "kokomennativeTests"
ReferencedContainer = "container:kokomennative.xcodeproj">
BuildableName = "kokomenTests.xctest"
BlueprintName = "kokomenTests"
ReferencedContainer = "container:kokomen.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
Expand All @@ -55,9 +55,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
BuildableName = "kokomennative.app"
BlueprintName = "kokomennative"
ReferencedContainer = "container:kokomennative.xcodeproj">
BuildableName = "kokomen.app"
BlueprintName = "kokomen"
ReferencedContainer = "container:kokomen.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
Expand All @@ -72,9 +72,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
BuildableName = "kokomennative.app"
BlueprintName = "kokomennative"
ReferencedContainer = "container:kokomennative.xcodeproj">
BuildableName = "kokomen.app"
BlueprintName = "kokomen"
ReferencedContainer = "container:kokomen.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@
"version": 1,
"author": "expo"
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@
"version": 1,
"author": "expo"
}
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
78 changes: 78 additions & 0 deletions apps/kokomen-native/ios/kokomen/Info.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CADisableMinimumFrameDurationOnPhone</key>
<true/>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleDisplayName</key>
<string>kokomen</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>kr.kokomen</string>
</array>
</dict>
</array>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSMinimumSystemVersion</key>
<string>12.0</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
<key>NSAllowsLocalNetworking</key>
<true/>
</dict>
<key>NSMicrophoneUsageDescription</key>
<string>면접에서 음성을 인식하기 위해 마이크 권한이 필요합니다.</string>
<key>NSSpeechRecognitionUsageDescription</key>
<string>면접에서 음성을 인식하기 위해 음성 인식 권한이 필요합니다.</string>
<key>UILaunchStoryboardName</key>
<string>SplashScreen</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>arm64</string>
</array>
<key>UIRequiresFullScreen</key>
<false/>
<key>UIStatusBarStyle</key>
<string>UIStatusBarStyleDefault</string>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UIUserInterfaceStyle</key>
<string>Light</string>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
</dict>
</plist>
12 changes: 12 additions & 0 deletions apps/kokomen-native/ios/kokomen/kokomen.entitlements
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>aps-environment</key>
<string>development</string>
<key>com.apple.developer.applesignin</key>
<array>
<string>Default</string>
</array>
</dict>
</plist>
Binary file not shown.
Binary file not shown.
Binary file not shown.
80 changes: 0 additions & 80 deletions apps/kokomen-native/ios/kokomennative/Info.plist

This file was deleted.

This file was deleted.

Loading
Loading